Beispiel #1
0
 public function grade_jclic($jclic, $userid, $record)
 {
     global $CFG, $DB;
     $record = (object) (array) $record;
     $defaultsettings = array('userid' => $userid, 'attempts' => 1, 'totaltime' => "1' 13''", 'starttime' => time(), 'done' => true, 'rawgrade' => 0);
     foreach ($defaultsettings as $name => $value) {
         if (!isset($record->{$name})) {
             $record->{$name} = $value;
         }
     }
     $grades = array($userid => $record);
     $cm = get_coursemodule_from_instance('jclic', $jclic->id);
     $jclic->cmidnumber = $cm->idnumber;
     return jclic_grade_item_update($jclic, $grades);
 }
Beispiel #2
0
 /**
  * Update the gradebook information for this jclic.
  *
  * @param bool $reset If true, will reset all grades in the gradbook for this jclic
  * @param int $coursemoduleid This is required because it might not exist in the database yet
  * @return bool
  */
 public function update_gradebook($reset, $coursemoduleid)
 {
     global $CFG;
     require_once $CFG->dirroot . '/mod/jclic/lib.php';
     $jclic = clone $this->instance;
     $jclic->cmidnumber = $coursemoduleid;
     $param = null;
     if ($reset) {
         $param = 'reset';
     }
     return jclic_grade_item_update($jclic, $param);
 }
Beispiel #3
0
/**
 * Removes all grades from gradebook
 * @param int $courseid
 * @param string optional type
 */
function jclic_reset_gradebook($courseid)
{
    global $CFG, $DB;
    $params = array('courseid' => $courseid);
    $sql = "SELECT j.*, cm.idnumber as cmidnumber, j.course as courseid\n              FROM {jclic} j, {course_modules} cm, {modules} m\n             WHERE m.name='jclic' AND m.id=cm.module AND cm.instance=j.id AND j.course=:courseid ";
    if ($jclics = $DB->get_records_sql($sql, $params)) {
        foreach ($jclics as $jclic) {
            jclic_grade_item_update($jclic, 'reset');
        }
    }
}