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 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
 * Amanote annotation page.
19
 *
20
 * @package     filter_amanote
21
 * @copyright   2021 Amaplex Software
22
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23
 */
24
 
25
require_once('../../config.php');
26
require_once('../../lib/externallib.php');
27
require_once('./amanote.php');
28
 
29
// Verify that the current user is logged in.
30
require_login();
31
 
32
// Initialize params.
33
$annotatableid = isset($_GET['annotatableId']) ? $_GET['annotatableId'] : null;
34
 
35
if ($annotatableid == null) {
36
    // Backward compatibility.
37
    $annotatableid = isset($_GET['amaResourceId']) ? $_GET['amaResourceId'] : null;
38
}
39
 
40
$downloadnotes = isset($_GET['downloadNotes']) ? $_GET['downloadNotes'] : null;
41
 
42
if (!validate_annotatableid($annotatableid)) {
43
    echo 'Invalid resource id.';
44
    exit();
45
}
46
 
47
// Set page details.
48
$explodedid = explode('.', $annotatableid);
49
$courseid = $explodedid[0];
50
$moodleurl = new moodle_url('/filter/amanote/annotate.php');
51
 
52
$PAGE->set_context(context_course::instance($courseid));
53
$PAGE->set_url($moodleurl);
54
$PAGE->set_title(get_string('filtername', 'filter_amanote'));
55
 
56
// Render the app.
57
try {
58
    $config = get_config('filter_amanote');
59
    $amanoteurl = generate_amanote_url($annotatableid);
60
 
61
    if ($downloadnotes) {
62
        $amanoteurl = $amanoteurl . '&downloadNotes=true';
63
    }
64
 
65
    if ($config->target == 1) {
66
        echo '<style> body { margin: 0 !important; } </style>';
67
        echo '<iframe width="100%" style="height: 100vh" frameBorder="0" src="' . $amanoteurl . '"></iframe>';
68
    } else {
69
        echo "<style>
70
                #region-main, .card-body { padding: 0 !important; }
71
                #page-footer, #page-wrapper::after { display: none !important; }
72
              </style>";
73
 
74
        echo $OUTPUT->header();
75
 
76
        echo '<iframe width="100%" style="height: calc(100vh - 58px)" frameBorder="0" src="' . $amanoteurl . '"></iframe>';
77
 
78
        echo $OUTPUT->footer();
79
    }
80
} catch (Exception $e) {
81
    debugging('An error occurred: ' . $e->getMessage() . $e->getTraceAsString(), DEBUG_DEVELOPER);
82
    echo 'An error occured.';
83
}