public function print_analysed($item, $itemnr = '', $groupid = false, $courseid = false) { $values = evaluation_get_group_values($item, $groupid, $courseid); if ($values) { echo '<tr><th colspan="2" align="left">'; echo $itemnr.' ('.$item->label.') '.$item->name; echo '</th></tr>'; foreach ($values as $value) { echo '<tr><td colspan="2" valign="top" align="left">'; echo '- '.str_replace("\n", '<br />', $value->value); echo '</td></tr>'; } } }
public function get_analysed($item, $groupid = false, $courseid = false) { $analysed_item = array(); $analysed_item[] = $item->typ; $analysed_item[] = $item->name; //die moeglichen Antworten extrahieren $info = $this->get_info($item); $lines = null; $lines = explode (EVALUATION_MULTICHOICERATED_LINE_SEP, $info->presentation); if (!is_array($lines)) { return null; } //die Werte holen $values = evaluation_get_group_values($item, $groupid, $courseid, $this->ignoreempty($item)); if (!$values) { return null; } //schleife ueber den Werten und ueber die Antwortmoeglichkeiten $analysed_answer = array(); $sizeoflines = count($lines); for ($i = 1; $i <= $sizeoflines; $i++) { $item_values = explode(EVALUATION_MULTICHOICERATED_VALUE_SEP, $lines[$i-1]); $ans = new stdClass(); $ans->answertext = $item_values[1]; $avg = 0.0; $anscount = 0; foreach ($values as $value) { //ist die Antwort gleich dem index der Antworten + 1? if ($value->value == $i) { $avg += $item_values[0]; //erst alle Werte aufsummieren $anscount++; } } $ans->answercount = $anscount; $ans->avg = doubleval($avg) / doubleval(count($values)); $ans->value = $item_values[0]; $ans->quotient = $ans->answercount / count($values); $analysed_answer[] = $ans; } $analysed_item[] = $analysed_answer; return $analysed_item; }
public function get_analysed($item, $groupid = false, $courseid = false) { global $DB; $analysed = new stdClass(); $analysed->data = array(); $analysed->name = $item->name; $values = evaluation_get_group_values($item, $groupid, $courseid); $avg = 0.0; $counter = 0; if ($values) { $data = array(); foreach ($values as $value) { if (is_numeric($value->value)) { $data[] = $value->value; $avg += $value->value; $counter++; } } $avg = $counter > 0 ? $avg / $counter : 0; $analysed->data = $data; $analysed->avg = $avg; } return $analysed; }
public function get_analysed($item, $groupid = false, $courseid = false) { $info = $this->get_info($item); $analysed_item = array(); $analysed_item[] = $item->typ; $analysed_item[] = $item->name; //get the possible answers $answers = null; $answers = explode (EVALUATION_MULTICHOICE_LINE_SEP, $info->presentation); if (!is_array($answers)) { return null; } //get the values $values = evaluation_get_group_values($item, $groupid, $courseid, $this->ignoreempty($item)); if (!$values) { return null; } //get answertext, answercount and quotient for each answer $analysed_answer = array(); if ($info->subtype == 'c') { $sizeofanswers = count($answers); for ($i = 1; $i <= $sizeofanswers; $i++) { $ans = new stdClass(); $ans->answertext = $answers[$i-1]; $ans->answercount = 0; foreach ($values as $value) { //ist die Antwort gleich dem index der Antworten + 1? $vallist = explode(EVALUATION_MULTICHOICE_LINE_SEP, $value->value); foreach ($vallist as $val) { if ($val == $i) { $ans->answercount++; } } } $ans->quotient = $ans->answercount / count($values); $analysed_answer[] = $ans; } } else { $sizeofanswers = count($answers); for ($i = 1; $i <= $sizeofanswers; $i++) { $ans = new stdClass(); $ans->answertext = $answers[$i-1]; $ans->answercount = 0; foreach ($values as $value) { //ist die Antwort gleich dem index der Antworten + 1? if ($value->value == $i) { $ans->answercount++; } } $ans->quotient = $ans->answercount / count($values); $analysed_answer[] = $ans; } } $analysed_item[] = $analysed_answer; return $analysed_item; }