コード例 #1
0
 /**
  *
  * @return array Recordset
  */
 protected function get_all_rating_records()
 {
     global $DB;
     if ($this->_allratings === null) {
         $rm = new ratingmdl_rating_manager();
         $options = new object();
         $options->context = $this->df->context;
         $options->component = 'mod_dataform';
         $options->ratingarea = $this->name;
         list($sql, $params) = $rm->get_sql_all($options, false);
         $this->_allratings = $DB->get_records_sql($sql, $params);
     }
     return $this->_allratings;
 }
コード例 #2
0
    die;
}
$PAGE->set_context($df->context);
$PAGE->set_url('/mod/dataform/field/ratingmdl/rate_ajax.php', array('contextid' => $context->id));
// Get the field.
$field = $df->field_manager->get_field_by_name($ratingarea);
// Get the entry.
$entry = $DB->get_record('dataform_entries', array('id' => $itemid));
// Get the entry rating.
if (!($entryrating = $field->get_entry_rating($entry))) {
    $result->error = get_string('ratepermissiondenied', 'rating');
    echo json_encode($result);
    die;
}
$entry->rating = $entryrating;
$rm = new ratingmdl_rating_manager();
// Check the module rating permissions.
if (!$field->user_can_rate($entry, $USER->id)) {
    $result->error = get_string('ratepermissiondenied', 'rating');
    echo json_encode($result);
    die;
}
// Check that the rating is valid.
$params = array('context' => $context, 'component' => $component, 'ratingarea' => $ratingarea, 'itemid' => $itemid, 'scaleid' => $scaleid, 'rating' => $userrating, 'rateduserid' => $rateduserid, 'aggregation' => $aggregationmethod);
if (!$rm->check_rating_is_valid($params)) {
    $result->error = get_string('ratinginvalid', 'rating');
    echo json_encode($result);
    die;
}
// Check that the rating value is in accordance with the field settings.
if ($validationcode = $field->user_can_assign_the_rating_value($entryrating, $userrating)) {