Dan Marsden
8 years ago
6 changed files with 218 additions and 6 deletions
@ -0,0 +1,50 @@ |
|||||
|
<?php |
||||
|
|
||||
|
// This file is part of Moodle - http://moodle.org/ |
||||
|
// |
||||
|
// Moodle is free software: you can redistribute it and/or modify |
||||
|
// it under the terms of the GNU General Public License as published by |
||||
|
// the Free Software Foundation, either version 3 of the License, or |
||||
|
// (at your option) any later version. |
||||
|
// |
||||
|
// Moodle is distributed in the hope that it will be useful, |
||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
// GNU General Public License for more details. |
||||
|
// |
||||
|
// You should have received a copy of the GNU General Public License |
||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>. |
||||
|
|
||||
|
/** |
||||
|
* Displays help via AJAX call or in a new page |
||||
|
* |
||||
|
* Use {@link core_renderer::help_icon()} or {@link addHelpButton()} to display |
||||
|
* the help icon. |
||||
|
* |
||||
|
* @copyright 2002 onwards Martin Dougiamas |
||||
|
* @package core |
||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later |
||||
|
*/ |
||||
|
|
||||
|
require_once(dirname(__FILE__).'/../../config.php'); |
||||
|
|
||||
|
$session = required_param('session', PARAM_INT); |
||||
|
$session = $DB->get_record('attendance_sessions', array('id' => $session), '*', MUST_EXIST); |
||||
|
|
||||
|
$cm = get_coursemodule_from_instance('attendance', $session->attendanceid); |
||||
|
$context = context_module::instance($cm->id); |
||||
|
$capabilities = array('mod/attendance:manageattendances', 'mod/attendance:takeattendances','mod/attendance:changeattendances'); |
||||
|
if (!has_any_capability($capabilities, $context)) { |
||||
|
exit; |
||||
|
} |
||||
|
|
||||
|
$PAGE->set_url('/mod/attendance/password.php'); |
||||
|
$PAGE->set_pagelayout('popup'); |
||||
|
|
||||
|
$PAGE->set_context(context_system::instance()); |
||||
|
|
||||
|
$PAGE->set_title(get_string('password', 'attendance')); |
||||
|
|
||||
|
echo $OUTPUT->header(); |
||||
|
echo html_writer::span($session->studentpassword, 'student-password'); |
||||
|
echo $OUTPUT->footer(); |
@ -0,0 +1,49 @@ |
|||||
|
<?php |
||||
|
|
||||
|
// This file is part of Moodle - http://moodle.org/ |
||||
|
// |
||||
|
// Moodle is free software: you can redistribute it and/or modify |
||||
|
// it under the terms of the GNU General Public License as published by |
||||
|
// the Free Software Foundation, either version 3 of the License, or |
||||
|
// (at your option) any later version. |
||||
|
// |
||||
|
// Moodle is distributed in the hope that it will be useful, |
||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
// GNU General Public License for more details. |
||||
|
// |
||||
|
// You should have received a copy of the GNU General Public License |
||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>. |
||||
|
|
||||
|
/** |
||||
|
* Displays help via AJAX call or in a new page |
||||
|
* |
||||
|
* Use {@link core_renderer::help_icon()} or {@link addHelpButton()} to display |
||||
|
* the help icon. |
||||
|
* |
||||
|
* @copyright 2002 onwards Martin Dougiamas |
||||
|
* @package core |
||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later |
||||
|
*/ |
||||
|
define('AJAX_SCRIPT', true); |
||||
|
require_once(dirname(__FILE__).'/../../config.php'); |
||||
|
|
||||
|
$session = required_param('session', PARAM_INT); |
||||
|
$session = $DB->get_record('attendance_sessions', array('id' => $session), '*', MUST_EXIST); |
||||
|
|
||||
|
$cm = get_coursemodule_from_instance('attendance', $session->attendanceid); |
||||
|
$context = context_module::instance($cm->id); |
||||
|
$capabilities = array('mod/attendance:manageattendances', 'mod/attendance:takeattendances','mod/attendance:changeattendances'); |
||||
|
if (!has_any_capability($capabilities, $context)) { |
||||
|
exit; |
||||
|
} |
||||
|
|
||||
|
$PAGE->set_url('/mod/attendance/password.php'); |
||||
|
$PAGE->set_pagelayout('popup'); |
||||
|
|
||||
|
$PAGE->set_context(context_system::instance()); |
||||
|
|
||||
|
$data->heading = ''; |
||||
|
$data->text = html_writer::span($session->studentpassword, 'student-password'); |
||||
|
|
||||
|
echo json_encode($data); |
@ -0,0 +1,22 @@ |
|||||
|
{{! |
||||
|
@template attendance/attendance_password_icon |
||||
|
|
||||
|
attendance_password icon. |
||||
|
|
||||
|
Example context (json): |
||||
|
{ |
||||
|
"title": "Help with something", |
||||
|
"url": "http://example.org/help", |
||||
|
"linktext": "", |
||||
|
"icon":{ |
||||
|
"attributes": [ |
||||
|
{"name": "class", "value": "iconhelp"}, |
||||
|
{"name": "src", "value": "../../../pix/help.svg"}, |
||||
|
{"name": "alt", "value": "Help icon"} |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}} |
||||
|
<span class="helptooltip"> |
||||
|
<a href="{{url}}" title={{#quote}}{{title}}{{/quote}} aria-haspopup="true" target="_blank">{{#icon}}{{>core/pix_icon}}{{/icon}}{{#linktext}}{{.}}{{/linktext}}</a> |
||||
|
</span> |
@ -0,0 +1,28 @@ |
|||||
|
{{! |
||||
|
@template attendance/attendance_password_icon Boost Example. |
||||
|
This is an example of a template you could copy into a boost based theme to use proper popover. |
||||
|
At the moment we cannot specify different templates to use in plugin so we use |
||||
|
a cross-compatible link based pop-up for the password. |
||||
|
|
||||
|
attendance_password icon. |
||||
|
|
||||
|
Example context (json): |
||||
|
{ |
||||
|
"title": "Help with something", |
||||
|
"url": "http://example.org/help", |
||||
|
"linktext": "", |
||||
|
"icon":{ |
||||
|
"attributes": [ |
||||
|
{"name": "class", "value": "iconhelp"}, |
||||
|
{"name": "src", "value": "../../../pix/help.svg"}, |
||||
|
{"name": "alt", "value": "Help icon"} |
||||
|
] |
||||
|
} |
||||
|
} |
||||
|
}} |
||||
|
<a class="btn btn-link p-a-0" role="button" |
||||
|
data-container="body" data-toggle="popover" |
||||
|
data-placement="{{#ltr}}left{{/ltr}}{{^ltr}}right{{/ltr}}" data-content="<span class='student-pass'>{{text}}</span> {{completedoclink}}" |
||||
|
data-html="true" tabindex="0" data-trigger="focus"> |
||||
|
{{#pix}}key, attendance, {{alt}}{{/pix}} |
||||
|
</a> |
Loading…
Reference in new issue