diff -Naur moodle197a/grade/report/grader/lib.php moodle197b/grade/report/grader/lib.php --- moodle197a/grade/report/grader/lib.php 2009-11-26 02:22:06.000000000 -0600 +++ moodle197b/grade/report/grader/lib.php 2009-12-11 17:00:18.000000000 -0600 @@ -200,6 +200,23 @@ $finalgrade = $postedvalue; } } else { + // HACK: bob puffer to allow calculating grades from input letters + $context = get_context_instance(CONTEXT_COURSE, $grade_item->courseid); + if ($letters = grade_get_letters($context)) { + unset($lastitem); + foreach ($letters as $used=>$letter) { + if (strtoupper($postedvalue) == $letter) { + if (isset($lastitem)) { + $postedvalue = $lastitem; + } else { + $postedvalue = $grade_item->grademax; + } + break; + } else { + $lastitem = $used - .01; + } + } + } // END OF HACK $finalgrade = unformat_float($postedvalue); }