/** * Returns string representation of grade value * * @param float $value The grade value * @param object $grade_item Grade item object passed by reference to prevent scale reloading * @param bool $localized use localised decimal separator * @param int $displaytype type of display. For example GRADE_DISPLAY_TYPE_REAL, GRADE_DISPLAY_TYPE_PERCENTAGE, GRADE_DISPLAY_TYPE_LETTER * @param int $decimals The number of decimal places when displaying float values * @return string */ function grade_format_gradevalue($value, &$grade_item, $localized = true, $displaytype = null, $decimals = null) { if ($grade_item->gradetype == GRADE_TYPE_NONE or $grade_item->gradetype == GRADE_TYPE_TEXT) { return ''; } // no grade yet? if (is_null($value)) { return '-'; } if ($grade_item->gradetype != GRADE_TYPE_VALUE and $grade_item->gradetype != GRADE_TYPE_SCALE) { //unknown type?? return ''; } if (is_null($displaytype)) { $displaytype = $grade_item->get_displaytype(); } if (is_null($decimals)) { $decimals = $grade_item->get_decimals(); } switch ($displaytype) { case GRADE_DISPLAY_TYPE_REAL: return grade_format_gradevalue_real($value, $grade_item, $decimals, $localized); case GRADE_DISPLAY_TYPE_PERCENTAGE: return grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized); case GRADE_DISPLAY_TYPE_LETTER: return grade_format_gradevalue_letter($value, $grade_item); case GRADE_DISPLAY_TYPE_REAL_PERCENTAGE: return grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_REAL_LETTER: return grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_letter($value, $grade_item) . ')'; case GRADE_DISPLAY_TYPE_PERCENTAGE_REAL: return grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_LETTER_REAL: return grade_format_gradevalue_letter($value, $grade_item) . ' (' . grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_LETTER_PERCENTAGE: return grade_format_gradevalue_letter($value, $grade_item) . ' (' . grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_PERCENTAGE_LETTER: return grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_letter($value, $grade_item) . ')'; default: return ''; } }
function grade_format_local($value, $grade_item, $displaytype, $localized, $decimals) { switch ($displaytype) { case GRADE_DISPLAY_TYPE_REAL: // return format_float($value, $decimals, $localized); return grade_format_gradevalue_real($value, $grade_item, $decimals, $localized); case GRADE_DISPLAY_TYPE_PERCENTAGE: // return format_float($value, $decimals, $localized) .'%'; return grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized); case GRADE_DISPLAY_TYPE_LETTER: return grade_format_gradevalue_letter($value, $grade_item); case GRADE_DISPLAY_TYPE_REAL_PERCENTAGE: // return format_float($value, $decimals, $localized) .'(' // . format_float($value, $decimals, $localized) .'%)'; return grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_REAL_LETTER: // return format_float($value, $decimals, $localized) .'(' // . grade_format_gradevalue_letter($value, $grade_item) .')'; return grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_letter($value, $grade_item) . ')'; case GRADE_DISPLAY_TYPE_PERCENTAGE_REAL: // return format_float($value, $decimals, $localized) .'% (' // . format_float($value, $decimals, $localized) .')'; return grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_LETTER_REAL: // return grade_format_gradevalue_letter($value, $grade_item) .'(' // . format_float($value, $decimals, $localized) .')'; return grade_format_gradevalue_letter($value, $grade_item) . ' (' . grade_format_gradevalue_real($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_LETTER_PERCENTAGE: // return grade_format_gradevalue_letter($value, $grade_item) .'(' // . format_float($value, $decimals, $localized) .'%)'; return grade_format_gradevalue_letter($value, $grade_item) . ' (' . grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ')'; case GRADE_DISPLAY_TYPE_PERCENTAGE_LETTER: // return format_float($value, $decimals, $localized) .'% (' // . grade_format_gradevalue_letter($value, $grade_item) .')'; return grade_format_gradevalue_percentage($value, $grade_item, $decimals, $localized) . ' (' . grade_format_gradevalue_letter($value, $grade_item) . ')'; default: return ''; } }