diff --git a/main/inc/lib/htmlpurifier/configdoc/index.html b/main/inc/lib/htmlpurifier/configdoc/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/configdoc/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/configdoc/styles/index.html b/main/inc/lib/htmlpurifier/configdoc/styles/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/configdoc/styles/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/extras/ConfigDoc/index.html b/main/inc/lib/htmlpurifier/extras/ConfigDoc/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/extras/ConfigDoc/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/extras/FSTools/index.html b/main/inc/lib/htmlpurifier/extras/FSTools/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/extras/FSTools/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/extras/index.html b/main/inc/lib/htmlpurifier/extras/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/extras/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/index.html b/main/inc/lib/htmlpurifier/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/CSS/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/CSS/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/CSS/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/HTML/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/HTML/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/HTML/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/URI/Email/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/URI/Email/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/URI/Email/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/URI/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/URI/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/URI/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrDef/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrTransform/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrTransform/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/AttrTransform/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/ChildDef/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ChildDef/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ChildDef/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/Builder/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/Builder/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/Builder/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/Interchange/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/Interchange/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/Interchange/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/schema/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/schema/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/ConfigSchema/schema/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/Decorator/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/Decorator/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/Decorator/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/DefinitionCache/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Encoder.php b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Encoder.php index 2b3140caaf..cc028788b5 100644 --- a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Encoder.php +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Encoder.php @@ -288,6 +288,17 @@ class HTMLPurifier_Encoder restore_error_handler(); return $str; } + // Added by Ivan Tcholakov, 25-JUN-2010. + // Using a custom encoding conversion function from Chamilo LMS, + // for some encodings it works even without iconv or mbstring installed. + elseif (function_exists('api_is_encoding_supported')) { + if (api_is_encoding_supported($encoding)) { + $str = api_utf8_encode($str, $encoding); + restore_error_handler(); + return $str; + } + } + // trigger_error('Encoding not supported, please install iconv', E_USER_ERROR); } @@ -323,6 +334,17 @@ class HTMLPurifier_Encoder restore_error_handler(); return $str; } + // Added by Ivan Tcholakov, 25-JUN-2010. + // Using a custom encoding conversion function from Chamilo LMS, + // for some encodings it works even without iconv or mbstring installed. + elseif (function_exists('api_is_encoding_supported')) { + if (api_is_encoding_supported($encoding)) { + $str = api_utf8_decode($str, $encoding); + restore_error_handler(); + return $str; + } + } + // trigger_error('Encoding not supported', E_USER_ERROR); } diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/EntityLookup/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/EntityLookup/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/EntityLookup/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Filter/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Filter/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Filter/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/HTMLModule/Tidy/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/HTMLModule/Tidy/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/HTMLModule/Tidy/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/HTMLModule/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/HTMLModule/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/HTMLModule/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Injector/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Injector/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Injector/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/classes/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/classes/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/classes/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/messages/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/messages/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Language/messages/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Lexer/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Lexer/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Lexer/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Printer/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Printer/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Printer/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Strategy/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Strategy/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Strategy/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/TagTransform/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/TagTransform/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/TagTransform/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/Token/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Token/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/Token/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/URIFilter/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/URIFilter/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/URIFilter/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/URIScheme/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/URIScheme/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/URIScheme/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/VarParser/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/VarParser/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/VarParser/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/HTMLPurifier/index.html b/main/inc/lib/htmlpurifier/library/HTMLPurifier/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/HTMLPurifier/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/library/index.html b/main/inc/lib/htmlpurifier/library/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/library/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/maintenance/index.html b/main/inc/lib/htmlpurifier/maintenance/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/maintenance/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/plugins/index.html b/main/inc/lib/htmlpurifier/plugins/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/plugins/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/plugins/phorum/htmlpurifier/index.html b/main/inc/lib/htmlpurifier/plugins/phorum/htmlpurifier/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/plugins/phorum/htmlpurifier/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/plugins/phorum/index.html b/main/inc/lib/htmlpurifier/plugins/phorum/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/plugins/phorum/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/htmlpurifier/plugins/phorum/settings/index.html b/main/inc/lib/htmlpurifier/plugins/phorum/settings/index.html new file mode 100644 index 0000000000..aa7b9c934b --- /dev/null +++ b/main/inc/lib/htmlpurifier/plugins/phorum/settings/index.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/main/inc/lib/sessionmanager.lib.php b/main/inc/lib/sessionmanager.lib.php index 54fc0057e5..6e6e93492f 100755 --- a/main/inc/lib/sessionmanager.lib.php +++ b/main/inc/lib/sessionmanager.lib.php @@ -467,21 +467,6 @@ class SessionManager { $tbl_session_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_USER); $tbl_session = Database::get_main_table(TABLE_MAIN_SESSION); - // Get the list of courses related to this session - $course_list = SessionManager::get_course_list_by_session_id($session_id); - if(empty($course_list)) { - return false; - } - foreach($course_list as $course) { - $course_code = $course['code']; - // Delete user from course - Database::query("DELETE FROM $tbl_session_rel_course_rel_user WHERE id_session='$session_id' AND course_code='$course_code' AND id_user='$user_id'"); - if(Database::affected_rows()) { - // Update number of users in this relation - Database::query("UPDATE $tbl_session_rel_course SET nbr_users=nbr_users - 1 WHERE id_session='$session_id' AND course_code='$course_code'"); - } - } - $delete_sql = "DELETE FROM $tbl_session_rel_user WHERE id_session = '$session_id' AND id_user ='$user_id' AND relation_type<>".SESSION_RELATION_TYPE_RRHH.""; Database::query($delete_sql); $return = Database::affected_rows(); @@ -490,6 +475,20 @@ class SessionManager { $update_sql = "UPDATE $tbl_session SET nbr_users= nbr_users - $return WHERE id='$session_id' "; Database::query($update_sql); + // Get the list of courses related to this session + $course_list = SessionManager::get_course_list_by_session_id($session_id); + if(!empty($course_list)) { + foreach($course_list as $course) { + $course_code = $course['code']; + // Delete user from course + Database::query("DELETE FROM $tbl_session_rel_course_rel_user WHERE id_session='$session_id' AND course_code='$course_code' AND id_user='$user_id'"); + if(Database::affected_rows()) { + // Update number of users in this relation + Database::query("UPDATE $tbl_session_rel_course SET nbr_users=nbr_users - 1 WHERE id_session='$session_id' AND course_code='$course_code'"); + } + } + } + return true; } @@ -1155,11 +1154,7 @@ class SessionManager { $tbl_course = Database::get_main_table(TABLE_MAIN_COURSE); $tbl_session_rel_course = Database::get_main_table(TABLE_MAIN_SESSION_COURSE); // select the courses - $sql = "SELECT id, code, title,visual_code, nbr_users, db_name - FROM $tbl_course,$tbl_session_rel_course - WHERE course_code = code - AND id_session='$session_id' - ORDER BY title"; + $sql = "SELECT * FROM $tbl_course c INNER JOIN $tbl_session_rel_course src ON c.code = src.course_code WHERE src.id_session = '$session_id' ORDER BY title;"; $result = Database::query($sql); $num_rows = Database::num_rows($result); $courses = array(); diff --git a/main/webservices/webservice_session.php b/main/webservices/webservice_session.php index 0af8807f93..aae4704b76 100644 --- a/main/webservices/webservice_session.php +++ b/main/webservices/webservice_session.php @@ -3,6 +3,7 @@ require_once(dirname(__FILE__).'/../inc/global.inc.php'); $libpath = api_get_path(LIBRARY_PATH); require_once($libpath.'sessionmanager.lib.php'); +require_once($libpath.'course.lib.php'); require_once(dirname(__FILE__).'/webservice.php'); /** @@ -237,7 +238,7 @@ class WSSession extends WS { return $user_id; } else { if($state == 1) { - SessionManager::subscribe_users_to_session($session_id, array($user_id)); + SessionManager::suscribe_users_to_session($session_id, array($user_id)); } else { $result = SessionManager::unsubscribe_user_from_session($session_id, $user_id); if($result == false) { @@ -311,14 +312,15 @@ class WSSession extends WS { return $course_id; } else { if($state == 1) { - SessionManager::add_courses_to_session($session_id, array($course_id)); + $course_code = CourseManager::get_course_code_from_course_id($course_id); + SessionManager::add_courses_to_session($session_id, array($course_code)); return true; } else { $result = SessionManager::unsubscribe_course_from_session($session_id, $course_id); if($result == true) { return true; } else { - return new WSError(304, 'Error subscribing course to session'); + return new WSError(304, 'Error unsubscribing course from session'); } } return true; diff --git a/tests/test_webservices.php b/tests/test_webservices.php index a8f3a48f63..ec1afacab7 100644 --- a/tests/test_webservices.php +++ b/tests/test_webservices.php @@ -61,6 +61,25 @@ class TestSoapWebService extends UnitTestCase { return $course; } + protected function getSessionArray() { + $end_date = date('Y') + 1; + $end_date .= '-'.date('m-d'); + $session = array( + 'name' => 'My session', + 'start_date' => date('Y-m-d'), + 'end_date' => $end_date, + 'nb_days_access_before' => 0, + 'nb_days_access_after' => 0, + 'nolimit' => 0, + 'visibility' => 1, + 'user_id_field_name' => 'chamilo_user_id', + 'user_id_value' => '1', + 'session_id_field_name' => 'chamilo_session_id', + 'session_id_value' => '', + 'extras' => array()); + return $session; + } + protected function soapCall($method, $arguments) { return $this->_client->__soapCall($method, $arguments); } @@ -115,13 +134,13 @@ class TestSoapWebService extends UnitTestCase { $this->soapCall('WSUser.DeleteUser', array('secret_key' => $this->_secret_key, 'user_id_field_name' => 'chamilo_user_id', 'user_id_value' => $result)); } - /*public function testCourseCreation() { + public function testCourseCreation() { $course = $this->getCourseArray(); $result = $this->soapCall('WSCourse.CreateCourse', array_merge(array('secret_key' => $this->_secret_key), $course)); $this->assertIsA($result, 'int'); // Delete course created $this->soapCall('WSCourse.DeleteCourse', array('secret_key' => $this->_secret_key, 'course_id_field_name' => 'chamilo_course_id', 'course_id_value' => $result)); - }*/ + } /*public function testCourseSubscriptionAndUnsubscription() { //$course_id = $this->createCourse(); @@ -138,6 +157,20 @@ class TestSoapWebService extends UnitTestCase { $result = $this->soapCall('WSCourse.ListCourses', array('secret_key' => $this->_secret_key, 'course_id_field_name' => 'chamilo_course_id')); var_dump($result); }*/ + + public function testSessionCreation() { + $session = $this->getSessionArray(); + $result = $this->soapCall('WSSession.CreateSession', array_merge(array('secret_key' => $this->_secret_key), $session)); + $this->assertIsA($result, 'int'); + $this->soapCall('WSSession.DeleteSession', array('secret_key' => $this->_secret_key, 'session_id_field_name' => 'chamilo_session_id', 'session_id_value' => $result)); + } + + /*public function testUserSessionSubscriptionAndUnsubscription() { + $this->soapCall('WSSession.UnsubscribeCourseFromSession', array('secret_key' => $this->_secret_key, 'course_id_field_name' => 'chamilo_course_id', 'course_id_value' => 8, 'session_id_field_name' => 'chamilo_session_id', 'session_id_value' => 3)); + //$this->soapCall('WSSession.UnsubscribeUserFromSession', array('secret_key' => $this->_secret_key, 'user_id_field_name' => 'chamilo_user_id', 'user_id_value' => 38, 'session_id_field_name' => 'chamilo_session_id', 'session_id_value' => 3)); + }*/ + + }