Fixing the gradebook/grade model form

skala
Julio Montoya 13 years ago
parent 421c08008f
commit 5a0d369069
  1. 8
      main/gradebook/index.php
  2. 3
      main/gradebook/lib/fe/catform.class.php
  3. 16
      main/inc/lib/grade_model.lib.php

@ -837,13 +837,13 @@ if (isset($first_time) && $first_time==1 && api_is_allowed_to_edit(null,true)) {
//Getting grade models
$obj = new GradeModel();
$grade_models = $obj->get_all();
$grade_model_id = $cats[0]->get_grade_model_id();
$grade_model_id = $cats[0]->get_grade_model_id();
//No children
if (count($cats) == 1 && empty($grade_model_id)) {
if ( (count($cats) == 1 && empty($grade_model_id)) || (count($cats) == 1 && $grade_model_id != -1) ) {
if (!empty($grade_models)) {
$form_grade = new FormValidator('grade_model_settings');
$obj->fill_grade_model_select_in_form($form_grade, 'grade_model_id');
$obj->fill_grade_model_select_in_form($form_grade, 'grade_model_id', $grade_model_id);
$form_grade->addElement('style_submit_button', 'submit', get_lang('Save'), 'class="save"');
if ($form_grade->validate()) {

@ -200,7 +200,8 @@ class CatForm extends FormValidator {
//Getting grade models
$obj = new GradeModel();
$obj->fill_grade_model_select_in_form($this, 'grade_model_id');
$obj->fill_grade_model_select_in_form($this, 'grade_model_id', $this->category_object->get_grade_model_id());
/*
$grade_models = $obj->get_all();
$options = array(-1 => get_lang('None'));

@ -218,7 +218,7 @@ class GradeModel extends Model {
//event_system(LOG_CAREER_DELETE, LOG_CAREER_ID, $id, api_get_utc_datetime(), api_get_user_id());
}
public function fill_grade_model_select_in_form(&$form, $name = 'gradebook_model_id') {
public function fill_grade_model_select_in_form(&$form, $name = 'gradebook_model_id', $default_value = null) {
if (api_get_setting('gradebook_enable_grade_model') == 'false') {
return false;
}
@ -232,8 +232,18 @@ class GradeModel extends Model {
}
}
$form->addElement('select', $name, get_lang('GradeModel'), $grade_model_options);
$default = api_get_setting('gradebook_default_grade_model_id');
$default_platform_setting = api_get_setting('gradebook_default_grade_model_id');
$default = -1;
if ($default_platform_setting == -1) {
if (!empty($default_value)) {
$default = $default_value;
}
} else {
$default = $default_platform_setting;
}
if (!empty($default) && $default != '-1') {
$form->setDefaults(array($name => $default));
}

Loading…
Cancel
Save