Example #1
0
    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);
}
Example #2
0
/**
 * 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;
}