getEditorGlobalLayoutSettings
used by {@link eZOEXMLInput::getEditorLayoutSettings()}

@static
@return array hash with global layout settings for the editor
509103
public static function getEditorGlobalLayoutSettings()
    {
        if ( self::$editorGlobalLayoutSettings === null )
        {
            $oeini = eZINI::instance( 'ezoe.ini' );
            self::$editorGlobalLayoutSettings = array(
                'buttons' => $oeini->variable('EditorLayout', 'Buttons' ),
                'toolbar_location' => $oeini->variable('EditorLayout', 'ToolbarLocation' ),
                'path_location' => $oeini->variable('EditorLayout', 'PathLocation' ),
            );
        }
        return self::$editorGlobalLayoutSettings;
    }
143058
private EditorSettings getCurrentSettings() {

        EditorSettings result = new EditorSettings();
        result.m_closeBrackets = m_codeMirror.isCloseBrackets();
        result.m_lineWrapping = m_codeMirror.isLineWrapping();
        result.m_highlighting = m_codeMirror.isHighlighting();
        result.m_tabsVisible = m_codeMirror.isTabsVisible();
        result.m_fontSize = m_codeMirror.getFontSize();
        return result;
    }
110449
public function getCMSFields()
    {
        // Obtain Field Objects (from parent):
        
        $fields = parent::getCMSFields();
        
        // Create Main Fields:
        
        $fields->addFieldsToTab(
            'Root.Main',
            [
                TextField::create(
                    'Label',
                    $this->fieldLabel('Label')
                ),
                FontIconField::create(
                    'ButtonIcon',
                    $this->fieldLabel('ButtonIcon')
                )
            ]
        );
        
        // Create Style Fields:
        
        $fields->addFieldToTab(
            'Root.Style',
            FieldSection::create(
                'ScrollToTopStyle',
                $this->fieldLabel('ScrollToTopStyle'),
                [
                    ViewportsField::create(
                        'ButtonSize',
                        $this->fieldLabel('ButtonSize')
                    )->setUseTextInput(true),
                    ViewportsField::create(
                        'IconSize',
                        $this->fieldLabel('IconSize')
                    )->setUseTextInput(true)
                ]
            )
        );
        
        // Create Options Fields:
        
        $fields->addFieldToTab(
            'Root.Options',
            FieldSection::create(
                'ScrollToTopOptions',
                $this->fieldLabel('ScrollToTopOptions'),
                [
                    NumericField::create(
                        'OffsetShow',
                        $this->fieldLabel('OffsetShow')
                    ),
                    NumericField::create(
                        'OffsetOpacity',
                        $this->fieldLabel('OffsetOpacity')
                    ),
                    NumericField::create(
                        'ScrollDuration',
                        $this->fieldLabel('ScrollDuration')
                    )
                ]
            )
        );
        
        // Answer Field Objects:
        
        return $fields;
    }
727583
protected function getEditorOptions()
    {
        $this->editorOptions['element'] = new JsExpression('$("#' . $this->id . '")[0]');

        return Json::encode($this->editorOptions);
    }
197362
public function getApplyFormSettings()
    {
        if (!$this->applyFormSettings) {
            $settings = new DisableElementsCapableFormSettings();
            $settings->setForm('Applications/Apply');
            $this->applyFormSettings = $settings;
        }
        return $this->applyFormSettings;
    }
1180264
protected function getConfigLinkFields()
    {
        return array(
            'tellAboutBasicSettings' => array(
                'type' => 'markup',
                'value' => sprintf($this->t('desc_basicSettings'), $this->t('config_form_link_text'), $this->t('menu_basicSettings')),
            ),
            'basicSettingsLink' => array(
                'type' => 'markup',
                'value' => sprintf($this->t('button_link'), $this->t('config_form_link_text') , $this->shopCapabilities->getLink('config')),
            ),
        );
    }
765974
public function getLayoutsForSelect()
    {
        if (!$this->_layoutsInitialized) {
            $this->_initLayouts();
        }

        $results = [];
        foreach ($this->_layouts as $layout) {
            $results[$layout->id()] = $layout->name();
        }

        return $results;
    }
59304
public function layout(): array
    {
        return [
            UserEditLayout::class,
            UserRoleLayout::class,

            Layout::modals([
                'password' => Layout::rows([
                    Password::make('password')
                        ->title(__('Password'))
                        ->required()
                        ->placeholder(__('Enter your password')),
                ]),
            ]),
        ];
    }
1082041
public static function getSettings()
    {
        if (self::$settings === null) {
            $configuration = self::parseSettings();
            self::$settings = new EmConfiguration($configuration);
        }

        return self::$settings;
    }
