2 // This file is part of Moodle - http://moodle.org/
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
20 * @package theme_boost
21 * @copyright 2016 Frédéric Massart
22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
25 defined('MOODLE_INTERNAL') ||
die();
27 require_once(__DIR__
. '/lib.php');
29 $THEME->name
= 'boost';
31 $THEME->editor_sheets
= [];
32 $THEME->usefallback
= true;
33 $THEME->scss
= function($theme) {
34 return theme_boost_get_main_scss_content($theme);
38 // Most backwards compatible layout without the blocks - this is the layout used by default.
40 'file' => 'columns2.php',
43 // Standard layout with blocks, this is recommended for most pages with general information.
45 'file' => 'columns2.php',
46 'regions' => array('side-pre'),
47 'defaultregion' => 'side-pre',
51 'file' => 'columns2.php',
52 'regions' => array('side-pre'),
53 'defaultregion' => 'side-pre',
54 'options' => array('langmenu' => true),
56 'coursecategory' => array(
57 'file' => 'columns2.php',
58 'regions' => array('side-pre'),
59 'defaultregion' => 'side-pre',
61 // Part of course, typical for modules - default page layout if $cm specified in require_login().
63 'file' => 'columns2.php',
64 'regions' => array('side-pre'),
65 'defaultregion' => 'side-pre',
67 // The site home page.
69 'file' => 'columns2.php',
70 'regions' => array('side-pre'),
71 'defaultregion' => 'side-pre',
72 'options' => array('nonavbar' => true),
74 // Server administration scripts.
76 'file' => 'columns2.php',
77 'regions' => array('side-pre'),
78 'defaultregion' => 'side-pre',
81 'mydashboard' => array(
82 'file' => 'columns2.php',
83 'regions' => array('side-pre'),
84 'defaultregion' => 'side-pre',
85 'options' => array('nonavbar' => true, 'langmenu' => true),
89 'file' => 'columns2.php',
90 'regions' => array('side-pre'),
91 'defaultregion' => 'side-pre',
94 'file' => 'login.php',
96 'options' => array('langmenu' => true),
99 // Pages that appear in pop-up windows - no navigation, no blocks, no header.
101 'file' => 'columns1.php',
102 'regions' => array(),
103 'options' => array('nofooter' => true, 'nonavbar' => true),
105 // No blocks and minimal footer - used for legacy frame layouts only!
107 'file' => 'columns1.php',
108 'regions' => array(),
109 'options' => array('nofooter' => true, 'nocoursefooter' => true),
111 // Embeded pages, like iframe/object embeded in moodleform - it needs as much space as possible.
113 'file' => 'embedded.php',
116 // Used during upgrade and install, and for the 'This site is undergoing maintenance' message.
117 // This must not have any blocks, links, or API calls that would lead to database or cache interaction.
118 // Please be extremely careful if you are modifying this layout.
119 'maintenance' => array(
120 'file' => 'maintenance.php',
121 'regions' => array(),
123 // Should display the content and basic headers only.
125 'file' => 'columns1.php',
126 'regions' => array(),
127 'options' => array('nofooter' => true, 'nonavbar' => false),
129 // The pagelayout used when a redirection is occuring.
131 'file' => 'embedded.php',
132 'regions' => array(),
134 // The pagelayout used for reports.
136 'file' => 'columns2.php',
137 'regions' => array('side-pre'),
138 'defaultregion' => 'side-pre',
140 // The pagelayout used for safebrowser and securewindow.
142 'file' => 'secure.php',
143 'regions' => array('side-pre'),
144 'defaultregion' => 'side-pre'
148 $THEME->parents
= [];
149 $THEME->enable_dock
= false;
150 $THEME->csstreepostprocessor
= 'theme_boost_css_tree_post_processor';
151 $THEME->extrascsscallback
= 'theme_boost_get_extra_scss';
152 $THEME->prescsscallback
= 'theme_boost_get_pre_scss';
153 $THEME->precompiledcsscallback
= 'theme_boost_get_precompiled_css';
154 $THEME->yuicssmodules
= array();
155 $THEME->rendererfactory
= 'theme_overridden_renderer_factory';
156 $THEME->requiredblocks
= '';
157 $THEME->addblockposition
= BLOCK_ADDBLOCK_POSITION_FLATNAV
;
158 $THEME->iconsystem
= \core\output\icon_system
::FONTAWESOME
;