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