]> git.mjollnir.org Git - moodle.git/commitdiff
some bugfixing and proper conversion to new xxx_param() functions - SC#148
authorskodak <skodak>
Mon, 17 Apr 2006 21:14:50 +0000 (21:14 +0000)
committerskodak <skodak>
Mon, 17 Apr 2006 21:14:50 +0000 (21:14 +0000)
mod/exercise/assessments.php
mod/exercise/locallib.php
mod/exercise/submissions.php
mod/exercise/upload.php
mod/exercise/view.php

index 52490efb81600dcff65fa49202e8d549e87b3d0e..6a3fce06db853c084ef4ec0eee514bfcbc95c7af 100644 (file)
@@ -1,4 +1,4 @@
-<?php  // $Id: lib.php,v 1.1 22 Aug 2003
+<?php  // $Id$
 
 /*************************************************
     ACTIONS handled are:
     require_once("lib.php");
     require_once("locallib.php");
 
-    $id = required_param('id', PARAM_INT);    // Course Module ID
+    $id     = required_param('id', PARAM_INT);    // Course Module ID
+    $action = required_param('action', PARAM_ALPHA);
+    $aid    = optional_param('aid', 0, PARAM_INT);
+    $sid    = optional_param('sid', 0, PARAM_INT);
+    $userid = optional_param('userid', 0, PARAM_INT);
 
     // get some esential stuff...
     if (! $cm = get_record("course_modules", "id", $id)) {
@@ -62,7 +66,6 @@
                   "", "", true);
 
     //...get the action
-    $action = required_param('action');
 
 
     /******************* admin amend Grading Grade ************************************/
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
-        if (empty($_GET['aid'])) {
+        }
+        if (empty($aid)) {
             error("Admin Amend Grading grade: assessment id missing");
-            }
+        }
 
-        if (!$assessment = get_record("exercise_assessments", "id", $_GET['aid'])) {
+        if (!$assessment = get_record("exercise_assessments", "id", $aid)) {
             error("Amin Amend Grading grade: assessment not found");
         }
         print_heading(get_string("amend", "exercise")." ".get_string("gradeforstudentsassessment",
                     "exercise", $course->student));
         echo "<form name=\"amendgrade\" method=\"post\" action=\"assessments.php\">\n";
-        echo "<input type=\"hidden\" name=\"aid\" value=\"$_GET[aid]\" />\n";
+        echo "<input type=\"hidden\" name=\"aid\" value=\"$aid\" />\n";
         echo "<input type=\"hidden\" name=\"action\" value=\"updategradinggrade\" />\n";
         echo "<input type=\"hidden\" name=\"id\" value=\"$cm->id\" />\n";
         echo "<table width=\"50%\" align=\"center\" border=\"1\" />\n";
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
-        if (empty($_GET['aid'])) {
+        }
+        if (empty($aid)) {
             error("Admin confirm delete: assessment id missing");
-            }
+        }
 
         notice_yesno(get_string("confirmdeletionofthisitem","exercise", get_string("assessment", "exercise")),
-             "assessments.php?action=admindelete&amp;id=$cm->id&amp;aid=$_GET[aid]",
+             "assessments.php?action=admindelete&amp;id=$cm->id&amp;aid=$aid",
              "submissions.php?action=adminlist&amp;id=$cm->id");
         }
 
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
-        if (empty($_GET['aid'])) {
+        }
+        if (empty($aid)) {
             error("Admin delete: submission id missing");
-            }
+        }
 
         print_string("deleting", "exercise");
         // first delete all the associated records...
-        delete_records("exercise_grades", "assessmentid", $_GET['aid']);
+        delete_records("exercise_grades", "assessmentid", $aid);
         // ...now delete the assessment...
-        delete_records("exercise_assessments", "id", $_GET['aid']);
+        delete_records("exercise_assessments", "id", $aid);
 
         print_continue("submissions.php?id=$cm->id&amp;action=adminlist");
         }
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
+        }
 
-        if (empty($_GET['sid'])) {
+        if (empty($sid)) {
             error ("exercise asssessments: adminlist called with no sid");
-            }
-        $submission = get_record("exercise_submissions", "id", $_GET['sid']);
+        }
+        $submission = get_record("exercise_submissions", "id", $sid);
         exercise_print_assessments_for_admin($exercise, $submission);
         print_continue("submissions.php?action=adminlist&amp;id=$cm->id");
         }
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
+        }
 
