Adds an empty evaluation when creating a course see BT#4875

skala
Julio Montoya 14 years ago
parent f5a9f57f57
commit eef5d3f5f6
  1. 12
      main/gradebook/lib/be/evaluation.class.php
  2. 7
      main/gradebook/lib/gradebook_functions.inc.php
  3. 20
      main/inc/lib/course.lib.php
  4. 15
      tests/migrate/migration.custom.class.php

@ -246,16 +246,12 @@ class Evaluation implements GradebookItem
if (empty($this->type)) {
$this->type = 'evaluation';
}
$sql .= ", '".api_get_utc_datetime()."'";
$sql .= ',\''.Database::escape_string($this->type).'\'';
$sql .= ")";
$sql .= ", '".api_get_utc_datetime()."'";
$sql .= ',\''.Database::escape_string($this->type).'\'';
$sql .= ")";
Database::query($sql);
$this->set_id(Database::insert_id());
}
else {
} else {
die('Error in Evaluation add: required field empty');
}
}

@ -614,7 +614,7 @@ function get_user_certificate_content($user_id, $course_code, $is_preview = fals
return array('content' => $new_content_html, 'variables'=>$content_html['variables']);
}
function create_default_course_gradebook( $course_code = null, $gradebook_model_id = 0) {
function create_default_course_gradebook($course_code = null, $gradebook_model_id = 0) {
if (api_is_allowed_to_edit(true, true)) {
if (!isset($course_code) || empty($course_code)) {
$course_code = api_get_course_id();
@ -647,11 +647,8 @@ function create_default_course_gradebook( $course_code = null, $gradebook_model_
$cat->set_parent_id(0);
$default_weight_setting = api_get_setting('gradebook_default_weight');
$default_weight = isset($default_weight_setting) && !empty($default_weight_setting) ? $default_weight_setting : 100;
$cat->set_weight($default_weight);
$cat->set_weight($default_weight);
$cat->set_grade_model_id($gradebook_model_id);
$cat->set_visible(0);
$cat->add();
$category_id = $cat->get_id();

@ -128,6 +128,24 @@ class CourseManager {
self::prepare_course_repository($course_info['directory'], $course_info['code']);
self::fill_db_course($course_id, $course_info['directory'], $course_info['course_language'], $params['exemplary_content']);
//Create an empty gradebook
if (isset($params['create_gradebook_evaluation']) && $params['create_gradebook_evaluation'] == true) {
require_once api_get_path(SYS_CODE_PATH).'gradebook/lib/gradebook_functions.inc.php';
$category_id = create_default_course_gradebook($course_info['code']);
if ($category_id && isset($params['gradebook_params'])) {
$eval = new Evaluation();
$eval->set_name($params['gradebook_params']['name']);
$eval->set_user_id($params['gradebook_params']['user_id']);
$eval->set_course_code($course_info['code']);
$eval->set_category_id($category_id);
$eval->set_weight($params['gradebook_params']['weight']);
$eval->set_max($params['gradebook_params']['max']);
$eval->set_visible(0);
$eval->add();
}
}
if (api_get_setting('gradebook_enable_grade_model') == 'true') {
//Create gradebook_category for the new course and add a gradebook model for the course
if (isset($params['gradebook_model_id']) && !empty($params['gradebook_model_id']) && $params['gradebook_model_id'] != '-1') {
@ -135,6 +153,8 @@ class CourseManager {
create_default_course_gradebook($course_info['code'], $params['gradebook_model_id']);
}
}
return $course_info;
}
} else {

@ -11,6 +11,8 @@
* during the migration
*/
class MigrationCustom {
public $default_admin_id = 1;
/**
* The only required method is the 'none' method, which will not trigger
@ -131,7 +133,7 @@ class MigrationCustom {
}
public function get_real_teacher_id($data, &$omigrate, $row_data) {
$default_teacher_id = 1;
$default_teacher_id = $this->default_admin_id;
//error_log('get_real_teacher_id');
//error_log(print_r($data, 1));
//error_log(print_r($omigrate['users_empleado'], 1));
@ -272,7 +274,16 @@ class MigrationCustom {
public function create_course($data) {
//Fixes wrong wanted codes
$data['wanted_code'] = str_replace(array('-', '_'), '000', $data['wanted_code']);
$data['wanted_code'] = str_replace(array('-', '_'), '000', $data['wanted_code']);
//Creates an evaluation
$data['create_gradebook_evaluation'] = true;
$data['gradebook_params'] = array(
'name' => 'General',
'user_id' => $this->default_admin_id,
'weight' => '20',
'max' => '20'
);
return CourseManager::create_course($data);
}
public function create_session($data) {

Loading…
Cancel
Save