From: skodak Date: Fri, 29 May 2009 17:30:53 +0000 (+0000) Subject: MDL-19323 added missing support for localized floats on category edit page + more... X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=b925fe0a00aba512c3dd3fc67489bb375dc134a9;p=moodle.git MDL-19323 added missing support for localized floats on category edit page + more cleanup; merged from MOODLE_19_STABLE --- diff --git a/grade/edit/tree/category.php b/grade/edit/tree/category.php index 52ff9aac13..c8e7ec6582 100644 --- a/grade/edit/tree/category.php +++ b/grade/edit/tree/category.php @@ -56,15 +56,28 @@ if ($id) { $category->parentcategory = $grade_category->parent; $grade_item = $grade_category->load_grade_item(); // nomalize coef values if needed - if ($parent_category = $grade_category->get_parent_category()) { - if ($parent_category->aggregation == GRADE_AGGREGATE_SUM or $parent_category->aggregation == GRADE_AGGREGATE_WEIGHTED_MEAN2) { - $grade_item->aggregationcoef = $grade_item->aggregationcoef == 0 ? 0 : 1; - } - } + $parent_category = $grade_category->get_parent_category(); + foreach ($grade_item->get_record_data() as $key => $value) { $category->{"grade_item_$key"} = $value; } + $decimalpoints = $grade_item->get_decimals(); + + $category->grade_item_grademax = format_float($category->grade_item_grademax, $decimalpoints); + $category->grade_item_grademin = format_float($category->grade_item_grademin, $decimalpoints); + $category->grade_item_gradepass = format_float($category->grade_item_gradepass, $decimalpoints); + $category->grade_item_multfactor = format_float($category->grade_item_multfactor, 4); + $category->grade_item_plusfactor = format_float($category->grade_item_plusfactor, 4); + + if (!$parent_category) { + // keep as is + } else if ($parent_category->aggregation == GRADE_AGGREGATE_SUM or $parent_category->aggregation == GRADE_AGGREGATE_WEIGHTED_MEAN2) { + $category->grade_item_aggregationcoef = $category->grade_item_aggregationcoef == 0 ? 0 : 1; + } else { + $category->grade_item_aggregationcoef = format_float($category->grade_item_aggregationcoef, 4); + } + } else { $heading = get_string('newcategory', 'grades'); $grade_category = new grade_category(array('courseid'=>$courseid), false); @@ -178,14 +191,6 @@ if ($mform->is_cancelled()) { $grade_category->set_parent($data->parentcategory, 'gradebook'); } - // update agg coef if needed - if (isset($data->aggregationcoef)) { - $data->aggregationcoef = unformat_float($data->aggregationcoef); - $grade_item = $grade_category->load_grade_item(); - $grade_item->aggregationcoef = $data->aggregationcoef; - $grade_item->update(); - } - redirect($returnurl); } diff --git a/grade/edit/tree/category_form.php b/grade/edit/tree/category_form.php index d9e4cf1a46..ed3d9d352c 100644 --- a/grade/edit/tree/category_form.php +++ b/grade/edit/tree/category_form.php @@ -381,7 +381,7 @@ class edit_category_form extends moodleform { // no parent header for course category - if (!$mform->elementExists('aggregationcoef') and !$mform->elementExists('parentcategory')) { + if (!$mform->elementExists('parentcategory')) { $mform->removeElement('headerparent'); }