MDL-62142 navigation: accessibility
[moodle.git] / theme / boost / layout / columns2.php
1 <?php
2 // This file is part of Moodle - http://moodle.org/
3 //
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.
8 //
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.
13 //
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/>.
17 /**
18  * A two column layout for the boost theme.
19  *
20  * @package   theme_boost
21  * @copyright 2016 Damyon Wiese
22  * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23  */
25 defined('MOODLE_INTERNAL') || die();
27 user_preference_allow_ajax_update('drawer-open-nav', PARAM_ALPHA);
28 require_once($CFG->libdir . '/behat/lib.php');
30 if (isloggedin()) {
31     $navdraweropen = (get_user_preferences('drawer-open-nav', 'true') == 'true');
32 } else {
33     $navdraweropen = false;
34 }
35 $extraclasses = [];
36 if ($navdraweropen) {
37     $extraclasses[] = 'drawer-open-left';
38 }
39 $bodyattributes = $OUTPUT->body_attributes($extraclasses);
40 $blockshtml = $OUTPUT->blocks('side-pre');
41 $hasblocks = strpos($blockshtml, 'data-block=') !== false;
42 $regionmainsettingsmenu = $OUTPUT->region_main_settings_menu();
43 $templatecontext = [
44     'sitename' => format_string($SITE->shortname, true, ['context' => context_course::instance(SITEID), "escape" => false]),
45     'output' => $OUTPUT,
46     'sidepreblocks' => $blockshtml,
47     'hasblocks' => $hasblocks,
48     'bodyattributes' => $bodyattributes,
49     'navdraweropen' => $navdraweropen,
50     'regionmainsettingsmenu' => $regionmainsettingsmenu,
51     'hasregionmainsettingsmenu' => !empty($regionmainsettingsmenu)
52 ];
54 $nav = $PAGE->flatnav;
55 $templatecontext['flatnavigation'] = $nav;
56 $templatecontext['firstcollectionlabel'] = $nav->get_collectionlabel();
57 echo $OUTPUT->render_from_template('theme_boost/columns2', $templatecontext);