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/>. 16 17 /** 18 * Contains the navigation renderable for user data exports. 19 * 20 * @package core_privacy 21 * @copyright 2018 Adrian Greeve 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 namespace core_privacy\output; 25 defined('MOODLE_INTERNAL') || die(); 26 27 use renderable; 28 use renderer_base; 29 use templatable; 30 31 /** 32 * Class containing the navigation renderable 33 * 34 * @copyright 2018 Adrian Greeve 35 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 36 */ 37 class exported_html_page implements renderable, templatable { 38 39 /** @var string $navigationdata navigation html to be displayed about the system. */ 40 protected $navigationdata; 41 42 /** @var string $systemname systemname for the page. */ 43 protected $systemname; 44 45 /** @var string $username The full name of the user. */ 46 protected $username; 47 48 /** @var bool $rtl The direction to show the page (right to left) */ 49 protected $rtl; 50 51 /** @var string $siteurl The url back to the site that created this export. */ 52 protected $siteurl; 53 54 /** 55 * Constructor. 56 * 57 * @param string $navigationdata Navigation html to be displayed about the system. 58 * @param string $systemname systemname for the page. 59 * @param string $username The full name of the user. 60 * @param bool $righttoleft Is the language used right to left? 61 * @param string $siteurl The url to the site that created this export. 62 */ 63 public function __construct(string $navigationdata, string $systemname, string $username, bool $righttoleft, string $siteurl) { 64 $this->navigationdata = $navigationdata; 65 $this->systemname = $systemname; 66 $this->username = $username; 67 $this->rtl = $righttoleft; 68 $this->siteurl = $siteurl; 69 } 70 71 /** 72 * Export this data so it can be used as the context for a mustache template. 73 * 74 * @param renderer_base $output 75 * @return array 76 */ 77 public function export_for_template(renderer_base $output) : Array { 78 return [ 79 'navigation' => $this->navigationdata, 80 'systemname' => $this->systemname, 81 'timegenerated' => time(), 82 'username' => $this->username, 83 'righttoleft' => $this->rtl, 84 'siteurl' => $this->siteurl 85 ]; 86 } 87 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body