-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathshowsolutions.php
51 lines (40 loc) · 1.96 KB
/
showsolutions.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?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/>.
/**
* This file contains an action handler for showing/hiding solution sheets.
*
* @package assignfeedback_solutionsheet
* @copyright 2016 Henning Bostelmann
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(dirname(dirname(dirname(dirname(__FILE__))))) . '/config.php');
$cmid = required_param('cmid', PARAM_INT); // Course module ID.
$showit = required_param('show', PARAM_BOOL); // Show solutions or hide them.
$cm = get_coursemodule_from_id('assign', $cmid, 0, false, MUST_EXIST);
$course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST);
$paras = array('assignment' => $cm->instance,
'subtype' => 'assignfeedback',
'plugin' => 'solutionsheet',
'name' => 'showattype');
$conf = $DB->get_record('assign_plugin_config', $paras, '*', MUST_EXIST);
require_login($course->id, false, $cm);
require_sesskey();
$context = context_module::instance($cm->id);
require_capability('moodle/course:manageactivities', $context);
// OK, all security checks passed, now show/hide the solution sheet.
$conf->value = $showit ? 1 : 0;
$DB->update_record('assign_plugin_config', $conf);
redirect(new moodle_url('/mod/assign/view.php', array('id' => $cm->id)), get_string('changessaved'));