Removing old code to add/edit sessions

skala
Julio Montoya 13 years ago
parent 7c2623633e
commit faa0c0baee
  1. 2
      main/inc/lib/main_api.lib.php
  2. 44
      main/inc/lib/sessionmanager.lib.php
  3. 3
      main/inc/lib/tracking.lib.php
  4. 37
      main/webservices/webservice_session.php
  5. 50
      tests/main/inc/lib/sessionmanager.lib.test.php

@ -1859,7 +1859,7 @@ function api_get_session_visibility($session_id, $course_code = null, $ignore_vi
//if access_end_date is set
if (!empty($row['access_end_date']) && $row['access_end_date'] != '0000-00-00 00:00:00') {
//only if date_start said that it was ok
//only if access_end_date said that it was ok
if ($visibility == SESSION_AVAILABLE) {
$visibility = $row['visibility'];

@ -132,6 +132,7 @@ class SessionManager {
* @todo use an array to replace all this parameters or use the model.lib.php ...
* @return mixed Session ID on success, error message otherwise
**/
/*
public static function create_session($sname,$syear_start,$smonth_start,$sday_start,$syear_end,$smonth_end,$sday_end,$snb_days_acess_before,$snb_days_acess_after, $nolimit,$coach_username, $id_session_category,$id_visibility, $start_limit = true, $end_limit = true, $fix_name = false) {
global $_configuration;
@ -228,16 +229,7 @@ class SessionManager {
$session_id = Database::insert_id();
if (!empty($session_id)) {
/*
Sends a message to the user_id = 1
$user_info = api_get_user_info(1);
$complete_name = $user_info['firstname'].' '.$user_info['lastname'];
$subject = api_get_setting('siteName').' - '.get_lang('ANewSessionWasCreated');
$message = get_lang('ANewSessionWasCreated')." <br /> ".get_lang('NameOfTheSession').' : '.$name;
api_mail_html($complete_name, $user_info['email'], $subject, $message);
*
*/
//Adding to the correct URL
$access_url_id = api_get_current_access_url_id();
UrlManager::add_session_to_url($session_id,$access_url_id);
@ -251,6 +243,7 @@ class SessionManager {
}
}
*/
function session_name_exists($session_name) {
$session_name = Database::escape_string($session_name);
$result = Database::fetch_array(Database::query("SELECT COUNT(*) as count FROM ".Database::get_main_table(TABLE_MAIN_SESSION)." WHERE name = '$session_name' "));
@ -455,6 +448,7 @@ class SessionManager {
* @return $id;
* The parameter id is a primary key
**/
/*
public static function edit_session ($id,$name,$year_start,$month_start,$day_start,$year_end,$month_end,$day_end,$nb_days_acess_before,$nb_days_acess_after,$nolimit,$id_coach, $id_session_category, $id_visibility, $start_limit = true, $end_limit = true) {
global $_user;
$name=trim(stripslashes($name));
@ -537,6 +531,7 @@ class SessionManager {
}
}
}
*/
/**
* Delete session
* @author Carlos Vargas from existing code
@ -1354,14 +1349,14 @@ class SessionManager {
$return_array = array();
$sql_query = " SELECT s.id, s.name, s.nbr_courses, s.date_start, s.date_end, u.firstname, u.lastname, sc.name as category_name, s.promotion_id
$sql_query = " SELECT s.id, s.name, s.nbr_courses, s.access_start_date, s.access_end_date, u.firstname, u.lastname, sc.name as category_name, s.promotion_id
FROM $session_table s
INNER JOIN $user_table u ON s.id_coach = u.user_id
INNER JOIN $table_access_url_rel_session ar ON ar.session_id = s.id
LEFT JOIN $session_category_table sc ON s.session_category_id = sc.id
WHERE ar.access_url_id = $access_url_id ";
if (count($conditions)>0) {
if (count($conditions) > 0) {
$sql_query .= ' AND ';
foreach ($conditions as $field=>$value) {
$field = Database::escape_string($field);
@ -1784,29 +1779,10 @@ class SessionManager {
*/
public function copy_session($id, $copy_courses = true, $copy_users = true, $create_new_courses = false, $set_exercises_lp_invisible = false) {
$id = intval($id);
$s = self::fetch($id);
$s['year_start'] = substr($s['date_start'],0,4);
$s['month_start'] = substr($s['date_start'],5,2);
$s['day_start'] = substr($s['date_start'],8,2);
$s['year_end'] = substr($s['date_end'],0,4);
$s['month_end'] = substr($s['date_end'],5,2);
$s['day_end'] = substr($s['date_end'],8,2);
$consider_start = true;
if ($s['year_start'].'-'.$s['month_start'].'-'.$s['day_start'] == '0000-00-00') {
$consider_start = false;
}
$consider_end = true;
if ($s['year_end'].'-'.$s['month_end'].'-'.$s['day_end'] == '0000-00-00') {
$consider_end = false;
}
$sid = self::create_session($s['name'].' '.get_lang('Copy'),
$s['year_start'], $s['month_start'], $s['day_start'],
$s['year_end'],$s['month_end'],$s['day_end'],
$s['nb_days_acess_before_beginning'],$s['nb_days_acess_after_end'],
false,(int)$s['id_coach'], $s['session_category_id'],
(int)$s['visibility'],$consider_start, $consider_end, true);
$params = self::fetch($id);
$params['name'] = $params['name'].' '.get_lang('Copy');
$sid = self::add($params);
if (!is_numeric($sid) || empty($sid)) {
return false;
}

@ -1307,8 +1307,7 @@ class Tracking {
*/
public static function get_sessions_coached_by_user($coach_id) {
// table definition
$tbl_session = Database :: get_main_table(TABLE_MAIN_SESSION);
$tbl_session_course = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE);
$tbl_session = Database :: get_main_table(TABLE_MAIN_SESSION);
$tbl_session_course_user = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
// protect datas

@ -31,7 +31,7 @@ class WSSession extends WS {
* @param array Array of extra fields
* @return mixed Generated id in case of success, WSError otherwise
*/
protected function createSessionHelper($name, $start_date, $end_date, $nb_days_access_before, $nb_days_access_after, $nolimit, $visibility, $user_id_field_name, $user_id_value, $session_id_field_name, $session_id_value, $extras) {
protected function createSessionHelper($name, $start_date, $end_date, $coach_access_start_date, $coach_access_end_date, $nolimit, $visibility, $user_id_field_name, $user_id_value, $session_id_field_name, $session_id_value, $extras) {
// Verify that coach exists and get its id
$user_id = $this->getUserId($user_id_field_name, $user_id_value);
if($user_id instanceof WSError) {
@ -47,7 +47,17 @@ class WSSession extends WS {
$ed_element = intval($ed_element);
}
// Try to create the session
$session_id = SessionManager::create_session($name, $start_date_array[0], $start_date_array[1], $start_date_array[2], $end_date_array[0], $end_date_array[1], $end_date_array[2], (int)$nb_days_access_before, (int)$nb_days_access_after, (int)$nolimit, $user_id, 0, (int)$visibility);
$params = array(
'name' => $name,
'access_start_date' => $start_date,
'access_end_date' => $end_date,
'coach_access_start_date' => $coach_access_start_date,
'coach_access_end_date' => $coach_access_end_date,
'visibility' => $visibility
);
$session_id = SessionManager::add($params);
if(!is_int($session_id)) {
return new WSError(301, 'Could not create the session');
} else {
@ -153,7 +163,7 @@ class WSSession extends WS {
* @param array Array of extra fields
* @return mixed True on success, WSError otherwise
*/
protected function editSessionHelper($name, $start_date, $end_date, $nb_days_access_before, $nb_days_access_after, $nolimit, $visibility, $user_id_field_name, $user_id_value, $session_id_field_name, $session_id_value, $extras) {
protected function editSessionHelper($name, $start_date, $end_date, $coach_access_start_date, $coach_access_end_date, $nolimit, $visibility, $user_id_field_name, $user_id_value, $session_id_field_name, $session_id_value, $extras) {
$session_id = $this->getSessionId($session_id_field_name, $session_id_value);
if($session_id instanceof WSError) {
return $session_id;
@ -163,16 +173,17 @@ class WSSession extends WS {
if($user_id instanceof WSError) {
return $user_id;
}
// Build the date
$start_date_array = explode('-', $start_date);
foreach($start_date_array as &$sd_element) {
$sd_element = intval($sd_element);
}
$end_date_array = explode('-', $end_date);
foreach($end_date_array as &$ed_element) {
$ed_element = intval($ed_element);
}
$result_id = SessionManager::edit_session($session_id, $name, $start_date_array[0], $start_date_array[1], $start_date_array[2], $end_date_array[0], $end_date_array[1], $end_date_array[2], (int)$nb_days_access_before, (int)$nb_days_access_after, (int)$nolimit, $user_id, 0, (int)$visibility);
$params = array(
'id' => $session_id,
'name' => $name,
'access_start_date' => $start_date,
'access_end_date' => $end_date,
'coach_access_start_date' => $coach_access_start_date,
'coach_access_end_date' => $coach_access_end_date,
'visibility' => $visibility
);
$result_id = SessionManager::update($params);
if(!is_int($result_id)) {
return new WSError(302, 'Could not edit the session');
} else {

@ -20,32 +20,8 @@ class TestSessionManager extends UnitTestCase {
ob_end_clean();
//var_dump($res);
}
function testcreate_session() {
global $_user;
$sname='';
$syear_start='';
$smonth_start='';
$sday_start='';
$syear_end='';
$smonth_end='';
$sday_end='';
$snb_days_acess_before='';
$snb_days_acess_after='';
$nolimit='';
$coach_username='';
$id_session_category='';
$id_visibility='';
$id_session=Database::insert_id();
ob_start();
$res=SessionManager::create_session($sname,$syear_start,$smonth_start,$sday_start,$syear_end,$smonth_end,$sday_end,$snb_days_acess_before,$snb_days_acess_after,$nolimit,$coach_username,$id_session_category,$id_visibility);
$this->assertTrue(is_numeric($id_session));
$this->assertTrue(is_string($res));
ob_end_clean();
//var_dump($id_session);
}
function testcreate_session_extra_field() {
function testcreate_session_extra_field() {
$fieldvarname='';
$fieldtype='';
$fieldtitle='';
@ -71,27 +47,7 @@ class TestSessionManager extends UnitTestCase {
}
*/
function testedit_session() {
global $_user;
$id=1;
$name='';
$year_start='';
$month_start='';
$day_start='';
$year_end='';
$month_end='';
$day_end='';
$nb_days_acess_before='';
$nb_days_acess_after='';
$nolimit='';
$id_coach='';
$id_session_category='';
$id_visibility='';
$res=SessionManager::edit_session($id,$name,$year_start,$month_start,$day_start,$year_end,$month_end,$day_end,$nb_days_acess_before,$nb_days_acess_after,$nolimit,$id_coach, $id_session_category, $id_visibility);
$this->assertTrue(is_numeric($id));
$this->assertTrue(is_string($res));
//var_dump($id);
}
function testget_session_by_name() {
$session_name='';

Loading…
Cancel
Save