MDL-20930 fixed input validation
This commit is contained in:
+18
-35
@@ -3,48 +3,31 @@
|
||||
require_once("../../config.php");
|
||||
require_once("lib.php");
|
||||
|
||||
$id = required_param('id', PARAM_INT); // Course Module ID
|
||||
$eid = optional_param('eid', 0, PARAM_INT); // Entry ID
|
||||
$eid = required_param('eid', PARAM_INT); // Entry ID
|
||||
|
||||
$mode = optional_param('mode','approval', PARAM_ALPHA);
|
||||
$hook = optional_param('hook','ALL', PARAM_CLEAN);
|
||||
$mode = optional_param('mode', 'approval', PARAM_ALPHA);
|
||||
$hook = optional_param('hook', 'ALL', PARAM_CLEAN);
|
||||
|
||||
$url = new moodle_url($CFG->wwwroot.'/mod/glossary/approve.php', array('id'=>$id));
|
||||
if ($eid !== 0) {
|
||||
$url->param('eid', $eid);
|
||||
}
|
||||
if ($mode !== 'approval') {
|
||||
$url->param('mode', $mode);
|
||||
}
|
||||
if ($hook !== 'ALL') {
|
||||
$url->param('hook', $hook);
|
||||
}
|
||||
$url = new moodle_url($CFG->wwwroot.'/mod/glossary/approve.php', array('eid'=>$eid,'mode'=>$mode, 'hook'=>$hook));
|
||||
$PAGE->set_url($url);
|
||||
|
||||
if (! $cm = get_coursemodule_from_id('glossary', $id)) {
|
||||
print_error('invalidcoursemodule');
|
||||
}
|
||||
$entry = $DB->get_record('glossary_entries', 'id', $eid, '*', MUST_EXIST);
|
||||
$glossary = $DB->get_record('glossary', 'id', $entry->glossaryid, '*', MUST_EXIST);
|
||||
$cm = get_coursemodule_from_instance('glossary', $glossary->id, 0, false, MUST_EXIST);
|
||||
$course = $DB->get_record('course', 'id', $cm->course, '*', MUST_EXIST);
|
||||
|
||||
if (! $course = $DB->get_record("course", array("id"=>$cm->course))) {
|
||||
print_error('coursemisconf');
|
||||
}
|
||||
|
||||
if (! $glossary = $DB->get_record("glossary", array("id"=>$cm->instance))) {
|
||||
print_error('invalidid', 'glossary');
|
||||
}
|
||||
|
||||
require_login($course->id, false, $cm);
|
||||
require_login($course, false, $cm);
|
||||
|
||||
$context = get_context_instance(CONTEXT_MODULE, $cm->id);
|
||||
require_capability('mod/glossary:approve', $context);
|
||||
|
||||
$newentry = new object();
|
||||
$newentry->id = $eid;
|
||||
$newentry->approved = 1;
|
||||
$newentry->timemodified = time(); // wee need this date here to speed up recent activity, TODO: use timestamp in approved field instead in 2.0
|
||||
|
||||
$DB->update_record("glossary_entries", $newentry);
|
||||
add_to_log($course->id, "glossary", "approve entry", "showentry.php?id=$cm->id&eid=$eid", "$eid",$cm->id);
|
||||
redirect("view.php?id=$cm->id&mode=$mode&hook=$hook",get_string("entryapproved","glossary"),1);
|
||||
die;
|
||||
if (!$entry->approved and confirm_sesskey()) {
|
||||
$newentry = new object();
|
||||
$newentry->id = $entry->id;
|
||||
$newentry->approved = 1;
|
||||
$newentry->timemodified = time(); // wee need this date here to speed up recent activity, TODO: use timestamp in approved field instead in 2.0
|
||||
$DB->update_record("glossary_entries", $newentry);
|
||||
add_to_log($course->id, "glossary", "approve entry", "showentry.php?id=$cm->id&eid=$eid", "$eid", $cm->id);
|
||||
}
|
||||
|
||||
redirect("view.php?id=$cm->id&mode=$mode&hook=$hook");
|
||||
|
||||
@@ -1092,7 +1092,7 @@ function glossary_print_entry_approval($cm, $entry, $mode, $align="right", $ins
|
||||
if ($insidetable) {
|
||||
echo '<table class="glossaryapproval" align="'.$align.'"><tr><td align="'.$align.'">';
|
||||
}
|
||||
echo '<a title="'.get_string('approve','glossary').'" href="approve.php?id='.$cm->id.'&eid='.$entry->id.'&mode='.$mode.'"><img align="'.$align.'" src="'.$OUTPUT->old_icon_url('i/approve') . '" style="border:0px; width:34px; height:34px" alt="'.get_string('approve','glossary').'" /></a>';
|
||||
echo '<a title="'.get_string('approve','glossary').'" href="approve.php?eid='.$entry->id.'&mode='.$mode.'&sesskey='.sesskey().'"><img align="'.$align.'" src="'.$OUTPUT->old_icon_url('i/approve') . '" style="border:0px; width:34px; height:34px" alt="'.get_string('approve','glossary').'" /></a>';
|
||||
if ($insidetable) {
|
||||
echo '</td></tr></table>';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user