if (has_capability('mod/rcontent:viewreport', $context)) { // MARSUPIAL ********** MODIFIED -> Filter by status // 2011.08.31 @mmartinez $trackedusers = rcontent_get_count_users($rcontent->id, $rcontent->groupingid, $context, $filterby); // ********* ORIGINAL //$trackedusers = rcontent_get_count_users($rcontent->id, $rcontent->groupingid, $context); // ********* FI if ($trackedusers > 0) { $reportshow = '<a href="report.php?id=' . $rcontent->coursemodule . $filteroptionsparam . '">' . get_string('viewalluserreports', 'rcontent', $trackedusers) . '</a></div>'; } else { $reportshow = get_string('noreports', 'rcontent'); } } else { if (has_capability('mod/rcontent:viewscores', $context)) { require_once 'locallib.php'; $report = rcontent_grade_user($rcontent, $USER->id); $reportshow = get_string('score', 'rcontent') . ": " . $report; } } if (!$rcontent->visible) { //Show dimmed if the mod is hidden $link = '<a class="dimmed" href="' . $CFG->wwwroot . '/mod/rcontent/view.php?id=' . $rcontent->coursemodule . '">' . $rcontent->name . '</a>'; } else { //Show normal if the mod is visible $link = '<a href="view.php?id=' . $rcontent->coursemodule . '">' . $rcontent->name . '</a>'; } $table->data[] = array($rcontent->section, $link, $rcontent->intro, $reportshow); } if (!isset($context)) { $context = context_course::instance($id); }
/** * Return grade for given user or all users. * @param int $rcontentid id of rcontent * @param int $userid optional user id, 0 means all users * @return array array of grades, false if none */ function rcontent_get_user_grades($rcontent, $userid = 0) { global $CFG, $DB; require_once 'locallib.php'; $grades = array(); if (empty($userid)) { if ($rcontentusers = $DB->get_records_select('rcontent_grades', "rcontentid='{$rcontent->id}' AND unitid={$rcontent->unitid} AND activityid={$rcontent->activityid} GROUP BY userid", array(), "", "userid")) { foreach ($rcontentusers as $rcontentuser) { $grades[$rcontentuser->userid] = new object(); $grades[$rcontentuser->userid]->id = $rcontentuser->userid; $grades[$rcontentuser->userid]->userid = $rcontentuser->userid; $grades[$rcontentuser->userid]->rawgrade = rcontent_grade_user($rcontent, $rcontentuser->userid, 'gradebook'); $grades[$rcontentuser->userid]->feedback = rcontent_grade_user_comments($rcontent, $rcontentuser->userid); } } else { return false; } } else { if (!($rcontentuser = $DB->get_records_select('rcontent_grades', "rcontentid='{$rcontent->id}' AND userid='{$userid}' AND unitid={$rcontent->unitid} AND activityid={$rcontent->activityid} GROUP BY userid", array(), "", "userid"))) { return false; //no attempt yet } $rcontentuser = array_values($rcontentuser); $rcontentuser = $rcontentuser[0]; $grades[$userid] = new object(); $grades[$userid]->id = $userid; $grades[$userid]->userid = $userid; $grades[$userid]->rawgrade = rcontent_grade_user($rcontent, $userid, 'gradebook'); $grades[$userid]->feedback = rcontent_grade_user_comments($rcontent, $rcontentuser->userid); } return $grades; }