Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
// This file is part of the customcert module for 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
 * Handles AJAX requests for the customcert module.
19
 *
20
 * @package    mod_customcert
21
 * @copyright  2013 Mark Nelson <markn@moodle.com>
22
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23
 */
24
 
25
require_once(__DIR__ . '/../../config.php');
26
 
27
if (!defined('AJAX_SCRIPT')) {
28
    define('AJAX_SCRIPT', true);
29
}
30
 
31
$tid = required_param('tid', PARAM_INT);
32
$values = required_param('values', PARAM_RAW);
33
$values = json_decode($values);
34
 
35
// Make sure the template exists.
36
$template = $DB->get_record('customcert_templates', ['id' => $tid], '*', MUST_EXIST);
37
 
38
// Set the template.
39
$template = new \mod_customcert\template($template);
40
// Perform checks.
41
if ($cm = $template->get_cm()) {
42
    $courseid = $cm->course;
43
    require_login($courseid, false, $cm);
44
} else {
45
    require_login();
46
}
47
// Make sure the user has the required capabilities.
48
$template->require_manage();
49
 
50
// Loop through the data.
51
foreach ($values as $value) {
52
    $element = new stdClass();
53
    $element->id = $value->id;
54
    $element->posx = $value->posx;
55
    $element->posy = $value->posy;
56
    $DB->update_record('customcert_elements', $element);
57
    \mod_customcert\event\element_updated::create_from_id($element->id, $template)->trigger();
58
}
59
 
60
\mod_customcert\event\template_updated::create_from_template($template)->trigger();