Fixing update_db_course function see #4722

skala
Julio Montoya 13 years ago
parent 905de2cfe6
commit 13189c68f2
  1. 5
      main/install/update-db-1.8.8-1.9.0.inc.php
  2. 36
      main/webservices/registration.soap.php
  3. 44
      tests/main/announcements/announcements.inc.test.php
  4. 26
      tests/main/inc/lib/add_course.lib.inc.test.php

@ -235,13 +235,12 @@ if (defined('SYSTEM_INSTALLATION')) {
}
Database::select_db($dbNameForm);
}
}
}
//Adds the c_XXX courses tables see #3910
require_once api_get_path(LIBRARY_PATH).'add_course.lib.inc.php';
global $_configuration;
update_Db_course();
create_course_tables();
$prefix = '';
if ($singleDbForm) {

@ -2044,7 +2044,7 @@ function WSCreateCourse($params) {
$orig_course_id_value[] = $course_param['original_course_id_value'];
$visibility = null;
if($course_param['visibility'] && $course_param['visibility'] >= 0 && $course_param['visibility'] <= 3) {
if ($course_param['visibility'] && $course_param['visibility'] >= 0 && $course_param['visibility'] <= 3) {
$visibility = $course_param['visibility'];
}
$extra_list = $course_param['extra'];
@ -2236,7 +2236,7 @@ function WSCreateCourseByTitle($params) {
$results = array();
$orig_course_id_value = array();
foreach($courses_params as $course_param) {
foreach ($courses_params as $course_param) {
$title = $course_param['title'];
$category_code = 'LANG'; // TODO: A hard-coded value.
@ -2305,23 +2305,27 @@ function WSCreateCourseByTitle($params) {
$sql_check = sprintf('SELECT * FROM '.$table_course.' WHERE visual_code = "%s"', Database :: escape_string($wanted_code));
$result_check = Database::query($sql_check); // I don't know why this api function doesn't work...
if (Database::num_rows($result_check) < 1) {
if (sizeof($keys)) {
$visual_code = $keys['currentCourseCode'];
$code = $keys['currentCourseId'];
$db_name = $keys['currentCourseDbName'];
$directory = $keys['currentCourseRepository'];
$expiration_date = time() + $firstExpirationDelay;
prepare_course_repository($directory, $code);
update_Db_course($db_name);
$pictures_array = fill_course_repository($directory);
fill_Db_course($db_name, $directory, $course_language, $pictures_array);
$return = register_course($code, $visual_code, $directory, $db_name, $tutor_name, $category_code, $title, $course_language, api_get_user_id(), $expiration_date);
$params = array();
$params['title'] = $title;
$params['wanted_code'] = $wanted_code;
$params['category_code'] = $category_code;
$params['tutor_name'] = $tutor_name;
$params['course_language'] = $course_language;
$params['user_id'] = api_get_user_id();
$params['visibility'] = $visibility;
$course_info = create_course($params);
if (!empty($course_info)) {
$course_code = $course_info['code'];
// Save new fieldlabel into course_field table.
$field_id = CourseManager::create_course_extra_field($original_course_id_name, 1, $original_course_id_name);
// Save the external system's id into user_field_value table.
$res = CourseManager::update_course_extra_field_value($code, $original_course_id_name, $original_course_id_value);
$res = CourseManager::update_course_extra_field_value($course_code, $original_course_id_name, $original_course_id_value);
if (is_array($extra_list) && count($extra_list) > 0) {
foreach ($extra_list as $extra) {
@ -2330,11 +2334,11 @@ function WSCreateCourseByTitle($params) {
// Save new fieldlabel into course_field table.
$field_id = CourseManager::create_course_extra_field($extra_field_name, 1, $extra_field_name);
// Save the external system's id into course_field_value table.
$res = CourseManager::update_course_extra_field_value($code, $extra_field_name, $extra_field_value);
$res = CourseManager::update_course_extra_field_value($course_code, $extra_field_name, $extra_field_value);
}
}
}
$results[] = $code;
$results[] = $course_code;
continue;
} else {

@ -11,50 +11,6 @@ class TestAnnouncements extends UnitTestCase {
function TestAnnouncements(){
$this->UnitTestCase('Displays one specific announcement test');
}
/*public function Testdisplay_announcement(){
global $_user, $dateFormatLong, $_course;
global $error_msg;
ob_start();
//create course
$courseSysCode= '142';
$courseScreenCode='142';
$courseRepository='142';
$courseDbName='dokeos_142';
$titular='R. F. Wolfgan';
$category='1';
$title='prueba111';
$course_language='english';
$uidCreator='1';
global $course_code;
$course_code = $courseSysCode;
prepare_course_repository($courseRepository,$courseSysCode);
update_Db_course($courseDbName);
$pictures_array=fill_course_repository($courseRepository);
fill_Db_course($courseDbName, $courseRepository, $course_language,$pictures_array);
$res1 = register_course($courseSysCode, $courseScreenCode, $courseRepository, $courseDbName, $titular, $category, $title, $course_language, $uidCreator, $expiration_date = "", $teachers=array());
$_course = api_get_course_info($courseSysCode);
// display announcement in the course added
$announcements_id= 1;
$res2 = display_announcement($announcements_id);
ob_end_clean();
$this->assertTrue(is_numeric($res1));
$res3 = CourseManager::delete_course($courseSysCode);
//var_dump($res1);
//var_dump($res2);
}
public function Testshow_to_form(){
$to_already_selected = "";
$_SESSION['_cid'] = 'CURSO1';
$res = show_to_form($to_already_selected);
$this->assertTrue(is_null($res));
//var_dump($res);
}*/
public function Testconstruct_not_selected_select_form(){
$courseSysCode= '123';

@ -69,31 +69,7 @@ class TestAddCourse extends UnitTestCase {
$res = define_course_keys(generate_course_code($wantedCode), null, null, null,null, null);
$this->assertTrue($res);
}
/* // 26 excepciones
function TestPrepareCourseRepository(){
//umask(0); // This function is not thread-safe.
$perm = '0777';
$courseRepository = 'C16';
$courseId = 'COD16';
$res = prepare_course_repository($courseRepository, $courseId);
$res1 = CourseManager::delete_course('C16');
$this->assertTrue($res===0);
}
// Problemas con este archivo - falta analizar esta función
function TestUpdateDbCourse(){
global $_configuration;
$dbcourse = array('courseDbName'=> 'COD16');
$res = update_Db_course($dbcourse['courseDbName']);
$this->assertTrue($res===0);
//var_dump($res);
}
*/
function TestBrowseFolders(){
$browse = array('path'=>'','file'=>'','media'=>'');
$res = browse_folders($browse['path'], $browse['files'],$browse['media']);

Loading…
Cancel
Save