diff --git a/main/admin/ldap_import_students_to_session.php b/main/admin/ldap_import_students_to_session.php
index fddcf4dad1..1239815851 100755
--- a/main/admin/ldap_import_students_to_session.php
+++ b/main/admin/ldap_import_students_to_session.php
@@ -73,7 +73,7 @@ elseif(!empty($annee) && empty($id_session))
echo '';
echo '';
diff --git a/main/admin/user_information.php b/main/admin/user_information.php
index 0dcda04cc8..05f3744c6e 100755
--- a/main/admin/user_information.php
+++ b/main/admin/user_information.php
@@ -204,16 +204,16 @@ if (count($sessions) > 0) {
}
}
- if ($session_item['date_start'] == '0000-00-00') {
- $session_item['date_start'] = null;
+ if ($session_item['access_start_date'] == '0000-00-00') {
+ $session_item['access_start_date'] = null;
}
- if ($session_item['date_end'] == '0000-00-00') {
- $session_item['date_end'] = null;
+ if ($session_item['access_end_date'] == '0000-00-00') {
+ $session_item['access_end_date'] = null;
}
$dates = array_filter(
- array($session_item['date_start'], $session_item['date_end'])
+ array($session_item['access_start_date'], $session_item['access_end_date'])
);
$sessionInformation .= Display::page_subheader(
diff --git a/main/attendance/attendance_controller.php b/main/attendance/attendance_controller.php
index 3b2f80b25c..78e8aa5838 100755
--- a/main/attendance/attendance_controller.php
+++ b/main/attendance/attendance_controller.php
@@ -627,8 +627,8 @@ class AttendanceController
} else {
if (!empty($sessionId)) {
$sessionInfo = api_get_session_info($sessionId);
- $startDate = $sessionInfo['date_start'];
- $endDate = $sessionInfo['date_end'];
+ $startDate = $sessionInfo['access_start_date'];
+ $endDate = $sessionInfo['access_end_date'];
}
}
diff --git a/main/inc/ajax/model.ajax.php b/main/inc/ajax/model.ajax.php
index cdd850df00..afbc15b27a 100755
--- a/main/inc/ajax/model.ajax.php
+++ b/main/inc/ajax/model.ajax.php
@@ -902,12 +902,12 @@ switch ($action) {
$count_users_in_session = count(SessionManager::get_users_by_session($session['id'], 0));
$session_date = array();
- if (!empty($session['date_start']) && $session['date_start'] != '0000-00-00') {
- $session_date[] = get_lang('From').' '.api_format_date($session['date_start'], DATE_FORMAT_SHORT);
+ if (!empty($session['access_start_date']) && $session['access_start_date'] != '0000-00-00') {
+ $session_date[] = get_lang('From').' '.api_format_date($session['access_start_date'], DATE_FORMAT_SHORT);
}
- if (!empty($session['date_end']) && $session['date_end'] != '0000-00-00') {
- $session_date[] = get_lang('Until').' '.api_format_date($session['date_end'], DATE_FORMAT_SHORT);
+ if (!empty($session['access_end_date']) && $session['access_end_date'] != '0000-00-00') {
+ $session_date[] = get_lang('Until').' '.api_format_date($session['access_end_date'], DATE_FORMAT_SHORT);
}
if (empty($session_date)) {
@@ -958,8 +958,8 @@ switch ($action) {
'nbr_courses',
'nbr_users',
'category_name',
- 'date_start',
- 'date_end',
+ 'access_start_date',
+ 'access_end_date',
'coach_name',
'session_active',
'visibility'
diff --git a/main/inc/lib/auth.lib.php b/main/inc/lib/auth.lib.php
index c518d8fd3c..4d2027bc93 100755
--- a/main/inc/lib/auth.lib.php
+++ b/main/inc/lib/auth.lib.php
@@ -552,7 +552,7 @@ class Auth
$userId = api_get_user_id();
$limitFilter = getLimitFilterFromArray($limit);
- $sql = "SELECT s.id, s.name, s.nbr_courses, s.nbr_users, s.date_start, s.date_end, u.lastname, u.firstname, u.username, description, show_description "
+ $sql = "SELECT s.id, s.name, s.nbr_courses, s.nbr_users, s.access_start_date, s.access_end_date, u.lastname, u.firstname, u.username, description, show_description "
. "FROM $sessionTable AS s "
. "INNER JOIN $userTable AS u "
. "ON s.id_coach = u.user_id "
@@ -561,9 +561,9 @@ class Auth
if (!is_null($date)) {
$date = Database::escape_string($date);
- $sql .= "AND ('$date' BETWEEN s.date_start AND s.date_end) "
- . "OR (s.date_end = '0000-00-00') "
- . "OR (s.date_start = '0000-00-00' AND s.date_end != '0000-00-00' AND s.date_end > '$date')";
+ $sql .= "AND ('$date' BETWEEN s.access_start_date AND s.access_end_date) "
+ . "OR (s.access_end_date = '0000-00-00') "
+ . "OR (s.access_start_date = '0000-00-00' AND s.access_end_date != '0000-00-00' AND s.access_end_date > '$date')";
}
// Add limit filter to do pagination
@@ -598,10 +598,10 @@ class Auth
$date = Database::escape_string($date);
$dateFilter = '';
if (!empty($date)) {
- $dateFilter = ' AND ("' . $date . '" BETWEEN s.date_start AND s.date_end) ' .
- 'OR (s.date_end = "0000-00-00") ' .
- 'OR (s.date_start = "0000-00-00" AND ' .
- 's.date_end != "0000-00-00" AND s.date_end > "' . $date . '") ';
+ $dateFilter = ' AND ("' . $date . '" BETWEEN s.access_start_date AND s.access_end_date) ' .
+ 'OR (s.access_end_date = "0000-00-00") ' .
+ 'OR (s.access_start_date = "0000-00-00" AND ' .
+ 's.access_end_date != "0000-00-00" AND s.access_end_date > "' . $date . '") ';
}
$sql = "SELECT COUNT(*) FROM $sessionTable s WHERE 1 = 1 $dateFilter";
$res = Database::query($sql);
diff --git a/main/inc/lib/course.lib.php b/main/inc/lib/course.lib.php
index ff0493e35a..1d438a9069 100755
--- a/main/inc/lib/course.lib.php
+++ b/main/inc/lib/course.lib.php
@@ -1809,7 +1809,7 @@ class CourseManager
if (!empty($date_from) && !empty($date_to)) {
$date_from = Database::escape_string($date_from);
$date_to = Database::escape_string($date_to);
- $sql_query .= " AND s.date_start >= '$date_from' AND s.date_end <= '$date_to'";
+ $sql_query .= " AND s.access_start_date >= '$date_from' AND s.access_end_date <= '$date_to'";
}
if ($session_id != 0) {
@@ -3878,8 +3878,8 @@ class CourseManager
),
)
);
- $date_start = $sess[$course_info['id_session']]['date_start'];
- $date_end = $sess[$course_info['id_session']]['date_end'];
+ $date_start = $sess[$course_info['id_session']]['access_start_date'];
+ $date_end = $sess[$course_info['id_session']]['access_end_date'];
}
if (empty($now)) {
// maybe use api_get_utcdate() here?
@@ -4044,7 +4044,7 @@ class CourseManager
$session['title'] = $course_info['session_name'];
$session_category_id = CourseManager::get_session_category_id_by_session_id($course_info['id_session']);
$session['category'] = $sessioncoach['name'];
- if ($course_info['date_start'] == '0000-00-00') {
+ if ($course_info['access_start_date'] == '0000-00-00') {
//$session['dates'] = get_lang('WithoutTimeLimits');
$session['dates'] = '';
if (api_get_setting('show_session_coach') === 'true') {
@@ -4053,7 +4053,7 @@ class CourseManager
}
$active = true;
} else {
- $session ['dates'] = ' - ' . get_lang('From') . ' ' . $course_info['date_start'] . ' ' . get_lang('To') . ' ' . $course_info['date_end'];
+ $session ['dates'] = ' - ' . get_lang('From') . ' ' . $course_info['access_start_date'] . ' ' . get_lang('To') . ' ' . $course_info['access_end_date'];
if (api_get_setting('show_session_coach') === 'true') {
$session['coach'] = get_lang('GeneralCoach') . ': ' . api_get_person_name($sessioncoach['firstname'],
$sessioncoach['lastname']);
@@ -5515,7 +5515,7 @@ class CourseManager
{
$dateConditional = ($startDate && $endDate) ?
" WHERE session_id IN (SELECT id FROM " . Database::get_main_table(TABLE_MAIN_SESSION) .
- " WHERE date_start = '$startDate' AND date_end = '$endDate')" :
+ " WHERE access_start_date = '$startDate' AND access_end_date = '$endDate')" :
null;
$visibility = ($includeClosed ? '' : 'visibility NOT IN (0, 4) AND ');
diff --git a/main/inc/lib/display.lib.php b/main/inc/lib/display.lib.php
index a387ae2314..0a202f9d3a 100755
--- a/main/inc/lib/display.lib.php
+++ b/main/inc/lib/display.lib.php
@@ -1508,8 +1508,8 @@ class Display
$session['coach'] = '';
$session['dates'] = '';
- if ($session_info['date_end'] == '0000-00-00' &&
- $session_info['date_start'] == '0000-00-00'
+ if ($session_info['access_end_date'] == '0000-00-00' &&
+ $session_info['access_start_date'] == '0000-00-00'
) {
if (api_get_setting('show_session_coach') === 'true') {
$session['coach'] = get_lang('GeneralCoach').': '.api_get_person_name($session_info['firstname'], $session_info['lastname']);
@@ -1536,24 +1536,24 @@ class Display
} else {
$start = $stop = false;
$start_buffer = $stop_buffer = '';
- if ($session_info['date_start'] == '0000-00-00') {
- $session_info['date_start'] = '';
+ if ($session_info['access_start_date'] == '0000-00-00') {
+ $session_info['access_start_date'] = '';
} else {
$start = true;
- $start_buffer = $session_info['date_start'];
- $session_info['date_start'] = get_lang('From').' '.$session_info['date_start'];
+ $start_buffer = $session_info['access_start_date'];
+ $session_info['access_start_date'] = get_lang('From').' '.$session_info['access_start_date'];
}
- if ($session_info['date_end'] == '0000-00-00') {
- $session_info['date_end'] = '';
+ if ($session_info['access_end_date'] == '0000-00-00') {
+ $session_info['access_end_date'] = '';
} else {
$stop = true;
- $stop_buffer = $session_info['date_end'];
- $session_info['date_end'] = get_lang('Until').' '.$session_info['date_end'];
+ $stop_buffer = $session_info['access_end_date'];
+ $session_info['access_end_date'] = get_lang('Until').' '.$session_info['access_end_date'];
}
if ($start && $stop) {
$session['dates'] = Display::tag('i', sprintf(get_lang('FromDateXToDateY'), $start_buffer, $stop_buffer));
} else {
- $session['dates'] = Display::tag('i', $session_info['date_start'].' '.$session_info['date_end']);
+ $session['dates'] = Display::tag('i', $session_info['access_start_date'].' '.$session_info['access_end_date']);
}
if ( api_get_setting('show_session_coach') === 'true' ) {
diff --git a/main/inc/lib/social.lib.php b/main/inc/lib/social.lib.php
index c7af16e674..ffa4d3f70f 100755
--- a/main/inc/lib/social.lib.php
+++ b/main/inc/lib/social.lib.php
@@ -537,14 +537,14 @@ class SocialManager extends UserManager
$session = array();
$session['title'] = $my_course['session_name'];
- if ($my_course['date_start'] == '0000-00-00') {
+ if ($my_course['access_start_date'] == '0000-00-00') {
$session['dates'] = get_lang('WithoutTimeLimits');
if (api_get_setting('show_session_coach') === 'true') {
$session['coach'] = get_lang('GeneralCoach').': '.api_get_person_name($sessioncoach['firstname'], $sessioncoach['lastname']);
}
$active = true;
} else {
- $session ['dates'] = ' - '.get_lang('From').' '.$my_course['date_start'].' '.get_lang('To').' '.$my_course['date_end'];
+ $session ['dates'] = ' - '.get_lang('From').' '.$my_course['access_start_date'].' '.get_lang('To').' '.$my_course['access_end_date'];
if (api_get_setting('show_session_coach') === 'true') {
$session['coach'] = get_lang('GeneralCoach').': '.api_get_person_name($sessioncoach['firstname'], $sessioncoach['lastname']);
}
diff --git a/main/inc/lib/tracking.lib.php b/main/inc/lib/tracking.lib.php
index 8a34a1ee9d..4ea9b8f372 100755
--- a/main/inc/lib/tracking.lib.php
+++ b/main/inc/lib/tracking.lib.php
@@ -2998,8 +2998,8 @@ class Tracking
SELECT DISTINCT
id,
name,
- date_start,
- date_end
+ access_start_date,
+ access_end_date
FROM $tbl_session session INNER JOIN $tbl_session_rel_access_url session_rel_url
ON (session.id = session_rel_url.session_id)
WHERE
@@ -3010,8 +3010,8 @@ class Tracking
SELECT DISTINCT
session.id,
session.name,
- session.date_start,
- session.date_end
+ session.access_start_date,
+ session.access_end_date
FROM $tbl_session as session
INNER JOIN $tbl_session_course_user as session_course_user
ON session.id = session_course_user.session_id AND
@@ -3038,13 +3038,13 @@ class Tracking
if (!empty($sessions)) {
foreach ($sessions as & $session) {
- if ($session['date_start'] == '0000-00-00') {
+ if ($session['access_start_date'] == '0000-00-00') {
$session['status'] = get_lang('SessionActive');
}
else {
- $date_start = explode('-', $session['date_start']);
+ $date_start = explode('-', $session['access_start_date']);
$time_start = mktime(0, 0, 0, $date_start[1], $date_start[2], $date_start[0]);
- $date_end = explode('-', $session['date_end']);
+ $date_end = explode('-', $session['access_end_date']);
$time_end = mktime(0, 0, 0, $date_end[1], $date_end[2], $date_end[0]);
if ($time_start < time() && time() < $time_end) {
$session['status'] = get_lang('SessionActive');
diff --git a/main/inc/lib/usermanager.lib.php b/main/inc/lib/usermanager.lib.php
index 6fff34762b..a7243af6e5 100755
--- a/main/inc/lib/usermanager.lib.php
+++ b/main/inc/lib/usermanager.lib.php
@@ -2272,7 +2272,7 @@ class UserManager
*/
public static function get_sessions_by_category(
$user_id,
- $is_time_over = false,
+ $is_time_over = true,
$ignore_visibility_for_admins = false
) {
// Database Table Definitions
@@ -2290,14 +2290,14 @@ class UserManager
$sql = "SELECT DISTINCT
session.id,
session.name,
- session.date_start,
- session.date_end,
+ session.access_start_date,
+ session.access_end_date,
session_category_id,
session_category.name as session_category_name,
session_category.date_start session_category_date_start,
session_category.date_end session_category_date_end,
- nb_days_access_before_beginning,
- nb_days_access_after_end
+ coach_access_start_date,
+ coach_access_end_date
FROM $tbl_session as session
LEFT JOIN $tbl_session_category session_category
@@ -2319,13 +2319,13 @@ class UserManager
// User portal filters:
if ($is_time_over) {
// History
- if (isset($row['date_end']) && $row['date_end'] != '0000-00-00') {
- if ($row['date_end'].' 23:59:59' > $now) {
+ if (isset($row['access_end_date']) && $row['access_end_date'] != '0000-00-00 00:00:00') {
+ if ($row['access_end_date'] > $now) {
continue;
}
}
- if ($row['date_end'] == '0000-00-00') {
+ if ($row['access_end_date'] == '0000-00-00 00:00:00') {
continue;
}
} else {
@@ -2333,8 +2333,8 @@ class UserManager
if (api_is_allowed_to_create_course()) {
// Teachers can access the session depending in the access_coach date
} else {
- if (isset($row['date_end']) && $row['date_end'] != '0000-00-00') {
- if ($row['date_end'].' 23:59:59' <= $now) {
+ if (isset($row['access_end_date']) && $row['access_end_date'] != '0000-00-00 00:00:00') {
+ if ($row['access_end_date'] <= $now) {
continue;
}
}
@@ -2401,10 +2401,10 @@ class UserManager
$categories[$row['session_category_id']]['sessions'][$row['id']] = array(
'session_name' => $row['name'],
'session_id' => $row['id'],
- 'date_start' => $row['date_start'],
- 'date_end' => $row['date_end'],
- 'nb_days_access_before_beginning' => $row['nb_days_access_before_beginning'],
- 'nb_days_access_after_end' => $row['nb_days_access_after_end'],
+ 'access_start_date' => $row['access_start_date'],
+ 'access_end_date' => $row['access_end_date'],
+ 'coach_access_start_date' => $row['coach_access_start_date'],
+ 'coach_access_end_date' => $row['coach_access_end_date'],
'courses' => $courseList
);
}
@@ -2500,7 +2500,7 @@ class UserManager
// Get the list of sessions where the user is subscribed
// This is divided into two different queries
$sessions = array();
- $sql = "SELECT DISTINCT s.id, name, date_start, date_end
+ $sql = "SELECT DISTINCT s.id, name, access_start_date, access_end_date
FROM $tbl_session_user, $tbl_session s
WHERE (
session_id = s.id AND
@@ -2508,7 +2508,7 @@ class UserManager
relation_type <> ".SESSION_RELATION_TYPE_RRHH."
)
$coachCourseConditions
- ORDER BY date_start, date_end, name";
+ ORDER BY access_start_date, access_end_date, name";
$result = Database::query($sql);
if (Database::num_rows($result)>0) {
@@ -2517,13 +2517,13 @@ class UserManager
}
}
- $sql = "SELECT DISTINCT id, name, date_start, date_end
+ $sql = "SELECT DISTINCT id, name, access_start_date, access_end_date
FROM $tbl_session
WHERE (
id_coach = $user_id
)
$coachCourseConditions
- ORDER BY date_start, date_end, name";
+ ORDER BY access_start_date, access_end_date, name";
$result = Database::query($sql);
if (Database::num_rows($result)>0) {
@@ -2553,8 +2553,8 @@ class UserManager
email, course.course_language l,
1 sort,
category_code user_course_cat,
- date_start,
- date_end,
+ access_start_date,
+ access_end_date,
session.id as session_id,
session.name as session_name
FROM $tbl_session_course_user as session_course_user
@@ -2596,8 +2596,8 @@ class UserManager
course.course_language l,
1 sort,
category_code user_course_cat,
- date_start,
- date_end,
+ access_start_date,
+ access_end_date,
session.id as session_id,
session.name as session_name,
IF((session_course_user.user_id = 3 AND session_course_user.status=2),'2', '5')
diff --git a/main/inc/lib/userportal.lib.php b/main/inc/lib/userportal.lib.php
index bc891a4cf3..618f48ca46 100755
--- a/main/inc/lib/userportal.lib.php
+++ b/main/inc/lib/userportal.lib.php
@@ -1158,10 +1158,10 @@ class IndexManager
}
// Courses inside the current session.
- $date_session_start = $session['date_start'];
- $date_session_end = $session['date_end'];
- $days_access_before_beginning = $session['nb_days_access_before_beginning'];
- $days_access_after_end = $session['nb_days_access_after_end'];
+ $date_session_start = $session['access_start_date'];
+ $date_session_end = $session['access_end_date'];
+ $coachAccessStartDate = $session['coach_access_start_date'];
+ $coachAccessEndDate = $session['coach_access_end_date'];
$session_now = time();
$count_courses_session = 0;
@@ -1174,15 +1174,15 @@ class IndexManager
$is_coach_course = api_is_coach($session_id, $course['real_id']);
$allowed_time = 0;
$dif_time_after = 0;
- if ($date_session_start != '0000-00-00') {
+ if ($date_session_start != '0000-00-00 00:00:00') {
if ($is_coach_course) {
- $allowed_time = api_strtotime($date_session_start.' 00:00:00') - ($days_access_before_beginning * 86400);
+ $allowed_time = api_strtotime($coachAccessStartDate);
} else {
- $allowed_time = api_strtotime($date_session_start.' 00:00:00');
+ $allowed_time = api_strtotime($date_session_start);
}
if (!isset($_GET['history'])) {
- if ($date_session_end != '0000-00-00') {
- $endSessionToTms = api_strtotime($date_session_end.' 23:59:59');
+ if ($date_session_end != '0000-00-00 00:00:00') {
+ $endSessionToTms = api_strtotime($date_session_end);
if ($session_now > $endSessionToTms) {
$dif_time_after = $session_now - $endSessionToTms;
$dif_time_after = round($dif_time_after/86400);
@@ -1192,7 +1192,7 @@ class IndexManager
}
if ($session_now > $allowed_time &&
- $days_access_after_end > $dif_time_after - 1
+ $coachAccessEndDate > $dif_time_after - 1
) {
// Read only and accessible.
$atLeastOneCourseIsVisible = true;
@@ -1294,10 +1294,10 @@ class IndexManager
continue;
}
- $date_session_start = $session['date_start'];
- $date_session_end = $session['date_end'];
- $days_access_before_beginning = $session['nb_days_access_before_beginning'];
- $days_access_after_end = $session['nb_days_access_after_end'];
+ $date_session_start = $session['access_start_date'];
+ $date_session_end = $session['access_end_date'];
+ $coachAccessStartDate = $session['coach_access_start_date'];
+ $coachAccessEndDate = $session['coach_access_end_date'];
$session_now = time();
$html_courses_session = '';
@@ -1313,13 +1313,13 @@ class IndexManager
$allowed_time = 0;
if ($is_coach_course) {
// 24 hours = 86400
- if ($date_session_start != '0000-00-00') {
- $allowed_time = api_strtotime($date_session_start . ' 00:00:00') - ($days_access_before_beginning * 86400);
+ if ($date_session_start != '0000-00-00 00:00:00') {
+ $allowed_time = api_strtotime($coachAccessStartDate);
}
if (!isset($_GET['history'])) {
- if ($date_session_end != '0000-00-00') {
+ if ($date_session_end != '0000-00-00 00:00:00') {
$endSessionToTms = api_strtotime(
- $date_session_end . ' 23:59:59'
+ $date_session_end
);
if ($session_now > $endSessionToTms) {
$dif_time_after = $session_now - $endSessionToTms;
@@ -1331,12 +1331,12 @@ class IndexManager
}
} else {
$allowed_time = api_strtotime(
- $date_session_start . ' 00:00:00'
+ $date_session_start
);
}
if ($session_now > $allowed_time &&
- $days_access_after_end > $dif_time_after - 1
+ $coachAccessEndDate > $dif_time_after - 1
) {
if (api_get_setting('hide_courses_in_sessions') == 'false') {
$c = CourseManager:: get_logged_user_course_html(
diff --git a/main/lang/english/trad4all.inc.php b/main/lang/english/trad4all.inc.php
index 26674470e7..cf0123d893 100644
--- a/main/lang/english/trad4all.inc.php
+++ b/main/lang/english/trad4all.inc.php
@@ -7355,4 +7355,6 @@ $GamificationModeTitle = "Gamification mode";
$GamificationModeComment = "Activate the stars achievement in learning paths";
$LevelX = "Level %s";
$SeeCourse = "View course";
+$XPoints = "%s points";
+$FromXUntilY = "From %s until %s";
?>
\ No newline at end of file
diff --git a/main/lang/french/trad4all.inc.php b/main/lang/french/trad4all.inc.php
index 6f43b9f573..1cd77b8dea 100755
--- a/main/lang/french/trad4all.inc.php
+++ b/main/lang/french/trad4all.inc.php
@@ -7234,4 +7234,6 @@ $Readable = "Lisible";
$NotReadable = "Non accessible en lecture";
$DefaultInstallAdminFirstname = "Jean";
$DefaultInstallAdminLastname = "Dupont";
+$AttendanceUpdated = "Présences mises à jour";
+$FromXUntilY = "Du %s au %s";
?>
\ No newline at end of file
diff --git a/main/lang/spanish/trad4all.inc.php b/main/lang/spanish/trad4all.inc.php
index 5b6a0772d1..691526cd21 100644
--- a/main/lang/spanish/trad4all.inc.php
+++ b/main/lang/spanish/trad4all.inc.php
@@ -7384,4 +7384,6 @@ $GamificationModeTitle = "Modo ludificación";
$GamificationModeComment = "Activar el logro de estrellas en las lecciones";
$LevelX = "Nivel %s";
$SeeCourse = "Ver curso";
+$XPoints = "%s puntos";
+$FromXUntilY = "De %s a %s";
?>
\ No newline at end of file
diff --git a/main/mySpace/myStudents.php b/main/mySpace/myStudents.php
index 5b8816a3be..c4cc6757c9 100755
--- a/main/mySpace/myStudents.php
+++ b/main/mySpace/myStudents.php
@@ -614,19 +614,19 @@ if (!empty($student_id)) {
if ($session_info) {
$session_name = $session_info['name'];
}
- $date_start = '';
+ $access_start_date = '';
- if (!empty($session_info['date_start']) && $session_info['date_start'] != '0000-00-00') {
- $date_start = api_format_date($session_info['date_start'], DATE_FORMAT_SHORT);
+ if (!empty($session_info['access_start_date']) && $session_info['access_start_date'] != '0000-00-00') {
+ $access_start_date = api_format_date($session_info['access_start_date'], DATE_FORMAT_SHORT);
}
- $date_end = '';
- if (!empty($session_info['date_end']) && $session_info['date_end'] != '0000-00-00') {
- $date_end = api_format_date($session_info['date_end'], DATE_FORMAT_SHORT);
+ $access_end_date = '';
+ if (!empty($session_info['access_end_date']) && $session_info['access_end_date'] != '0000-00-00') {
+ $access_end_date = api_format_date($session_info['access_end_date'], DATE_FORMAT_SHORT);
}
$date_session = '';
- if (!empty($date_start) && !empty($date_end)) {
- $date_session = get_lang('From') . ' ' . $date_start . ' ' . get_lang('Until') . ' ' . $date_end;
+ if (!empty($access_start_date) && !empty($access_end_date)) {
+ $date_session = get_lang('From') . ' ' . $access_start_date . ' ' . get_lang('Until') . ' ' . $access_end_date;
}
$title = '';
if (empty($sessionId)) {
diff --git a/main/session/index.php b/main/session/index.php
index 305885f515..6d11313ea9 100755
--- a/main/session/index.php
+++ b/main/session/index.php
@@ -363,13 +363,13 @@ if (!empty($new_exercises)) {
$start = $end = $start_only = $end_only ='';
-if (!empty($session_info['date_start']) && $session_info['date_start'] != '0000-00-00') {
- $start = api_convert_and_format_date($session_info['date_start'], DATE_FORMAT_SHORT);
- $start_only = get_lang('From').' '.$session_info['date_start'];
+if (!empty($session_info['access_start_date']) && $session_info['access_start_date'] != '0000-00-00') {
+ $start = api_convert_and_format_date($session_info['access_start_date'], DATE_FORMAT_SHORT);
+ $start_only = get_lang('From').' '.$session_info['access_start_date'];
}
-if (!empty($session_info['date_start']) && $session_info['date_end'] != '0000-00-00') {
- $end = api_convert_and_format_date($session_info['date_end'], DATE_FORMAT_SHORT);
- $end_only = get_lang('Until').' '.$session_info['date_end'];
+if (!empty($session_info['access_start_date']) && $session_info['access_end_date'] != '0000-00-00') {
+ $end = api_convert_and_format_date($session_info['access_end_date'], DATE_FORMAT_SHORT);
+ $end_only = get_lang('Until').' '.$session_info['access_end_date'];
}
if (!empty($start) && !empty($end)) {
diff --git a/main/session/session_category_edit.php b/main/session/session_category_edit.php
index 06a92bbc3c..a4fe596bf8 100644
--- a/main/session/session_category_edit.php
+++ b/main/session/session_category_edit.php
@@ -89,7 +89,7 @@ if (!empty($return)) {
-
+
diff --git a/main/session/session_category_list.php b/main/session/session_category_list.php
index 88ed882455..795566a2cf 100644
--- a/main/session/session_category_list.php
+++ b/main/session/session_category_list.php
@@ -186,9 +186,9 @@ if (isset($_GET['search']) && $_GET['search'] == 'advanced') {
|
|
- ".$nb_courses." Sesion(es) "; ?> |
- |
- |
+ ".$nb_courses." Session(s) "; ?> |
+ |
+ |
diff --git a/main/session/session_export.php b/main/session/session_export.php
index 33bafdedbc..f42249e855 100644
--- a/main/session/session_export.php
+++ b/main/session/session_export.php
@@ -49,8 +49,8 @@ if (isset($_POST['formSent'])) {
name,
id_coach,
username,
- date_start,
- date_end,
+ access_start_date,
+ access_end_date,
visibility,
session_category_id
FROM $tbl_session s
@@ -62,7 +62,7 @@ if (isset($_POST['formSent'])) {
$tbl_session_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
- $sql = "SELECT s.id, name,id_coach,username,date_start,date_end,visibility,session_category_id
+ $sql = "SELECT s.id, name,id_coach,username,access_start_date,access_end_date,visibility,session_category_id
FROM $tbl_session s
INNER JOIN $tbl_session_rel_access_url as session_rel_url
ON (s.id= session_rel_url.session_id)
@@ -74,7 +74,7 @@ if (isset($_POST['formSent'])) {
$result = Database::query($sql);
} else {
- $sql = "SELECT s.id,name,username,date_start,date_end,visibility,session_category_id
+ $sql = "SELECT s.id,name,username,access_start_date,access_end_date,visibility,session_category_id
FROM $tbl_session s
INNER JOIN $tbl_user
ON $tbl_user.user_id = s.id_coach
@@ -113,18 +113,18 @@ if (isset($_POST['formSent'])) {
$add = '';
$row['name'] = str_replace(';',',',$row['name']);
$row['username'] = str_replace(';',',',$row['username']);
- $row['date_start'] = str_replace(';',',',$row['date_start']);
- $row['date_end'] = str_replace(';',',',$row['date_end']);
+ $row['access_start_date'] = str_replace(';',',',$row['access_start_date']);
+ $row['access_end_date'] = str_replace(';',',',$row['access_end_date']);
$row['visibility'] = str_replace(';',',',$row['visibility']);
$row['session_category'] = str_replace(';',',',$row['session_category_id']);
if ($cvs) {
- $add.= $row['name'].';'.$row['username'].';'.$row['date_start'].';'.$row['date_end'].';'.$row['visibility'].';'.$row['session_category'].';';
+ $add.= $row['name'].';'.$row['username'].';'.$row['access_start_date'].';'.$row['access_end_date'].';'.$row['visibility'].';'.$row['session_category'].';';
} else {
$add = "\t\n"
."\t\t$row[name]\n"
."\t\t$row[username]\n"
- ."\t\t$row[date_start]\n"
- ."\t\t$row[date_end]\n"
+ ."\t\t$row[access_start_date]\n"
+ ."\t\t$row[access_end_date]\n"
."\t\t$row[visibility]\n"
."\t\t$row[session_category]\n";
}
diff --git a/main/session/session_import.php b/main/session/session_import.php
index bbd7d6a0b3..d42a00071a 100644
--- a/main/session/session_import.php
+++ b/main/session/session_import.php
@@ -261,8 +261,8 @@ if (isset($_POST['formSent']) && $_POST['formSent']) {
$sql_session = "INSERT IGNORE INTO $tbl_session SET
name = '".Database::escape_string($session_name)."',
id_coach = '$coach_id',
- date_start = '$date_start',
- date_end = '$date_end',
+ access_start_date = '$date_start',
+ access_end_date = '$date_end',
visibility = '$visibility',
session_category_id = '$session_category_id',
session_admin_id=".intval($_user['user_id']);
@@ -278,8 +278,8 @@ if (isset($_POST['formSent']) && $_POST['formSent']) {
$sql_session = "INSERT IGNORE INTO $tbl_session SET
name = '".Database::escape_string($session_name)."',
id_coach = '$coach_id',
- date_start = '$date_start',
- date_end = '$date_end',
+ access_start_date = '$date_start',
+ access_end_date = '$date_end',
visibility = '$visibility',
session_category_id = '$session_category_id',
session_admin_id=".intval($_user['user_id']);
@@ -290,8 +290,8 @@ if (isset($_POST['formSent']) && $_POST['formSent']) {
// if the session already exists - update it.
$sql_session = "UPDATE $tbl_session SET
id_coach = '$coach_id',
- date_start = '$date_start',
- date_end = '$date_end',
+ access_start_date = '$date_start',
+ access_end_date = '$date_end',
visibility = '$visibility',
session_category_id = '$session_category_id'
WHERE name = '$session_name'";
diff --git a/main/session/session_list.php b/main/session/session_list.php
index c2f4c7399e..40cc5172f1 100644
--- a/main/session/session_list.php
+++ b/main/session/session_list.php
@@ -112,8 +112,8 @@ $column_model = array(
array('name'=>'nbr_courses', 'index'=>'nbr_courses', 'width'=>'30', 'align'=>'left', 'search' => 'true'),
array('name'=>'nbr_users', 'index'=>'nbr_users', 'width'=>'30', 'align'=>'left', 'search' => 'true'),
array('name'=>'category_name', 'index'=>'sc.name', 'width'=>'70', 'align'=>'left', 'search' => 'true'),
- array('name'=>'date_start', 'index'=>'s.date_start', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
- array('name'=>'date_end', 'index'=>'s.date_end', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
+ array('name'=>'access_start_date', 'index'=>'s.access_start_date', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
+ array('name'=>'access_end_date', 'index'=>'s.access_end_date', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
array('name'=>'coach_name', 'index'=>'coach_name', 'width'=>'80', 'align'=>'left', 'search' => 'false'),
array('name'=>'status', 'index'=>'session_active','width'=>'50', 'align'=>'left', 'search' => 'true', 'stype'=>'select',
//for the bottom bar
diff --git a/main/tracking/userLog.php b/main/tracking/userLog.php
index 80915c1a0f..c496c04057 100755
--- a/main/tracking/userLog.php
+++ b/main/tracking/userLog.php
@@ -73,10 +73,10 @@ $sql = "SELECT 1
FROM $tbl_session_course_user AS session_course_user
INNER JOIN $tbl_session AS session
ON session_course_user.session_id = session.id
- AND ((date_start <= '$now'
- AND date_end >= '$now')
- OR (date_start='0000-00-00' AND date_end='0000-00-00'))
- WHERE session_id='".api_get_session_id()."' AND course_code='$_cid'";
+ AND ((access_start_date <= '$now'
+ AND access_end_date >= '$now')
+ OR (access_start_date='0000-00-00' AND access_end_date='0000-00-00'))
+ WHERE session_id='".api_get_session_id()."' AND c_id = $courseId";
//echo $sql;
$result=Database::query($sql);
if(!Database::num_rows($result)){
diff --git a/main/tracking/userlogCSV.php b/main/tracking/userlogCSV.php
index b5ee516bf1..e49047863d 100755
--- a/main/tracking/userlogCSV.php
+++ b/main/tracking/userlogCSV.php
@@ -68,10 +68,10 @@ $sql = "SELECT 1
FROM $tbl_session_course_user AS session_course_user
INNER JOIN $tbl_session AS session
ON session_course_user.session_id = session.id
- AND ((date_start <= '$now'
- AND date_end >= '$now')
- OR (date_start='0000-00-00' AND date_end='0000-00-00'))
- WHERE session_id='" . $_SESSION['id_session'] . "' AND course_code='$_cid'";
+ AND ((access_start_date <= '$now'
+ AND access_end_date >= '$now')
+ OR (access_start_date='0000-00-00' AND access_end_date='0000-00-00'))
+ WHERE session_id='" . $_SESSION['id_session'] . "' AND c_id = $courseId";
//echo $sql;
$result = Database::query($sql);
if (!Database::num_rows($result)) {
diff --git a/main/user/resume_session.php b/main/user/resume_session.php
index 2573758374..755388c8e2 100755
--- a/main/user/resume_session.php
+++ b/main/user/resume_session.php
@@ -32,15 +32,31 @@ if($allowTutors == 'true') {
$table_access_url_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
- $sql = 'SELECT name, nbr_courses, nbr_users, nbr_classes, DATE_FORMAT(date_start,"%d-%m-%Y") as date_start, DATE_FORMAT(date_end,"%d-%m-%Y") as date_end, lastname, firstname, username, session_admin_id, nb_days_access_before_beginning, nb_days_access_after_end, session_category_id, visibility
- FROM '.$tbl_session.' LEFT JOIN '.$tbl_user.' ON id_coach = user_id
- WHERE '.$tbl_session.'.id='.$id_session;
+ $sql = 'SELECT
+ name,
+ nbr_courses,
+ nbr_users,
+ nbr_classes,
+ DATE_FORMAT(access_start_date,"%d-%m-%Y") as access_start_date,
+ DATE_FORMAT(access_end_date,"%d-%m-%Y") as access_end_date,
+ lastname,
+ firstname,
+ username,
+ session_admin_id,
+ coach_access_start_date,
+ coach_access_end_date,
+ session_category_id,
+ visibility
+ FROM '.$tbl_session.' LEFT JOIN '.$tbl_user.' ON id_coach = user_id
+ WHERE '.$tbl_session.'.id='.$id_session;
$rs = Database::query($sql);
$session = Database::store_result($rs);
$session = $session[0];
- $sql = 'SELECT name FROM '.$tbl_session_category.' WHERE id = "'.intval($session['session_category_id']).'"';
+ $sql = 'SELECT name
+ FROM '.$tbl_session_category.'
+ WHERE id = '.intval($session['session_category_id']);
$rs = Database::query($sql);
$session_category = '';
@@ -135,22 +151,22 @@ if($allowTutors == 'true') {
: |
|
@@ -158,18 +174,18 @@ if($allowTutors == 'true') {
- :
+ :
|
-
+
|
- :
+ :
|
-
+
|
diff --git a/main/user/session_list.php b/main/user/session_list.php
index 917c8617ed..be9e904065 100755
--- a/main/user/session_list.php
+++ b/main/user/session_list.php
@@ -53,8 +53,8 @@ if($allowTutors == 'true') {
array('name'=>'nbr_courses', 'index'=>'nbr_courses', 'width'=>'30', 'align'=>'left', 'search' => 'true'),
array('name'=>'nbr_users', 'index'=>'nbr_users', 'width'=>'30', 'align'=>'left', 'search' => 'true'),
array('name'=>'category_name', 'index'=>'category_name', 'width'=>'70', 'align'=>'left', 'search' => 'true'),
- array('name'=>'date_start', 'index'=>'date_start', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
- array('name'=>'date_end', 'index'=>'date_end', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
+ array('name'=>'access_start_date', 'index'=>'access_start_date', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
+ array('name'=>'access_end_date', 'index'=>'access_end_date', 'width'=>'40', 'align'=>'left', 'search' => 'true'),
array('name'=>'coach_name', 'index'=>'coach_name', 'width'=>'80', 'align'=>'left', 'search' => 'false'),
array('name'=>'status', 'index'=>'session_active','width'=>'40', 'align'=>'left', 'search' => 'true', 'stype'=>'select',
//for the bottom bar
diff --git a/main/webservices/registration.soap.php b/main/webservices/registration.soap.php
index ac2db5c37b..36e90d4356 100755
--- a/main/webservices/registration.soap.php
+++ b/main/webservices/registration.soap.php
@@ -2666,7 +2666,8 @@ function WSCreateCourse($params)
CourseManager::create_course_extra_field(
$original_course_id_name,
1,
- $original_course_id_name
+ $original_course_id_name,
+ ''
);
// Save the external system's id into user_field_value table.
@@ -2684,7 +2685,8 @@ function WSCreateCourse($params)
CourseManager::create_course_extra_field(
$extra_field_name,
1,
- $extra_field_name
+ $extra_field_name,
+ ''
);
// Save the external system's id into course_field_value table.
CourseManager::update_course_extra_field_value(
@@ -2888,7 +2890,8 @@ function WSCreateCourseByTitle($params)
CourseManager::create_course_extra_field(
$original_course_id_name,
1,
- $original_course_id_name
+ $original_course_id_name,
+ ''
);
// Save the external system's id into user_field_value table.
@@ -2906,7 +2909,8 @@ function WSCreateCourseByTitle($params)
CourseManager::create_course_extra_field(
$extra_field_name,
1,
- $extra_field_name
+ $extra_field_name,
+ ''
);
// Save the external system's id into course_field_value table.
CourseManager::update_course_extra_field_value(
@@ -3652,8 +3656,8 @@ function WSCreateSession($params)
$year_end = intval($session_param['year_end']);
$month_end = intval($session_param['month_end']);
$day_end = intval($session_param['day_end']);
- $nb_days_acess_before = intval($session_param['nb_days_access_before']);
- $nb_days_acess_after = intval($session_param['nb_days_access_after']);
+ $nb_days_access_before = intval($session_param['nb_days_access_before']);
+ $nb_days_access_after = intval($session_param['nb_days_access_after']);
$id_coach = $session_param['user_id'];
$nolimit = $session_param['nolimit'];
$original_session_id_name = $session_param['original_session_id_name'];
@@ -3672,11 +3676,11 @@ function WSCreateSession($params)
}
if (empty($nolimit)){
- $date_start = "$year_start-".(($month_start < 10)?"0$month_start":$month_start)."-".(($day_start < 10)?"0$day_start":$day_start);
- $date_end = "$year_end-".(($month_end < 10)?"0$month_end":$month_end)."-".(($day_end < 10)?"0$day_end":$day_end);
+ $date_start = "$year_start-".(($month_start < 10)?"0$month_start":$month_start)."-".(($day_start < 10)?"0$day_start":$day_start) . ' 00:00:00';
+ $date_end = "$year_end-".(($month_end < 10)?"0$month_end":$month_end)."-".(($day_end < 10)?"0$day_end":$day_end) . ' 23:59:59';
} else {
- $date_start = "000-00-00";
- $date_end = "000-00-00";
+ $date_start = "000-00-00 00:00:00";
+ $date_end = "000-00-00 00:00:00";
}
if (empty($name)) {
@@ -3697,8 +3701,32 @@ function WSCreateSession($params)
$results[] = 0;
continue;
} else {
- Database::query("INSERT INTO $tbl_session(name,date_start,date_end,id_coach,session_admin_id, nb_days_access_before_beginning, nb_days_access_after_end)
- VALUES('".addslashes($name)."','$date_start','$date_end','$id_coach',".intval($_user['user_id']).",".$nb_days_acess_before.", ".$nb_days_acess_after.")");
+ $startDate = new DateTime($date_start);
+ $endDate = new DateTime($date_end);
+ $diffStart = new DateInterval($nb_days_access_before);
+ $diffEnd = new DateInterval($nb_days_access_after);
+ $coachStartDate = $startDate->sub($diffStart);
+ $coachEndDate = $endDate->add($diffEnd);
+ Database::query(
+ "INSERT INTO $tbl_session(
+ name,
+ access_start_date,
+ access_end_date,
+ id_coach,
+ session_admin_id,
+ coach_access_start_date,
+ coach_access_end_date
+ )
+ VALUES(
+ '".addslashes($name)."',
+ '$date_start',
+ '$date_end',
+ '$id_coach',
+ ".intval($_user['user_id']).",
+ '".$coachStartDate->format('Y-m-d H:i:s')."',
+ '".$coachEndDate->format('Y-m-d H:i:s')."'
+ )"
+ );
$id_session = Database::insert_id();
// Save new fieldlabel into course_field table.
@@ -3861,8 +3889,8 @@ function WSEditSession($params)
$year_end = intval($session_param['year_end']);
$month_end = intval($session_param['month_end']);
$day_end = intval($session_param['day_end']);
- $nb_days_acess_before = intval($session_param['nb_days_access_before']);
- $nb_days_acess_after = intval($session_param['nb_days_access_after']);
+ $nb_days_access_before = intval($session_param['nb_days_access_before']);
+ $nb_days_access_after = intval($session_param['nb_days_access_after']);
$original_session_id_value = $session_param['original_session_id_value'];
$original_session_id_name = $session_param['original_session_id_name'];
$orig_session_id_value[] = $original_session_id_value;
@@ -3901,15 +3929,21 @@ function WSEditSession($params)
$results[] = 0; //StartDateShouldBeBeforeEndDate
continue;
} else {
+ $startDate = new DateTime($date_start);
+ $endDate = new DateTime($date_end);
+ $diffStart = new DateInterval($nb_days_access_before);
+ $diffEnd = new DateInterval($nb_days_access_after);
+ $coachStartDate = $startDate->sub($diffStart);
+ $coachEndDate = $endDate->add($diffEnd);
$sql = "UPDATE $tbl_session SET " .
- "name='".addslashes($name)."', " .
- "date_start='".$date_start."', " .
- "date_end='".$date_end."', " .
- "id_coach='". $id_coach."', " .
- "session_admin_id='". intval($_user['user_id'])."', " .
- "nb_days_access_before_beginning='". $nb_days_acess_before."', " .
- "nb_days_access_after_end='". $nb_days_acess_after."'" .
- " WHERE id='".$id."'";
+ "name = '".addslashes($name)."', " .
+ "date_start = '".$date_start."', " .
+ "date_end = '".$date_end."', " .
+ "id_coach = '". $id_coach."', " .
+ "session_admin_id = '". intval($_user['user_id'])."', " .
+ "coach_access_start_date = '". $coachStartDate->format('Y-m-d H:i:s') . "', " .
+ "coach_access_end_date = '". $coachEndDate->format('Y-m-d H:i:s') . "'" .
+ " WHERE id = '".$id."'";
Database::query($sql);
if (is_array($extra_list) && count($extra_list) > 0) {
@@ -4780,7 +4814,7 @@ function WSSuscribeUsersToSession($params)
list($nbr_users) = Database::fetch_array($rs);
// update the session-course relation to add the users total
$update_sql = "UPDATE $tbl_session_rel_course SET nbr_users=$nbr_users
- WHERE session_id='$id_session' AND c_id='$enreg_course'";
+ WHERE session_id='$sessionId' AND c_id='$enreg_course'";
Database::query($update_sql);
}
@@ -5290,7 +5324,7 @@ function WSSuscribeCoursesToSession($params) {
$courseId = $courseInfo['real_id'];
$courseInfo = CourseManager::getCourseInfoFromOriginalId(
- $original_course_id_value,
+ $course_code,
$original_course_id_name
);
@@ -5796,10 +5830,10 @@ function WSListSessions($params) {
$sql_params = array();
// Dates should be provided in YYYY-MM-DD format, UTC
if (!empty($params['date_start'])) {
- $sql_params['s.date_start'] = array('operator' => '>=', 'value' => $params['date_start']);
+ $sql_params['s.access_start_date'] = array('operator' => '>=', 'value' => $params['date_start']);
}
if (!empty($params['date_end'])) {
- $sql_params['s.date_end'] = array('operator' => '<=', 'value' => $params['date_end']);
+ $sql_params['s.access_end_date'] = array('operator' => '<=', 'value' => $params['date_end']);
}
$sessions_list = SessionManager::get_sessions_list($sql_params);
$return_list = array();
@@ -5808,8 +5842,8 @@ function WSListSessions($params) {
'id' => $session['id'],
'title' => $session['name'],
'url' => api_get_path(WEB_CODE_PATH).'session/index.php?session_id='.$session['id'], // something like http://my.chamilo.net/main/session/index.php?session_id=5
- 'date_start' => $session['date_start'],
- 'date_end' => $session['date_end'],
+ 'date_start' => $session['access_start_date'],
+ 'date_end' => $session['access_end_date'],
);
}
@@ -6191,7 +6225,7 @@ function WSCreateGroup($params)
$userGroup = new UserGroup();
$params = [
'name' => $params['name']
- ]
+ ];
return $userGroup->save($params);
//return GroupPortalManager::add($params['name'], null, null, 1);
}
diff --git a/plugin/advanced_subscription/cron/notify_by_mail.php b/plugin/advanced_subscription/cron/notify_by_mail.php
index fd26054a64..8ea8fe68c0 100644
--- a/plugin/advanced_subscription/cron/notify_by_mail.php
+++ b/plugin/advanced_subscription/cron/notify_by_mail.php
@@ -25,7 +25,7 @@ $joinTables = Database::get_main_table(TABLE_MAIN_SESSION) . ' s INNER JOIN ' .
$columns = 's.id AS session_id, uu.friend_user_id AS superior_id, uu.user_id AS student_id, asq.id AS queue_id, asq.status AS status';
$conditions = array(
'where' => array(
- 's.date_start >= ? AND uu.relation_type = ? AND asq.updated_at <= ?' => array(
+ 's.access_start_date >= ? AND uu.relation_type = ? AND asq.updated_at <= ?' => array(
$now,
USER_RELATION_TYPE_BOSS,
$weekAgo,
diff --git a/plugin/advanced_subscription/src/AdvancedSubscriptionPlugin.php b/plugin/advanced_subscription/src/AdvancedSubscriptionPlugin.php
index a615553044..aee941791e 100644
--- a/plugin/advanced_subscription/src/AdvancedSubscriptionPlugin.php
+++ b/plugin/advanced_subscription/src/AdvancedSubscriptionPlugin.php
@@ -216,7 +216,7 @@ class AdvancedSubscriptionPlugin extends Plugin implements HookPluginInterface
$extra = new ExtraFieldValue('session');
$joinSessionTable = Database::get_main_table(TABLE_MAIN_SESSION_USER) . ' su INNER JOIN ' .
Database::get_main_table(TABLE_MAIN_SESSION) . ' s ON s.id = su.session_id';
- $whereSessionParams = 'su.relation_type = ? AND s.date_start >= ? AND su.user_id = ?';
+ $whereSessionParams = 'su.relation_type = ? AND s.access_start_date >= ? AND su.user_id = ?';
$whereSessionParamsValues = array(
0,
$newYearDate->format('Y-m-d'),
diff --git a/plugin/advanced_subscription/src/HookAdvancedSubscription.php b/plugin/advanced_subscription/src/HookAdvancedSubscription.php
index 17c4be4e72..01c8dc1c3e 100644
--- a/plugin/advanced_subscription/src/HookAdvancedSubscription.php
+++ b/plugin/advanced_subscription/src/HookAdvancedSubscription.php
@@ -549,7 +549,7 @@ class HookAdvancedSubscription extends HookObserver implements
/**
* Get a list of sessions (id, coach_id, name, courses_num, users_num, classes_num,
- * date_start, date_end, access_days_before_num, session_admin_id, visibility,
+ * access_start_date, access_end_date, access_days_before_num, session_admin_id, visibility,
* session_category_id, promotion_id,
* validated_user_num, waiting_user_num,
* extra, course) the validated_usernum and waiting_user_num are
diff --git a/plugin/buycourses/src/buy_course.lib.php b/plugin/buycourses/src/buy_course.lib.php
index 7629514d8c..1d785e70fe 100644
--- a/plugin/buycourses/src/buy_course.lib.php
+++ b/plugin/buycourses/src/buy_course.lib.php
@@ -77,7 +77,7 @@ function sync()
$sql = "UPDATE $tableBuySession SET sync = 0";
Database::query($sql);
- $sql = "SELECT id, name, date_start, date_end FROM $tableSession";
+ $sql = "SELECT id, name, access_start_date, access_end_date FROM $tableSession";
$res = Database::query($sql);
while ($row = Database::fetch_assoc($res)) {
$sql = "SELECT 1 FROM $tableBuySession WHERE session_id='" . $row['id'] . "';";
@@ -88,7 +88,7 @@ function sync()
} else {
$sql = "INSERT INTO $tableBuySession (session_id, name, date_start, date_end, visible, sync)
VALUES ('" . $row['id'] . "', '" . $row['name'] . "', '" .
- $row['date_start'] . "', '" . $row['date_end'] . "', 0, 1);";
+ $row['access_start_date'] . "', '" . $row['access_end_date'] . "', 0, 1);";
Database::query($sql);
}
}
diff --git a/plugin/buycourses/src/function.php b/plugin/buycourses/src/function.php
index aab58404da..e0ee6a6464 100644
--- a/plugin/buycourses/src/function.php
+++ b/plugin/buycourses/src/function.php
@@ -35,12 +35,12 @@ if ($_REQUEST['tab'] == 'sync') {
$aux_code .= $row['code'];
$aux_title .= $row['title'];
}
- $sql = "SELECT name, date_start, date_end FROM $tableSession;";
+ $sql = "SELECT name, access_start_date, access_end_date FROM $tableSession;";
$res = Database::query($sql);
while ($row = Database::fetch_assoc($res)) {
$aux_name .= $row['name'];
- $aux_date_start .= $row['date_start'];
- $aux_date_end .= $row['date_end'];
+ $aux_date_start .= $row['access_start_date'];
+ $aux_date_end .= $row['access_end_date'];
}
echo json_encode(array("status" => "true", "content" => $content));
}
@@ -160,8 +160,8 @@ if ($_REQUEST['tab'] == 'sessions_filter') {
'.$session['name'].'
- '.get_lang('From').' '.$session['date_start'].
- ' '.get_lang('Until').' '.$session['date_end'].'';
+ '.get_lang('From').' '.$session['access_start_date'].
+ ' '.get_lang('Until').' '.$session['access_end_date'].'';
if ($session['enrolled'] == "YES") {
$content .= ''.$plugin->get_lang('TheUserIsAlreadyRegisteredInTheSession').'';
}
diff --git a/plugin/dashboard/block_session/block_session.class.php b/plugin/dashboard/block_session/block_session.class.php
index 89d4e15dc2..1d8c40c8b4 100755
--- a/plugin/dashboard/block_session/block_session.class.php
+++ b/plugin/dashboard/block_session/block_session.class.php
@@ -108,8 +108,8 @@ class BlockSession extends Block
$session_id = intval($session['id']);
$title = $session['name'];
- if ($session['date_start'] != '0000-00-00' && $session['date_end'] != '0000-00-00') {
- $date = get_lang('From').' '.api_convert_and_format_date($session['date_start'], DATE_FORMAT_SHORT, date_default_timezone_get()).' '.get_lang('To').' '.api_convert_and_format_date($session['date_end'], DATE_FORMAT_SHORT, date_default_timezone_get());
+ if ($session['access_start_date'] != '0000-00-00 00:00:00' && $session['access_end_date'] != '0000-00-00 00:00:00') {
+ $date = get_lang('From').' '.api_convert_and_format_date($session['access_start_date'], DATE_FORMAT_SHORT, date_default_timezone_get()).' '.get_lang('To').' '.api_convert_and_format_date($session['access_end_date'], DATE_FORMAT_SHORT, date_default_timezone_get());
} else {
$date = ' - ';
}
diff --git a/src/Chamilo/CoreBundle/Migrations/Schema/V110/Version20150528103216.php b/src/Chamilo/CoreBundle/Migrations/Schema/V110/Version20150528103216.php
index 11934f4b1f..e2d29b0be8 100644
--- a/src/Chamilo/CoreBundle/Migrations/Schema/V110/Version20150528103216.php
+++ b/src/Chamilo/CoreBundle/Migrations/Schema/V110/Version20150528103216.php
@@ -16,6 +16,14 @@ class Version20150528103216 extends AbstractMigrationChamilo
*/
public function up(Schema $schema)
{
+ $this->addSql('ALTER TABLE session ADD COLUMN access_start_date datetime');
+ $this->addSql('ALTER TABLE session ADD COLUMN access_end_date datetime');
+ $this->addSql('ALTER TABLE session ADD COLUMN coach_access_start_date datetime);
+ $this->addSql('ALTER TABLE session ADD COLUMN coach_access_end_date datetime');
+ $this->addSql('ALTER TABLE session ADD COLUMN display_start_date datetime');
+ $this->addSql('ALTER TABLE session ADD COLUMN display_end_date datetime');
+
+
$this->addSql('UPDATE session SET access_start_date = date_start');
$this->addSql("UPDATE session SET access_end_date = CONVERT(CONCAT(date_end, ' 23:59:59'), DATETIME)");
@@ -45,6 +53,19 @@ class Version20150528103216 extends AbstractMigrationChamilo
*/
public function down(Schema $schema)
{
+ $this->addSql('ALTER TABLE session CREATE date_start date NOT NULL');
+ $this->addSql('ALTER TABLE session CREATE date_end date NOT NULL');
+ $this->addSql('ALTER TABLE session CREATE nb_days_access_before_beginning TINYINT');
+ $this->addSql('ALTER TABLE session CREATE nb_days_access_after_end TINYINT');
+
+ $this->addSql('UPDATE session SET date_start = access_start_date');
+ $this->addSql('UPDATE session SET date_end = access_end_date');
+
+ $this->addSql('UPDATE session SET nb_days_access_before_beginning = DATEDIFF(access_start_date, coach_access_start_date) WHERE access_start_date != coach_access_start_date AND coach_access_start_date IS NOT NULL');
+ $this->addSql('UPDATE session SET nb_days_access_after_end = DATEDIFF(coach_access_end_date, coach_access_end_date) WHERE access_end_date != coach_access_end_date AND coach_access_end_date IS NOT NULL');
+ $this->addSql('UPDATE session SET nb_days_access_before_beginning = 0 WHERE access_start_date = coach_access_start_date OR coach_access_start_date IS NULL');
+ $this->addSql('UPDATE session SET nb_days_access_after_end = 0 WHERE access_end_date = coach_access_end_date OR coach_access_end_date IS NULL');
+
$this->addSql('ALTER TABLE session DROP access_start_date');
$this->addSql('ALTER TABLE session DROP access_end_date');
$this->addSql('ALTER TABLE session DROP coach_access_start_date');
diff --git a/tests/main/inc/lib/sessionmanager.lib.test.php b/tests/main/inc/lib/sessionmanager.lib.test.php
index de29030568..a4b35bb7c8 100755
--- a/tests/main/inc/lib/sessionmanager.lib.test.php
+++ b/tests/main/inc/lib/sessionmanager.lib.test.php
@@ -24,21 +24,27 @@ class TestSessionManager extends UnitTestCase {
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='';
+ $start='';
+ $end='';
+ $coachStart='';
+ $coachEnd='';
$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);
+ $res=SessionManager::create_session(
+ $sname,
+ $start,
+ $end,
+ $coachStart,
+ $coachEnd,
+ $nolimit,
+ $coach_username,
+ $id_session_category,
+ $id_visibility
+ );
$this->assertTrue(is_numeric($id_session));
$this->assertTrue(is_string($res));
ob_end_clean();
@@ -75,19 +81,26 @@ class TestSessionManager extends UnitTestCase {
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='';
+ $start='';
+ $end='';
+ $coachStart='';
+ $coachEnd='';
$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);
+ $res=SessionManager::edit_session(
+ $id,
+ $name,
+ $start,
+ $end,
+ $coachStart,
+ $coachEnd,
+ $nolimit,
+ $id_coach,
+ $id_session_category,
+ $id_visibility
+ );
$this->assertTrue(is_numeric($id));
$this->assertTrue(is_string($res));
//var_dump($id);
diff --git a/whoisonlinesession.php b/whoisonlinesession.php
index 5599e146aa..755366b849 100755
--- a/whoisonlinesession.php
+++ b/whoisonlinesession.php
@@ -46,13 +46,13 @@ Display::display_header(get_lang('UserOnlineListSession'));
$_user['user_id'] = intval($_user['user_id']);
$sql = "SELECT DISTINCT session.id,
name,
- date_start,
- date_end
+ access_start_date,
+ access_end_date
FROM $tbl_session as session
INNER JOIN $tbl_session_course_user as srcru
ON srcru.user_id = ".$_user['user_id']." AND srcru.status=2
AND session.id = srcru.session_id
- ORDER BY date_start, date_end, name";
+ ORDER BY access_start_date, access_end_date, name";
$result = Database::query($sql);
while ($session = Database:: fetch_array($result)) {
@@ -61,11 +61,11 @@ Display::display_header(get_lang('UserOnlineListSession'));
$sql = "SELECT DISTINCT session.id,
name,
- date_start,
- date_end
+ access_start_date,
+ access_end_date
FROM $tbl_session as session
WHERE session.id_coach = ".$_user['user_id']."
- ORDER BY date_start, date_end, name";
+ ORDER BY access_start_date, access_end_date, name";
$result = Database::query($sql);
while ($session = Database:: fetch_array($result)) {
$session_is_coach[$session['id']] = $session;
| |