1<?php
2
3// This file is part of Moodle - http://moodle.org/
4//
5// Moodle is free software: you can redistribute it and/or modify
6// it under the terms of the GNU General Public License as published by
7// the Free Software Foundation, either version 3 of the License, or
8// (at your option) any later version.
9//
10// Moodle is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13// GNU General Public License for more details.
14//
15// You should have received a copy of the GNU General Public License
16// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
17
18/**
19 * Allows a creator to edit custom scales, and also display help about scales
20 *
21 * @copyright 1999 Martin Dougiamas  http://dougiamas.com
22 * @deprecated - TODO remove this file or replace it with an alternative solution for scales overview
23 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
24 * @package course
25 */
26
27require_once("../config.php");
28require_once("lib.php");
29
30$id   = required_param('id', PARAM_INT);               // course id
31$scaleid  = optional_param('scaleid', 0, PARAM_INT);   // scale id (show only this one)
32
33$url = new moodle_url('/course/scales.php', array('id'=>$id));
34if ($scaleid !== 0) {
35    $url->param('scaleid', $scaleid);
36}
37$PAGE->set_url($url);
38
39$context = null;
40if ($course = $DB->get_record('course', array('id'=>$id))) {
41    require_login($course);
42    $context = context_course::instance($course->id);
43} else {
44    //$id will be 0 for site level scales
45    require_login();
46    $context = context_system::instance();
47}
48
49$PAGE->set_context($context);
50require_capability('moodle/course:viewscales', $context);
51
52$strscales = get_string("scales");
53$strcustomscales = get_string("scalescustom");
54$strstandardscales = get_string("scalesstandard");
55
56$PAGE->set_title($strscales);
57if (!empty($course)) {
58    $PAGE->set_heading($course->fullname);
59} else {
60    $PAGE->set_heading($SITE->fullname);
61}
62echo $OUTPUT->header();
63
64if ($scaleid) {
65    if ($scale = $DB->get_record("scale", array('id'=>$scaleid))) {
66        if ($scale->courseid == 0 || $scale->courseid == $course->id) {
67
68            $scalemenu = make_menu_from_list($scale->scale);
69
70            echo $OUTPUT->box_start();
71            echo $OUTPUT->heading($scale->name);
72            echo "<center>";
73            echo html_writer::label(get_string('scales'), 'scaleunused'. $scaleid, false, array('class' => 'accesshide'));
74            echo html_writer::select($scalemenu, 'unused', '', array('' => 'choosedots'), array('id' => 'scaleunused'.$scaleid));
75            echo "</center>";
76            echo text_to_html($scale->description);
77            echo $OUTPUT->box_end();
78            echo $OUTPUT->close_window_button();
79            echo $OUTPUT->footer();
80            exit;
81        }
82    }
83}
84
85$systemcontext = context_system::instance();
86
87if ($scales = $DB->get_records("scale", array("courseid"=>$course->id), "name ASC")) {
88    echo $OUTPUT->heading($strcustomscales);
89
90    if (has_capability('moodle/course:managescales', $context)) {
91        echo "<p align=\"center\">(";
92        print_string('scalestip2');
93        echo ")</p>";
94    }
95
96    foreach ($scales as $scale) {
97
98        $scale->description = file_rewrite_pluginfile_urls($scale->description, 'pluginfile.php', $systemcontext->id, 'grade', 'scale', $scale->id);
99
100        $scalemenu = make_menu_from_list($scale->scale);
101
102        echo $OUTPUT->box_start();
103        echo $OUTPUT->heading($scale->name);
104        echo "<center>";
105        echo html_writer::label(get_string('scales'), 'courseunused' . $scale->id, false, array('class' => 'accesshide'));
106        echo html_writer::select($scalemenu, 'unused', '', array('' => 'choosedots'), array('id' => 'courseunused' . $scale->id));
107        echo "</center>";
108        echo text_to_html($scale->description);
109        echo $OUTPUT->box_end();
110        echo "<hr />";
111    }
112
113} else {
114    if (has_capability('moodle/course:managescales', $context)) {
115        echo "<p align=\"center\">(";
116        print_string("scalestip2");
117        echo ")</p>";
118    }
119}
120
121if ($scales = $DB->get_records("scale", array("courseid"=>0), "name ASC")) {
122    echo $OUTPUT->heading($strstandardscales);
123    foreach ($scales as $scale) {
124
125        $scale->description = file_rewrite_pluginfile_urls($scale->description, 'pluginfile.php', $systemcontext->id, 'grade', 'scale', $scale->id);
126
127        $scalemenu = make_menu_from_list($scale->scale);
128
129        echo $OUTPUT->box_start();
130        echo $OUTPUT->heading($scale->name);
131        echo "<center>";
132        echo html_writer::label(get_string('scales'), 'sitescale' . $scale->id, false, array('class' => 'accesshide'));
133        echo html_writer::select($scalemenu, 'unused', '', array('' => 'choosedots'), array('id' => 'sitescale' . $scale->id));
134        echo "</center>";
135        echo text_to_html($scale->description);
136        echo $OUTPUT->box_end();
137        echo "<hr />";
138    }
139}
140
141echo $OUTPUT->close_window_button();
142echo $OUTPUT->footer();
143
144