569601
public function getLayouts(): array
    {
        $layouts = [];

        foreach ($this->config->get('layouts') as $layout) {
            $layout->setParentKey($this->getKey());

            $layouts[] = $layout->toArray();
        }

        return $layouts;
    }
355829
public function initSettingsData()
    {
        $config = App::make('config');
        $this->locale = $config->get('app.locale', 'en');
        $this->fallback_locale = $this->getFallbackLocale($this->locale);
        $this->timezone = $config->get('cms.backendTimezone', $config->get('app.timezone'));

        $this->editor_font_size = $config->get('editor.font_size', 12);
        $this->editor_word_wrap = $config->get('editor.word_wrap', 'fluid');
        $this->editor_code_folding = $config->get('editor.code_folding', 'manual');
        $this->editor_tab_size = $config->get('editor.tab_size', 4);
        $this->editor_theme = $config->get('editor.theme', static::DEFAULT_THEME);
        $this->editor_show_invisibles = $config->get('editor.show_invisibles', false);
        $this->editor_highlight_active_line = $config->get('editor.highlight_active_line', true);
        $this->editor_use_hard_tabs = $config->get('editor.use_hard_tabs', false);
        $this->editor_show_gutter = $config->get('editor.show_gutter', true);
        $this->editor_auto_closing = $config->get('editor.auto_closing', false);
        $this->editor_autocompletion = $config->get('editor.editor_autocompletion', 'manual');
        $this->editor_enable_snippets = $config->get('editor.enable_snippets', false);
        $this->editor_display_indent_guides = $config->get('editor.display_indent_guides', false);
        $this->editor_show_print_margin = $config->get('editor.show_print_margin', false);
    }
672176
public function getSettings(): array
    {
        $result = [];
        $settings = static::find()->select(['type', 'section', 'key', 'value'])->active()->asArray()->all();

        foreach ($settings as $setting) {
            $section = $setting['section'];
            $key = $setting['key'];
            $settingOptions = ['type' => $setting['type'], 'value' => $setting['value']];

            if (isset($result[$section][$key])) {
                ArrayHelper::merge($result[$section][$key], $settingOptions);
            } else {
                $result[$section][$key] = $settingOptions;
            }
        }

        return $result;
    }
386768
protected function magic_get_layout_options() {
        if (!is_array($this->_layout_options)) {
            $this->_layout_options = $this->_theme->pagelayout_options($this->pagelayout);
        }
        return $this->_layout_options;
    }
435407
protected function getLayout()
    {
        $this->setData('homeUrl', $this->getServiceManager()->get(DefaultUrlService::SERVICE_ID)->getUrl('ProctoringHome'));
        $this->setData('logout', $this->getServiceManager()->get(DefaultUrlService::SERVICE_ID)->getUrl('ProctoringLogout'));
        return ['layout.tpl', 'taoProctoring'];
    }
158029
protected function getSettings()
    {
        return array(
            "global" => $this->globalVisible,
            "challenge_info" => $this->challengeInfoVisible,
            "chat" => $this->chatVisible,
            "checkpoint_list" => $this->checkpointListVisible,
            "net_infos" => $this->netInfosVisible,
            "notice" => $this->noticeVisible,
            "round_scores" => $this->roundScoresVisible,
            "scoretable" => $this->scoretableVisible
        );
    }
