. /** * A page to display a list of ratings for a given item (forum post etc) * * @package moodlecore * @copyright 2010 Andrew Davis * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once("../config.php"); require_once("ratinglib.php"); $itemcontextid = required_param('contextid', PARAM_INT); $itemid = required_param('itemid', PARAM_INT); $scaleid = required_param('scaleid', PARAM_INT); $sort = optional_param('sort', '', PARAM_ALPHA); $context = get_context_instance_by_id($itemcontextid); $cm = get_coursemodule_from_id('', $context->instanceid, 0, false, MUST_EXIST); $courseid = $cm->course; //$course = get_course_from_path($context->path); require_login($courseid, false, $cm); $url = new moodle_url('/rating/index.php', array('contextid'=>$itemcontextid,'itemid'=>$itemid)); if ($sort !== 0) { $url->param('sort', $sort); } $PAGE->set_url($url); $permissions = rating::get_rating_permissions(context); if (!$permissions[RATING_VIEW]) { print_error('noviewrate', 'rating'); } if (!$permissions[RATING_VIEW_ALL] and $USER->id != $item->userid) { print_error('noviewanyrate', 'rating'); } switch ($sort) { case 'firstname': $sqlsort = "u.firstname ASC"; break; case 'rating': $sqlsort = "r.rating ASC"; break; default: $sqlsort = "r.timemodified ASC"; } $scalemenu = make_grades_menu($scaleid); $strratings = get_string('ratings', 'rating'); $strrating = get_string('rating', 'rating'); $strname = get_string('name'); $strtime = get_string('time'); //Is there something more meaningful we can put in the title? //$PAGE->set_title("$strratings: ".format_string($post->subject)); $PAGE->set_title("$strratings: ".format_string($itemid)); echo $OUTPUT->header(); //if (!$ratings = forum_get_ratings($post->id, $sqlsort)) { $ratings = rating::load_ratings_for_item($context, $itemid, $sort); if (!$ratings) { //print_error('noresult', 'forum', '', format_string($post->subject)); print_error('noresult'); } else { echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; foreach ($ratings as $rating) { echo ''; echo "'; echo '"; echo '"; echo "\n"; } echo "
 $strname$strrating$strtime
"; if($courseid) { echo $OUTPUT->user_picture($rating, array('courseid'=>$courseid)); } else { echo $OUTPUT->user_picture($rating); } echo ''.fullname($rating).''.$scalemenu[$rating->rating]."'.userdate($rating->timemodified)."
"; echo "
"; } echo $OUTPUT->close_window_button(); echo $OUTPUT->footer();