-        if (empty($_GET['userid'])) {
+        if (empty($userid)) {
             error ("exercise asssessments: adminlistbystudent called with no userid");
-            }
-        $user = get_record("user", "id", $_GET['userid']);
+        }
+        $user = get_record("user", "id", $userid);
         exercise_print_assessments_by_user_for_admin($exercise, $user);
         print_continue("submissions.php?action=adminlist&amp;id=$cm->id");
         }
     /****************** Assess resubmission (by teacher) ***************************/
     elseif ($action == 'assessresubmission') {
 
-        $sid = required_param('sid');
+        if (empty($sid)) {
+            error ("exercise asssessments: assessresubmission called with no sid");
+        }
 
         if (! $submission = get_record("exercise_submissions", "id", $sid)) {
             error("Assess submission is misconfigured - no submission record!");
     /****************** Assess submission (by teacher or student) ***************************/
     elseif ($action == 'assesssubmission') {
 
-        $sid = required_param('sid');
+        if (empty($sid)) {
+            error ("exercise asssessments: assesssubmission called with no sid");
+        }
 
         if (! $submission = get_record("exercise_submissions", "id", $sid)) {
             error("Assess submission is misconfigured - no submission record!");
                         unset($element);
                         $element->description   = $description;
                         $element->exerciseid = $exercise->id;
-                        $element->elementno = $key;
+                        $element->elementno = clean_param($key, PARAM_INT);
                         if (!$element->id = insert_record("exercise_elements", $element)) {
                             error("Could not insert exercise element!");
                         }
                         unset($element);
                         $element->description   = $description;
                         $element->exerciseid = $exercise->id;
-                        $element->elementno = $key;
+                        $element->elementno = clean_param($key, PARAM_INT);
                         if (isset($form->scale[$key])) {
                             $element->scale = $form->scale[$key];
                             switch ($EXERCISE_SCALES[$form->scale[$key]]['type']) {
                 foreach ($form->maxscore as $key => $themaxscore) {
                     unset($element);
                     $element->exerciseid = $exercise->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->maxscore = $themaxscore;
                     if (isset($form->description[$key])) {
                         $element->description   = $form->description[$key];
                 foreach ($form->description as $key => $description) {
                     unset($element);
                     $element->exerciseid = $exercise->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->description   = $description;
                     $element->weight = $form->weight[$key];
                     for ($j=0;$j<5;$j++) {
             error("Only teachers can look at this page");
         }
 
-        $aid = required_param('aid', PARAM_INT);
-        $sid = required_param('sid', PARAM_INT);
+        if (empty($aid)) {
+            error("assessment id missing");
+        }
+        if (empty($sid)) {
+            error ("no sid");
+        }
         if (!$assessment = get_record("exercise_assessments", "id", $aid)) {
             error("Teacher assessment: User's assessment record not found");
         }
         $timenow = time();
         $form = data_submitted();
 
-        $aid = required_param('aid', PARAM_INT);
+        if (empty($aid)) {
+            error("assessment id missing");
+        }
         if (! $assessment = get_record("exercise_assessments", "id", $aid)) {
             error("exercise assessment is misconfigured");
         }
                     unset($element);
                     $element->exerciseid = $exercise->id;
                     $element->assessmentid = $assessment->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->feedback   = $thefeedback;
                     if (!$element->id = insert_record("exercise_grades", $element)) {
                         error("Could not insert exercise element!");
                     unset($element);
                     $element->exerciseid = $exercise->id;
                     $element->assessmentid = $assessment->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->feedback   = $form->feedback[$key];
                     $element->grade = $thegrade;
                     if (!$element->id = insert_record("exercise_grades", $element)) {
                     unset($element);
                     $element->exerciseid = $exercise->id;
                     $element->assessmentid = $assessment->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->feedback   = $form->feedback[$key];
                     $element->grade = $thegrade;
                     if (!$element->id = insert_record("exercise_grades", $element)) {
                     unset($element);
                     $element->exerciseid = $exercise->id;
                     $element->assessmentid = $assessment->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->feedback   = $thefeedback;
                     if (!$element->id = insert_record("exercise_grades", $element)) {
                         error("Could not insert exercise element!");
                     unset($element);
                     $element->exerciseid = $exercise->id;
                     $element->assessmentid = $assessment->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->feedback   = $form->feedback[$key];
                     $element->grade = $thegrade;
                     if (!$element->id = insert_record("exercise_grades", $element)) {
                     unset($element);
                     $element->exerciseid = $exercise->id;
                     $element->assessmentid = $assessment->id;
-                    $element->elementno = $key;
+                    $element->elementno = clean_param($key, PARAM_INT);
                     $element->feedback   = $form->feedback[$key];
                     $element->grade = $thegrade;
                     if (!$element->id = insert_record("exercise_grades", $element)) {
             error("Only teachers can look at this page");
             }
 
-        $aid = required_param('aid', PARAM_INT);        
+        if (empty($aid)) {
+            error("submission id missing");
+        }
         // normalise gradinggrade
         $gradinggrade = $_POST['gradinggrade'] * 100 / $exercise->gradinggrade;
         if (!set_field("exercise_assessments", "gradinggrade", $gradinggrade, "id",
-                    $_POST['aid'])) {
+                    $aid)) {
             error("Update grading grade: asseesment not updated");
         }
         redirect("submissions.php?id=$cm->id&amp;action=adminlist", get_string("savedok", "exercise"), 1);
     /****************** user confirm delete ************************************/
     elseif ($action == 'userconfirmdelete' ) {
 
-        if (empty($_GET['aid'])) {
+        if (empty($aid)) {
             error("User confirm delete: assessment id missing");
         }
 
         notice_yesno(get_string("confirmdeletionofthisitem","exercise", get_string("assessment", "exercise")),
-             "assessments.php?action=userdelete&amp;id=$cm->id&amp;aid=$_GET[aid]", "view.php?id=$cm->id");
+             "assessments.php?action=userdelete&amp;id=$cm->id&amp;aid=$aid", "view.php?id=$cm->id");
     }
 
 
     /****************** user delete ************************************/
     elseif ($action == 'userdelete' ) {
 
-        if (empty($_GET['aid'])) {
+        if (empty($aid)) {
             error("User delete: assessment id missing");
         }
 
         print_string("deleting", "exercise");
         // first delete all the associated records...
-        delete_records("exercise_grades", "assessmentid", $_GET['aid']);
+        delete_records("exercise_grades", "assessmentid", $aid);
         // ...now delete the assessment...
-        delete_records("exercise_assessments", "id", $_GET['aid']);
+        delete_records("exercise_assessments", "id", $aid);
 
         print_continue("view.php?id=$cm->id");
     }
     /****************** view assessment ***********************/
     elseif ($action == 'viewassessment') {
 
+        if (empty($aid)) {
+            error("assessment id missing");
+        }
+
         // get the assessment record
-        if (!$assessment = get_record("exercise_assessments", "id", $_GET['aid'])) {
+        if (!$assessment = get_record("exercise_assessments", "id", $aid)) {
             error("Assessment record not found");
         }
 
index dc5ebfb2897b2e26026085f98c3d1ec86d9d627a..61042bbe1948e6114f603859b9e20183aef61aff 100644 (file)
@@ -1608,9 +1608,11 @@ function exercise_print_assessment_form($exercise, $assessment = false, $allowch
         }
 
     if ($assessment) {
+        $assessment->generalcomment = clean_text($assessment->generalcomment); //clean html first
         // get any previous grades...
         if ($gradesraw = get_records_select("exercise_grades", "assessmentid = $assessment->id", "elementno")) {
             foreach ($gradesraw as $grade) {
+                $grade->feedback = clean_text($grade->feedback); //clean the html first
                 $grades[] = $grade;   // to renumber index 0,1,2...
                 }
             }
@@ -1622,7 +1624,7 @@ function exercise_print_assessment_form($exercise, $assessment = false, $allowch
             $grades[$i]->grade = 0;
             }
         }
-                
+
     // determine what sort of grading
     switch ($exercise->gradingstrategy) {
         case 0:  // no grading
@@ -2862,13 +2864,13 @@ function exercise_print_upload_form($exercise) {
 
     if (! $course = get_record("course", "id", $exercise->course)) {
         error("Course is misconfigured");
-        }
+    }
     if (! $cm = get_coursemodule_from_instance("exercise", $exercise->id, $course->id)) {
         error("Course Module ID was incorrect");
-        }
+    }
 
     echo "<div align=\"center\">";
-    echo "<form enctype=\"multipart/form-data\" method=\"POST\" action=\"upload.php\">";
+    echo "<form enctype=\"multipart/form-data\" method=\"post\" action=\"upload.php\">";
     echo " <input type=\"hidden\" name=\"id\" value=\"$cm->id\" />";
     require_once($CFG->dirroot.'/lib/uploadlib.php');
     upload_print_form_fragment(1,array('newfile'),null,true,array('title'),$course->maxbytes,$exercise->maxbytes,false);
index 2e5d536fef4783a129ea24ce112b3895e8972e92..9f2b57b5d872b56844a2a6337efde05901788f82 100644 (file)
@@ -1,4 +1,4 @@
-<?php  // $Id: submissions.php,v 1.0 22 Aug 2003
+<?php  // $Id$
 
 /*************************************************
     ACTIONS handled are:
     require_once("locallib.php");
     require_once("version.php");
 
-    $id = required_param('id', PARAM_INT); // Course Module ID
+    $id     = required_param('id', PARAM_INT); // Course Module ID
+    $action = required_param('action', PARAM_ALPHA);
+    $aid    = optional_param('aid', 0, PARAM_INT);
+    $sid    = optional_param('sid', 0, PARAM_INT);
+    $title  = optional_param('title', '', PARAM_CLEAN);
 
     // get some essential stuff...
     if (! $cm = get_record("course_modules", "id", $id)) {
                   <a href=\"view.php?id=$cm->id\">".format_string($exercise->name,true)."</a> -> $strsubmissions",
                   "", "", true);
 
-    //...get the action!
-    $action = required_param('action');
-
 
     /******************* admin amend title ************************************/
     if ($action == 'adminamendtitle' ) {
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
-        if (empty($_GET['sid'])) {
+        }
+        if (empty($sid)) {
             error("Admin Amend Title: submission id missing");
-            }
+        }
 
-        $submission = get_record("exercise_submissions", "id", $_GET['sid']);
+        $submission = get_record("exercise_submissions", "id", $sid);
         print_heading(get_string("amendtitle", "exercise"));
         ?>
         <form name="amendtitleform" action="submissions.php" method="post">
         <input type="hidden" name="action" value="adminupdatetitle" />
         <input type="hidden" name="id" value="<?php echo $cm->id ?>" />
-        <input type="hidden" name="sid" value="<?php echo $_REQUEST['sid'] ?>" />
+        <input type="hidden" name="sid" value="<?php echo $sid ?>" />
         <center>
         <table celpadding="5" border="1">
         <?php
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
         }
-        if (empty($_GET['sid'])) {
+        if (empty($sid)) {
             error("Admin clear late flag: submission id missing");
         }
 
-        if (!$submission = get_record("exercise_submissions", "id", $_GET['sid'])) {
+        if (!$submission = get_record("exercise_submissions", "id", $sid)) {
             error("Admin clear late flag: can not get submission record");
         }
-        if (set_field("exercise_submissions", "late", 0, "id", $_GET['sid'])) {
+        if (set_field("exercise_submissions", "late", 0, "id", $sid)) {
             print_heading(get_string("clearlateflag", "exercise")." ".get_string("ok"));
         }
 
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
-            }
-        if (empty($_GET['sid'])) {
+        }
+        if (empty($sid)) {
             error("Admin confirm delete: submission id missing");
-            }
-        if (!$submission = get_record("exercise_submissions", "id", $_GET['sid'])) {
+        }
+        if (!$submission = get_record("exercise_submissions", "id", $sid)) {
             error("Admin delete: can not get submission record");
-            }
+        }
 
         if (isteacher($course->id, $submission->userid)) {
             if (!isteacheredit($course->id)) {
             }
         }
         notice_yesno(get_string("confirmdeletionofthisitem","exercise", get_string("submission", "exercise")),
-             "submissions.php?action=admindelete&amp;id=$cm->id&amp;sid=$_GET[sid]", "submissions.php?id=$cm->id&amp;action=adminlist");
+             "submissions.php?action=admindelete&amp;id=$cm->id&amp;sid=$sid", "submissions.php?id=$cm->id&amp;action=adminlist");
         }
 
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
             }
-        if (empty($_GET['sid'])) {
+        if (empty($sid)) {
             error("Admin delete: submission id missing");
             }
 
-        if (!$submission = get_record("exercise_submissions", "id", $_GET['sid'])) {
+        if (!$submission = get_record("exercise_submissions", "id", $sid)) {
             error("Admin delete: can not get submission record");
             }
         print_string("deleting", "exercise");
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
             }
-        if (empty($_GET['sid'])) {
+        if (empty($sid)) {
             error("Admin confirm late flag: submission id missing");
             }
-        if (!$submission = get_record("exercise_submissions", "id", $_GET['sid'])) {
+        if (!$submission = get_record("exercise_submissions", "id", $sid)) {
             error("Admin confirm late flag: can not get submission record");
             }
 
         notice_yesno(get_string("clearlateflag","exercise")."?",
-             "submissions.php?action=adminclearlate&amp;id=$cm->id&amp;sid=$_GET[sid]",
+             "submissions.php?action=adminclearlate&amp;id=$cm->id&amp;sid=$sid",
              "submissions.php?id=$cm->id&amp;action=adminlist");
         }
 
         if (!isteacher($course->id)) {
             error("Only teachers can look at this page");
             }
-        if (empty($_POST['sid'])) {
+        if (empty($sid)) {
             error("Admin Update Title: submission id missing");
             }
 
-        if (set_field("exercise_submissions", "title", $_POST['title'], "id", $_POST['sid'])) {
+        if (set_field("exercise_submissions", "title", $title, "id", $sid)) {
             print_heading(get_string("amendtitle", "exercise")." ".get_string("ok"));
             }
         redirect("submissions.php?id=$cm->id&amp;action=adminlist");
     /******************* user confirm delete ************************************/
     elseif ($action == 'userconfirmdelete' ) {
 
-        if (empty($_GET['sid'])) {
+        if (empty($sid)) {
             error("User Confirm Delete: submission id missing");
             }
 
         notice_yesno(get_string("confirmdeletionofthisitem","exercise", get_string("submission", "exercise")),
-             "submissions.php?action=userdelete&amp;id=$cm->id&amp;sid=$_GET[sid]", "view.php?id=$cm->id");
+             "submissions.php?action=userdelete&amp;id=$cm->id&amp;sid=$sid", "view.php?id=$cm->id");
         }
 
 
     /******************* user delete ************************************/
     elseif ($action == 'userdelete' ) {
 
-        if (empty($_GET['sid'])) {
+        if (empty($sid)) {
             error("User Delete: submission id missing");
             }
 
-        if (!$submission = get_record("exercise_submissions", "id", $_GET['sid'])) {
+        if (!$submission = get_record("exercise_submissions", "id", $sid)) {
             error("User Delete: can not get submission record");
             }
         print_string("deleting", "exercise");
index 9dacfa8ea0cde6fb1a45a2a62a9d002b10dd0ae3..9c6c160b24e1e4866b13ab70bd99854a854904fa 100644 (file)
@@ -1,10 +1,11 @@
-<?php  // $Id: upload.php, v1.0 30th April 2003
+<?php  // $Id$
 
     require_once("../../config.php");
     require_once("lib.php");
     require_once("locallib.php");
+    $id    = required_param('id', PARAM_INT);           // course module ID
+    $title = optional_param('title', '', PARAM_CLEAN);
 
-    $id = required_param('id', PARAM_INT);           // course module ID
     $timenow = time();
 
     // get some esential stuff...
@@ -48,7 +49,7 @@
     }
 
     // check existence of title
-    if (!$title = $_POST['title']) {
+    if ($title == '') {
         notify(get_string("notitlegiven", "exercise") );
     }
     else {
index 9359112c947045f745aaa16ec37a4348689d6cd5..a37b277d01422791822327920234aa646bc06378 100644 (file)
@@ -1,4 +1,4 @@
-<?php  // $Id: view.php, v1.1 23 Aug 2003
+<?php  // $Id$
 
 /*************************************************
     ACTIONS handled are:
@@ -19,7 +19,9 @@
     require_once("lib.php");
     require_once("locallib.php");
 
-    $id = required_param('id', PARAM_INT);    // Course Module ID
+    $id          = required_param('id', PARAM_INT);    // Course Module ID
+    $action      = optional_param('action', '', PARAM_ALPHA);
+    $changegroup = optional_param('group', -1, PARAM_INT);
 
     // get some esential stuff...
     if (! $cm = get_record("course_modules", "id", $id)) {
@@ -47,9 +49,6 @@
                  "<a href=\"index.php?id=$course->id\">$strexercises</a> -> ".format_string($exercise->name),
                   "", "", true, update_module_button($cm->id, $course->id, $strexercise), navmenu($course, $cm));
 
-    // ...and if necessary set default action
-
-    $action = optional_param('action', '', PARAM_ALPHA);
     if (isteacher($course->id)) {
         if (empty($action)) { // no action specified, either go straight to elements page else the admin page
             // has the assignment any elements
 
         /// Check to see if groups are being used in this exercise
         /// and if so, set $currentgroup to reflect the current group
-        $changegroup = isset($_GET['group']) ? $_GET['group'] : -1;  // Group change requested?
         $groupmode = groupmode($course, $cm);   // Groups are being used?
         $currentgroup = get_and_set_current_group($course, $groupmode, $changegroup);