723808
public function getSettingsFields()
    {
        $mapFn = function ($groups = []) {
            $map = [];
            foreach ($groups as $group) {
                // Listboxfield values are escaped, use ASCII char instead of &raquo;
                $map[$group->ID] = $group->getBreadcrumbs(' > ');
            }
            asort($map);
            return $map;
        };
        $viewAllGroupsMap = $mapFn(Permission::get_groups_by_permission(['SITETREE_VIEW_ALL', 'ADMIN']));
        $editAllGroupsMap = $mapFn(Permission::get_groups_by_permission(['SITETREE_EDIT_ALL', 'ADMIN']));

        $fields = new FieldList(
            $rootTab = new TabSet(
                "Root",
                $tabBehaviour = new Tab(
                    'Settings',
                    new DropdownField(
                        "ClassName",
                        $this->fieldLabel('ClassName'),
                        $this->getClassDropdown()
                    ),
                    $parentTypeSelector = new CompositeField(
                        $parentType = new OptionsetField("ParentType", _t("SilverStripe\\CMS\\Model\\SiteTree.PAGELOCATION", "Page location"), array(
                            "root" => _t("SilverStripe\\CMS\\Model\\SiteTree.PARENTTYPE_ROOT", "Top-level page"),
                            "subpage" => _t("SilverStripe\\CMS\\Model\\SiteTree.PARENTTYPE_SUBPAGE", "Sub-page underneath a parent page"),
                        )),
                        $parentIDField = new TreeDropdownField("ParentID", $this->fieldLabel('ParentID'), self::class, 'ID', 'MenuTitle')
                    ),
                    $visibility = new FieldGroup(
                        new CheckboxField("ShowInMenus", $this->fieldLabel('ShowInMenus')),
                        new CheckboxField("ShowInSearch", $this->fieldLabel('ShowInSearch'))
                    ),
                    $viewersOptionsField = new OptionsetField(
                        "CanViewType",
                        _t(__CLASS__.'.ACCESSHEADER', "Who can view this page?")
                    ),
                    $viewerGroupsField = TreeMultiselectField::create(
                        "ViewerGroups",
                        _t(__CLASS__.'.VIEWERGROUPS', "Viewer Groups"),
                        Group::class
                    ),
                    $editorsOptionsField = new OptionsetField(
                        "CanEditType",
                        _t(__CLASS__.'.EDITHEADER', "Who can edit this page?")
                    ),
                    $editorGroupsField = TreeMultiselectField::create(
                        "EditorGroups",
                        _t(__CLASS__.'.EDITORGROUPS', "Editor Groups"),
                        Group::class
                    )
                )
            )
        );

        $parentType->addExtraClass('noborder');
        $visibility->setTitle($this->fieldLabel('Visibility'));


        // This filter ensures that the ParentID dropdown selection does not show this node,
        // or its descendents, as this causes vanishing bugs
        $parentIDField->setFilterFunction(function ($node) {
            return $node->ID != $this->ID;
        });
        $parentTypeSelector->addExtraClass('parentTypeSelector');

        $tabBehaviour->setTitle(_t(__CLASS__.'.TABBEHAVIOUR', "Behavior"));

        // Make page location fields read-only if the user doesn't have the appropriate permission
        if (!Permission::check("SITETREE_REORGANISE")) {
            $fields->makeFieldReadonly('ParentType');
            if ($this->getParentType() === 'root') {
                $fields->removeByName('ParentID');
            } else {
                $fields->makeFieldReadonly('ParentID');
            }
        }

        $inheritMessage = $this->ParentID !== 0 ?
            _t(__CLASS__.'.INHERIT', "Inherit from parent page") :
            _t(__CLASS__.'.INHERITSITECONFIG', "Inherit from site access settings");

        $viewersOptionsSource = [
            InheritedPermissions::INHERIT => $inheritMessage,
            InheritedPermissions::ANYONE => _t(__CLASS__.'.ACCESSANYONE', "Anyone"),
            InheritedPermissions::LOGGED_IN_USERS => _t(__CLASS__.'.ACCESSLOGGEDIN', "Logged-in users"),
            InheritedPermissions::ONLY_THESE_USERS => _t(
                __CLASS__.'.ACCESSONLYTHESE',
                "Only these groups (choose from list)"
            ),
        ];
        $viewersOptionsField->setSource($viewersOptionsSource);

        // Editors have same options, except no "Anyone"
        $editorsOptionsSource = $viewersOptionsSource;
        unset($editorsOptionsSource[InheritedPermissions::ANYONE]);
        $editorsOptionsField->setSource($editorsOptionsSource);

        if ($viewAllGroupsMap) {
            $viewerGroupsField->setDescription(_t(
                'SilverStripe\\CMS\\Model\\SiteTree.VIEWER_GROUPS_FIELD_DESC',
                'Groups with global view permissions: {groupList}',
                ['groupList' => implode(', ', array_values($viewAllGroupsMap))]
            ));
        }

        if ($editAllGroupsMap) {
            $editorGroupsField->setDescription(_t(
                'SilverStripe\\CMS\\Model\\SiteTree.EDITOR_GROUPS_FIELD_DESC',
                'Groups with global edit permissions: {groupList}',
                ['groupList' => implode(', ', array_values($editAllGroupsMap))]
            ));
        }

        if (!Permission::check('SITETREE_GRANT_ACCESS')) {
            $fields->makeFieldReadonly($viewersOptionsField);
            if ($this->CanEditType === InheritedPermissions::ONLY_THESE_USERS) {
                $fields->makeFieldReadonly($viewerGroupsField);
            } else {
                $fields->removeByName('ViewerGroups');
            }

            $fields->makeFieldReadonly($editorsOptionsField);
            if ($this->CanEditType === InheritedPermissions::ONLY_THESE_USERS) {
                $fields->makeFieldReadonly($editorGroupsField);
            } else {
                $fields->removeByName('EditorGroups');
            }
        }

        if (self::$runCMSFieldsExtensions) {
            $this->extend('updateSettingsFields', $fields);
        }

        return $fields;
    }
510097
protected function getGlobalThrottles()
    {
        if ($this->globalThrottles === null) {
            $this->globalThrottles = $this->loadGlobalThrottles();
        }

        return $this->globalThrottles;
    }