MDL-12282 - Numerical question type - the units are displayed on the editing form with a stupidly large number of decimal places. Merged from MOODLE_18_STABLE.

This commit is contained in:
tjhunt 2007-11-20 16:57:22 +00:00
parent 987c5893ac
commit b4d7d27cea
2 changed files with 8 additions and 4 deletions

View File

@ -62,7 +62,7 @@ class question_edit_numerical_form extends question_edit_form {
$mform->setType('unit', PARAM_NOTAGS);
$repeated[] =& $mform->createElement('text', 'multiplier', get_string('multiplier', 'quiz'));
$mform->setType('multiplier', PARAM_NOTAGS);
$mform->setType('multiplier', PARAM_NUMBER);
if (isset($this->question->options)){
$countunits = count($this->question->options->units);

View File

@ -60,12 +60,16 @@ class question_numerical_qtype extends question_shortanswer_qtype {
}
function get_numerical_units(&$question) {
if ($question->options->units = get_records('question_numerical_units',
if ($units = get_records('question_numerical_units',
'question', $question->id, 'id ASC')) {
$question->options->units = array_values($question->options->units);
$units = array_values($question->options->units);
} else {
$question->options->units = array();
$units = array();
}
foreach ($units as $key => $unit) {
$units[$key]->multiplier = clean_param($unit->multiplier, PARAM_NUMBER);
}
$question->options->units = $units;
return true;
}