Session: Move session coach/student constants to Session class

pull/3995/head
Angel Fernando Quiroz Campos 4 years ago
parent ec51f3a067
commit a77636bdd3
  1. 2
      public/main/admin/teachers_time_by_session_report.php
  2. 7
      public/main/forum/forumfunction.inc.php
  3. 4
      public/main/gradebook/lib/GradebookUtils.php
  4. 4
      public/main/gradebook/lib/be/result.class.php
  5. 2
      public/main/inc/lib/CourseChatUtils.php
  6. 5
      public/main/inc/lib/api.lib.php
  7. 13
      public/main/inc/lib/course.lib.php
  8. 9
      public/main/inc/lib/exercise.lib.php
  9. 7
      public/main/inc/lib/myspace.lib.php
  10. 41
      public/main/inc/lib/sessionmanager.lib.php
  11. 3
      public/main/inc/lib/template.lib.php
  12. 12
      public/main/inc/lib/tracking.lib.php
  13. 14
      public/main/inc/lib/usermanager.lib.php
  14. 8
      public/main/mySpace/coaches.php
  15. 2
      public/main/session/add_edit_users_to_session.php
  16. 2
      public/main/session/add_users_to_session_course.php
  17. 2
      public/main/session/resume_session.php
  18. 7
      public/main/session/session_course_edit.php
  19. 2
      public/main/session/session_export.php
  20. 4
      public/main/session/session_import.php
  21. 2
      public/main/user/resume_session.php
  22. 4
      public/main/user/user.php
  23. 4
      public/plugin/buycourses/src/buy_course_plugin.class.php
  24. 4
      src/CoreBundle/Entity/Session.php
  25. 8
      src/CoreBundle/Entity/SessionRelCourseRelUser.php
  26. 2
      src/CoreBundle/Entity/SessionRelUser.php
  27. 2
      src/CoreBundle/Repository/Node/UserRepository.php
  28. 4
      src/CoreBundle/Repository/SessionRepository.php
  29. 2
      src/CoreBundle/Repository/SysAnnouncementRepository.php

@ -52,7 +52,7 @@ if ($session) {
$course = $sessionCourse->getCourse();
$coursesInfo[$course->getId()] = $course->getCode();
$criteria = Criteria::create()->where(
Criteria::expr()->eq('status', Session::COACH)
Criteria::expr()->eq('status', Session::COURSE_COACH)
);
$userCourseSubscriptions = $session
->getUserCourseSubscriptions()

@ -4,6 +4,7 @@
use Chamilo\CoreBundle\Entity\Course;
use Chamilo\CoreBundle\Entity\GradebookLink;
use Chamilo\CoreBundle\Entity\Session as SessionEntity;
use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Framework\Container;
use Chamilo\CourseBundle\Entity\CForum;
@ -1499,7 +1500,7 @@ function get_thread_users_details($thread_id)
WHERE
p.poster_id = user.id AND
user.id = session_rel_user_rel_course.user_id AND
session_rel_user_rel_course.status<>'2' AND
session_rel_user_rel_course.status = ".SessionEntity::STUDENT." AND
session_rel_user_rel_course.user_id NOT IN ($user_to_avoid) AND
p.thread_id = ".(int) $thread_id.' AND
session_id = '.api_get_session_id()." AND
@ -1560,7 +1561,7 @@ function get_thread_users_qualify($thread_id)
WHERE poster_id = user.id
AND post.poster_id = qualify.user_id
AND user.id = scu.user_id
AND scu.status<>'2'
AND scu.status = ".SessionEntity::STUDENT."
AND scu.user_id NOT IN ($user_to_avoid)
AND qualify.thread_id = ".(int) $thread_id.'
AND post.thread_id = '.(int) $thread_id."
@ -1643,7 +1644,7 @@ function get_thread_users_not_qualify($thread_id)
WHERE poster_id = user.id
AND user.id NOT IN (".$cad.")
AND user.id = session_rel_user_rel_course.user_id
AND session_rel_user_rel_course.status<>'2'
AND session_rel_user_rel_course.status = ".SessionEntity::STUDENT."
AND session_rel_user_rel_course.user_id NOT IN ($user_to_avoid)
AND post.thread_id = ".(int) $thread_id.'
AND session_id = '.api_get_session_id()."

@ -2,6 +2,8 @@
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Entity\Session;
/**
* Class GradebookUtils.
*/
@ -1159,7 +1161,7 @@ class GradebookUtils
INNER JOIN $tbl_user as user
ON (scru.user_id = user.id)
WHERE
scru.status = 0 AND
scru.status = ".Session::STUDENT." AND
scru.c_id='$courseId' AND
session_id ='$current_session'
$order_clause

@ -1,6 +1,8 @@
<?php
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Entity\Session;
/**
* Defines a gradebook Result object.
*
@ -110,7 +112,7 @@ class Result
$sql = 'SELECT c_id, user_id as user_id, status
FROM '.$tbl_session_rel_course_user.'
WHERE
status= 0 AND
status= '.Session::STUDENT.' AND
c_id = "'.api_get_course_int_id().'" AND
session_id = '.$sessionId;
} else {

@ -665,7 +665,7 @@ class CourseChatUtils
);
} else {
$criteria->andWhere(
Criteria::expr()->eq('status', Session::COACH)
Criteria::expr()->eq('status', Session::COURSE_COACH)
);
}
}

@ -346,7 +346,6 @@ define('SYS_FONTS_PATH', 'SYS_FONTS_PATH');
// Relations type with Course manager
define('COURSE_RELATION_TYPE_COURSE_MANAGER', 1);
define('SESSION_RELATION_TYPE_COURSE_MANAGER', 1);
// Relations type with Human resources manager
define('COURSE_RELATION_TYPE_RRHH', 1);
@ -2904,7 +2903,7 @@ function api_is_course_session_coach($user_id, $courseId, $session_id)
WHERE
session_rc_ru.user_id = '".$user_id."' AND
session_rc_ru.c_id = '$courseId' AND
session_rc_ru.status = 2 AND
session_rc_ru.status = ".SessionEntity::COURSE_COACH." AND
session_rc_ru.session_id = '$session_id'";
$result = Database::query($sql);
@ -2953,7 +2952,7 @@ function api_is_coach($session_id = 0, $courseId = null, $check_student_view = t
ON session_rc_ru.session_id = s.id AND session_rc_ru.user_id = '".$userId."'
WHERE
session_rc_ru.c_id = '$courseId' AND
session_rc_ru.status = 2 AND
session_rc_ru.status =".SessionEntity::COURSE_COACH." AND
session_rc_ru.session_id = '$session_id'";
$result = Database::query($sql);
$sessionIsCoach = Database::store_result($result);

@ -7,6 +7,7 @@ use Chamilo\CoreBundle\Entity\Course;
use Chamilo\CoreBundle\Entity\CourseRelUser;
use Chamilo\CoreBundle\Entity\ExtraField as EntityExtraField;
use Chamilo\CoreBundle\Entity\SequenceResource;
use Chamilo\CoreBundle\Entity\Session as SessionEntity;
use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Framework\Container;
use Chamilo\CoreBundle\Repository\SequenceResourceRepository;
@ -635,7 +636,7 @@ class CourseManager
}
$endDate = new DateTime();
$endDate->add($duration);
$session = new \Chamilo\CoreBundle\Entity\Session();
$session = new SessionEntity();
$session->setName(
sprintf(get_lang('FirstnameLastnameCourses'), $user->getFirstname(), $user->getLastname())
);
@ -1187,7 +1188,7 @@ class CourseManager
}
$sql = "SELECT 1 FROM $tableSessionCourseUser
WHERE user_id = $userId AND session_id = $session_id AND status = 2 $condition_course";
WHERE user_id = $userId AND session_id = $session_id AND status = ".SessionEntity::COURSE_COACH." $condition_course";
if (Database::num_rows(Database::query($sql)) > 0) {
return true;
@ -1793,7 +1794,7 @@ class CourseManager
// We get the coach for the given course in a given session.
$sql = 'SELECT user_id FROM '.Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER).
" WHERE session_id = $session_id AND c_id = $courseId AND status = 2";
" WHERE session_id = $session_id AND c_id = $courseId AND status = ".SessionEntity::COURSE_COACH;
$rs = Database::query($sql);
while ($user = Database::fetch_array($rs)) {
$userInfo = api_get_user_info($user['user_id']);
@ -1919,7 +1920,7 @@ class CourseManager
$joinSession
INNER JOIN $userTable u
ON scu.user_id = u.id
WHERE scu.c_id = $courseId AND scu.status <> 2";
WHERE scu.c_id = $courseId AND scu.status = ".SessionEntity::STUDENT;
if (!empty($date_from) && !empty($date_to)) {
$date_from = Database::escape_string($date_from);
@ -2138,7 +2139,7 @@ class CourseManager
WHERE
scu.session_id = $session_id AND
scu.c_id = $courseId AND
scu.status = 2";
scu.status = ".SessionEntity::COURSE_COACH;
$rs = Database::query($sql);
$coaches = [];
@ -3371,7 +3372,7 @@ class CourseManager
if (!empty($sessionId)) {
if (COURSEMANAGER == $status) {
// Teacher of course or teacher inside session
$whereConditions = " AND (cru.status = ".COURSEMANAGER." OR srcru.status = 2) ";
$whereConditions = " AND (cru.status = ".COURSEMANAGER." OR srcru.status = ".SessionEntity::COURSE_COACH.") ";
}
$courseList = SessionManager::get_course_list_by_session_id($sessionId);
if (!empty($courseList)) {

@ -4,6 +4,7 @@
use Chamilo\CoreBundle\Component\Utils\ChamiloApi;
use Chamilo\CoreBundle\Entity\GradebookCategory;
use Chamilo\CoreBundle\Entity\Session as SessionEntity;
use Chamilo\CoreBundle\Entity\TrackEExercises;
use Chamilo\CoreBundle\Framework\Container;
use Chamilo\CourseBundle\Entity\CQuiz;
@ -3629,7 +3630,7 @@ EOT;
e.exe_user_id = sc.user_id AND
e.c_id = sc.c_id AND
e.session_id = sc.session_id AND
sc.status = 0
sc.status = ".SessionEntity::STUDENT."
)";
}
$sql .= $courseCondition;
@ -3764,7 +3765,7 @@ EOT;
$courseCondition = "
INNER JOIN $courseUserSession cu
ON (cu.c_id = c.id AND cu.user_id = e.exe_user_id AND e.session_id = cu.session_id)";
$courseConditionWhere = " AND cu.status = 0 ";
$courseConditionWhere = " AND cu.status = ".SessionEntity::STUDENT;
}
$sql = "SELECT DISTINCT exe_user_id
@ -3835,7 +3836,7 @@ EOT;
$courseCondition = "
INNER JOIN $courseUserSession cu
ON (cu.c_id = c.id AND cu.user_id = e.exe_user_id AND e.session_id = cu.session_id)";
$courseConditionWhere = ' AND cu.status = 0 ';
$courseConditionWhere = ' AND cu.status = '.SessionEntity::STUDENT;
}
$sql = "SELECT DISTINCT exe_user_id
@ -3920,7 +3921,7 @@ EOT;
$courseCondition = "
INNER JOIN $courseUserSession cu
ON (cu.c_id = a.c_id AND cu.user_id = e.exe_user_id AND e.session_id = cu.session_id)";
$courseConditionWhere = ' AND cu.status = 0 ';
$courseConditionWhere = ' AND cu.status = '.SessionEntity::STUDENT;
}
$sql = "SELECT $select_condition

@ -1,6 +1,7 @@
<?php
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Entity\Session as SessionEntity;
use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Framework\Container;
use ChamiloSession as Session;
@ -526,7 +527,7 @@ class MySpace
MAX(login_date) as login_date
FROM $tbl_user u, $tbl_session_course_user scu, $tbl_track_login
WHERE
scu.user_id = u.id AND scu.status=2 AND login_user_id=u.id
scu.user_id = u.id AND scu.status=".SessionEntity::COURSE_COACH." AND login_user_id=u.id
GROUP BY user_id ";
if (api_is_multiple_url_enabled()) {
@ -545,7 +546,7 @@ class MySpace
$tbl_session_rel_access_url session_rel_url
WHERE
scu.user_id = u.id AND
scu.status = 2 AND
scu.status = ".SessionEntity::COURSE_COACH." AND
login_user_id = u.id AND
access_url_id = $access_url_id AND
session_rel_url.session_id = scu.session_id
@ -2518,7 +2519,7 @@ class MySpace
WHERE
c_id = '$courseId' AND
session_id = '$session_id' AND
status<>2";
status = ".SessionEntity::STUDENT;
}
$rs = Database::query($sql);
$users = [];

@ -820,7 +820,7 @@ class SessionManager
$sessionCond = '';
}
$where = " WHERE c_id = '%s' AND s.status <> 2 $sessionCond";
$where = " WHERE c_id = '%s' AND s.status = ".Session::STUDENT." $sessionCond";
$limit = null;
if (!empty($options['limit'])) {
@ -941,7 +941,7 @@ class SessionManager
$course = api_get_course_info_by_id($courseId);
$where = " WHERE c_id = '%s' AND s.status <> 2 AND session_id = %s";
$where = " WHERE c_id = '%s' AND s.status = ".Session::STUDENT." AND session_id = %s";
$limit = null;
if (!empty($options['limit'])) {
@ -1054,7 +1054,7 @@ class SessionManager
$table_stats_access = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS);
$course = api_get_course_info_by_id($courseId);
$where = " WHERE c_id = '%s' AND s.status <> 2 ";
$where = " WHERE c_id = '%s' AND s.status = ".Session::STUDENT;
$limit = null;
if (!empty($options['limit'])) {
@ -1943,7 +1943,7 @@ class SessionManager
}
$sql = "SELECT user_id FROM $tbl_session_rel_course_rel_user
WHERE session_id = $sessionId AND status = 0";
WHERE session_id = $sessionId AND status = ".Session::STUDENT;
$result = Database::query($sql);
$existingUsers = [];
while ($row = Database::fetch_array($result)) {
@ -2024,8 +2024,7 @@ class SessionManager
WHERE
session_id = $sessionId AND
c_id = $courseId AND
status = 0
";
status = ".Session::STUDENT;
$result = Database::query($sql);
$existingUsers = [];
while ($row = Database::fetch_array($result)) {
@ -2272,7 +2271,7 @@ class SessionManager
WHERE
session_id = $sessionId AND
c_id = $courseId AND
status <> 2";
status = ".Session::STUDENT;
$result = Database::query($sql);
[$userCount] = Database::fetch_array($result);
@ -3414,7 +3413,7 @@ class SessionManager
// record so the user is NOT a coach for this course anymore
// and then exit
$sql = "UPDATE $tblSessionRelCourseRelUser
SET status = 0
SET status = ".Session::STUDENT."
WHERE
session_id = $sessionId AND
c_id = $courseId AND
@ -3448,7 +3447,7 @@ class SessionManager
// Then update or insert.
if (Database::num_rows($rs_check) > 0) {
$sql = "UPDATE $tblSessionRelCourseRelUser SET status = 2
$sql = "UPDATE $tblSessionRelCourseRelUser SET status = ".Session::COURSE_COACH."
WHERE
session_id = $sessionId AND
c_id = $courseId AND
@ -3778,7 +3777,7 @@ class SessionManager
$courseSessionQuery = "
SELECT scu.session_id as id
FROM $tbl_session_rel_course_rel_user scu
WHERE (scu.status = 2 AND scu.user_id = $userId)";
WHERE (scu.status = ".Session::COURSE_COACH." AND scu.user_id = $userId)";
$whereConditions = " OR (s.id_coach = $userId) ";
break;
@ -5138,17 +5137,17 @@ class SessionManager
// Delete session-course-user relationships students and coaches.
if ($updateCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user
WHERE session_id = '$session_id' AND status in ('0', '2')";
WHERE session_id = '$session_id' AND status in (".Session::STUDENT.", ".Session::COURSE_COACH.")";
Database::query($sql);
} else {
// Delete session-course-user relation ships *only* for students.
$sql = "DELETE FROM $tbl_session_course_user
WHERE session_id = '$session_id' AND status <> 2";
WHERE session_id = '$session_id' AND status =".Session::STUDENT;
Database::query($sql);
}
if ($deleteOnlyCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user
WHERE session_id = '$session_id' AND status in ('2')";
WHERE session_id = '$session_id' AND status = ".Session::COURSE_COACH;
Database::query($sql);
}
}
@ -5259,18 +5258,18 @@ class SessionManager
// Delete session-course-user relationships students and coaches.
if ($updateCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user
WHERE session_id = '$session_id' AND status in ('0', '2')";
WHERE session_id = '$session_id' AND status in (".Session::STUDENT.", ".Session::COURSE_COACH.")";
Database::query($sql);
} else {
// Delete session-course-user relation ships *only* for students.
$sql = "DELETE FROM $tbl_session_course_user
WHERE session_id = '$session_id' AND status <> 2";
WHERE session_id = '$session_id' AND status = ".Session::STUDENT;
Database::query($sql);
}
if ($deleteOnlyCourseCoaches) {
$sql = "DELETE FROM $tbl_session_course_user
WHERE session_id = '$session_id' AND status in ('2')";
WHERE session_id = '$session_id' AND status = ".Session::COURSE_COACH;
Database::query($sql);
}
} else {
@ -5799,7 +5798,7 @@ class SessionManager
WHERE
session_id = '$sessionId' AND
c_id = '$courseId' AND
status = 2";
status = ".Session::COURSE_COACH;
$result = Database::query($sql);
$coaches = [];
@ -5854,7 +5853,7 @@ class SessionManager
$sql = "SELECT DISTINCT user_id
FROM $table
WHERE session_id = '$sessionId' AND status = 2";
WHERE session_id = '$sessionId' AND status = ".Session::COURSE_COACH;
$result = Database::query($sql);
$coaches = [];
@ -7085,7 +7084,7 @@ class SessionManager
return $repo->findBy([
'user' => $coachId,
'status' => SessionRelCourseRelUser::STATUS_COURSE_COACH,
'status' => Session::COURSE_COACH,
]);
}
@ -7377,7 +7376,7 @@ class SessionManager
FROM $courseTable c
INNER JOIN $sessionCourseUserTable scu ON c.id = scu.c_id
INNER JOIN $userTable u ON scu.user_id = u.id
WHERE scu.status = 2 AND scu.session_id IN $sessionIdsString
WHERE scu.status = ".Session::COURSE_COACH." AND scu.session_id IN $sessionIdsString
ORDER BY scu.session_id ASC ";
$res = Database::query($sql);
$sessionCourseList = Database::store_result($res, 'ASSOC');
@ -9060,7 +9059,7 @@ class SessionManager
ON c.id = srcru.c_id
WHERE
srcru.user_id = $userId AND
srcru.status = 2";
srcru.status = ".Session::COURSE_COACH;
$res = Database::query($sql);

@ -3,6 +3,7 @@
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Component\Utils\ChamiloApi;
use Chamilo\CoreBundle\Entity\Session;
use Chamilo\CoreBundle\Entity\SessionRelCourseRelUser;
use Chamilo\CoreBundle\Entity\User;
use Chamilo\CoreBundle\Framework\Container;
@ -930,7 +931,7 @@ class Template
WHERE scu.status = :teacher_status AND scu.session = :session AND scu.course = :course
')
->setParameters([
'teacher_status' => SessionRelCourseRelUser::STATUS_COURSE_COACH,
'teacher_status' => Session::COURSE_COACH,
'session' => api_get_session_id(),
'course' => api_get_course_int_id(),
])

@ -3533,7 +3533,7 @@ class Tracking
// At first, courses where $coach_id is coach of the course //
$sql = 'SELECT session_id, c_id
FROM '.$tbl_session_course_user.'
WHERE user_id='.$coach_id.' AND status=2';
WHERE user_id='.$coach_id.' AND status = '.SessionEntity::COURSE_COACH;
if (api_is_multiple_url_enabled()) {
$tbl_session_rel_access_url = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION);
@ -3545,7 +3545,7 @@ class Tracking
ON (scu.session_id=sru.session_id)
WHERE
scu.user_id='.$coach_id.' AND
scu.status=2 AND
scu.status = '.SessionEntity::COURSE_COACH.' AND
sru.access_url_id = '.$access_url_id;
}
}
@ -3630,7 +3630,7 @@ class Tracking
// At first, courses where $coach_id is coach of the course
$sql = 'SELECT 1 FROM '.$tbl_session_course_user.'
WHERE user_id='.$coach_id.' AND status=2';
WHERE user_id='.$coach_id.' AND status = '.SessionEntity::COURSE_COACH;
$result = Database::query($sql);
if (Database::num_rows($result) > 0) {
return true;
@ -3679,7 +3679,7 @@ class Tracking
FROM '.$tbl_session_course_user.' sc
INNER JOIN '.$tbl_course.' c
ON (c.id = sc.c_id)
WHERE user_id = '.$coach_id.' AND status = 2';
WHERE sc.user_id = '.$coach_id.' AND sc.status = '.SessionEntity::COURSE_COACH;
if (api_is_multiple_url_enabled()) {
$access_url_id = api_get_current_access_url_id();
@ -3692,7 +3692,7 @@ class Tracking
ON (c.id = cru.c_id)
WHERE
scu.user_id='.$coach_id.' AND
scu.status=2 AND
scu.status = '.SessionEntity::COURSE_COACH.' AND
cru.access_url_id = '.$access_url_id;
}
}
@ -3855,7 +3855,7 @@ class Tracking
ON
s.id = session_course_user.session_id AND
session_course_user.user_id = $coach_id AND
session_course_user.status = 2
session_course_user.status = ".SessionEntity::COURSE_COACH."
INNER JOIN $tbl_session_rel_access_url session_rel_url
ON (s.id = session_rel_url.session_id)
$sqlInjectJoins

@ -2827,7 +2827,7 @@ class UserManager
$sessionListFromCourseCoach = [];
$sql = " SELECT DISTINCT session_id
FROM $tbl_session_course_user
WHERE user_id = $user_id AND status = 2 ";
WHERE user_id = $user_id AND status = ".SessionEntity::COURSE_COACH;
$result = Database::query($sql);
if (Database::num_rows($result)) {
@ -2920,7 +2920,7 @@ class UserManager
ON user.id = session_course_user.user_id OR session.id_coach = user.id
WHERE
session_course_user.session_id = $session_id AND (
(session_course_user.user_id = $user_id AND session_course_user.status = 2)
(session_course_user.user_id = $user_id AND session_course_user.status = ".SessionEntity::COURSE_COACH.")
OR session.id_coach = $user_id
)
ORDER BY i";
@ -2953,7 +2953,7 @@ class UserManager
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')
IF((session_course_user.user_id = 3 AND session_course_user.status = ".SessionEntity::COURSE_COACH."),'2', '5')
FROM $tbl_session_course_user as session_course_user
INNER JOIN $tbl_course AS course
ON course.id = session_course_user.c_id AND session_course_user.session_id = $session_id
@ -3065,7 +3065,7 @@ class UserManager
WHERE
s.id = $session_id AND
(
(scu.user_id = $user_id AND scu.status = 2) OR
(scu.user_id = $user_id AND scu.status = ".SessionEntity::COURSE_COACH.") OR
s.id_coach = $user_id
)
$where_access_url
@ -4295,7 +4295,7 @@ class UserManager
";
$sessionConditionsTeacher = " AND
(scu.status = 2 AND scu.user_id = '$userId')
(scu.status = ".SessionEntity::COURSE_COACH." AND scu.user_id = '$userId')
";
if ($checkSessionVisibility) {
@ -4640,7 +4640,7 @@ class UserManager
ON sru.user_id=u.id
WHERE
sru.c_id="'.$courseId.'" AND
sru.status=2';
sru.status = '.SessionEntity::COURSE_COACH;
$rs = Database::query($sql);
$row = Database::fetch_array($rs);
@ -4758,7 +4758,7 @@ class UserManager
session_id = $session_id AND
c_id = $courseId AND
user_id = $user_id AND
status = 2 ";
status = ".SessionEntity::COURSE_COACH;
$res = Database::query($sql);
if (Database::num_rows($res) > 0) {

@ -2,6 +2,8 @@
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Entity\Session;
ob_start();
$cidReset = true;
@ -41,7 +43,7 @@ if (isset($_GET["id_student"])) {
$id_student = intval($_GET["id_student"]);
$sql_coachs = "SELECT DISTINCT srcru.user_id as id_coach
FROM $tbl_session_rel_course_rel_user as srcru
WHERE srcru.user_id='$id_student' AND srcru.status=2";
WHERE srcru.user_id='$id_student' AND srcru.status=".Session::COURSE_COACH;
} else {
if (api_is_platform_admin()) {
$sql_coachs = "SELECT DISTINCT
@ -49,7 +51,7 @@ if (isset($_GET["id_student"])) {
FROM $tbl_user, $tbl_session_rel_course_rel_user srcru
WHERE
srcru.user_id=user_id AND
srcru.status=2 ".$order_clause;
srcru.status=".Session::COURSE_COACH." ".$order_clause;
} else {
$sql_coachs = "SELECT DISTINCT user_id as id_coach, user.id as user_id, lastname, firstname
FROM
@ -63,7 +65,7 @@ if (isset($_GET["id_student"])) {
course_rel_user.status='1' AND
course_rel_user.user_id='".api_get_user_id()."' AND
srcu.user_id = user.id AND
srcu.status = 2
srcu.status = ".Session::COURSE_COACH."
".$order_clause;
}
}

@ -408,7 +408,7 @@ if ($ajax_search) {
// Filter the user list in all courses in the session
foreach ($sessionUserInfo as $sessionUser) {
// filter students in session
if (0 != $sessionUser['status_in_session']) {
if (Session::STUDENT != $sessionUser['status_in_session']) {
continue;
}

@ -437,7 +437,7 @@ if ($ajax_search) {
// Filter the user list in all courses in the session
foreach ($sessionUserInfo as $sessionUser) {
// filter students in session
if (0 != $sessionUser['status_in_session']) {
if (Session::STUDENT != $sessionUser['status_in_session']) {
continue;
}

@ -161,7 +161,7 @@ if (0 === $session->getNbrCourses()) {
// Get coaches of the courses in session
$namesOfCoaches = [];
$coachSubscriptions = $session->getSessionRelCourseRelUsersByStatus($course, Session::COACH);
$coachSubscriptions = $session->getSessionRelCourseRelUsersByStatus($course, Session::COURSE_COACH);
if ($coachSubscriptions) {
/** @var SessionRelCourseRelUser $subscription */

@ -5,6 +5,9 @@
/**
* Implements the edition of course-session settings.
*/
use Chamilo\CoreBundle\Entity\Session;
$cidReset = true;
require_once __DIR__.'/../inc/global.inc.php';
@ -57,7 +60,7 @@ if (isset($_POST['formSent']) && $_POST['formSent']) {
// get all tutor by course_code in the session
$sql = "SELECT user_id
FROM $tbl_session_rel_course_rel_user
WHERE session_id = '$id_session' AND c_id = '".$courseId."' AND status = 2";
WHERE session_id = '$id_session' AND c_id = '".$courseId."' AND status = ".Session::COURSE_COACH;
$rs_coaches = Database::query($sql);
$coaches_course_session = [];
@ -99,7 +102,7 @@ if (isset($_POST['formSent']) && $_POST['formSent']) {
WHERE
session_id = '$id_session' AND
c_id = '".$courseId."' AND
status = 2 ";
status = ".Session::COURSE_COACH;
$rs = Database::query($sql);
if (Database::num_rows($rs) > 0) {

@ -160,7 +160,7 @@ if (isset($_POST['formSent'])) {
WHERE
scu.c_id = '{$rowCourses['c_id']}' AND
scu.session_id = '".$row['id']."' AND
scu.status = 2 ";
scu.status = ".Session::COURSE_COACH;
$rs_coachs = Database::query($sql);
$coachs = [];

@ -2,6 +2,8 @@
/* For licensing terms, see /license.txt */
use Chamilo\CoreBundle\Entity\Session;
$cidReset = true;
require_once __DIR__.'/../inc/global.inc.php';
@ -355,7 +357,7 @@ if (isset($_POST['formSent']) && $_POST['formSent']) {
user_id='$coach_id',
c_id = '$courseId',
session_id = '$session_id',
status = 2 ";
status = ".Session::COURSE_COACH;
$rs_coachs = Database::query($sql);
} else {
$error_message .= get_lang('This user doesn\'t exist').' : '.$coach_id.'<br />';

@ -260,7 +260,7 @@ if ('true' === $allowTutors) {
session_rcru.user_id = user.id AND
session_rcru.session_id = '".intval($id_session)."' AND
session_rcru.c_id ='".Database::escape_string($course['id'])."' AND
session_rcru.status=2";
session_rcru.status = ".Session::COURSE_COACH;
$rs = Database::query($sql);
$coachs = [];

@ -243,9 +243,9 @@ if (isset($_GET['action'])) {
// only users no coaches/teachers
if (COURSEMANAGER == $type) {
$sql .= " AND session_course_user.status = 2 ";
$sql .= " AND session_course_user.status = ".Session::COURSE_COACH;
} else {
$sql .= " AND session_course_user.status = 0 ";
$sql .= " AND session_course_user.status = .".Session::STUDENT;
}
$sql .= $sort_by_first_name ? ' ORDER BY user.firstname, user.lastname' : ' ORDER BY user.lastname, user.firstname';

@ -626,7 +626,7 @@ class BuyCoursesPlugin extends Plugin
$userCourseSubscriptions = $session->getSessionRelCourseRelUsersByStatus(
$course,
Chamilo\CoreBundle\Entity\Session::COACH
Chamilo\CoreBundle\Entity\Session::COURSE_COACH
);
foreach ($userCourseSubscriptions as $userCourseSubscription) {
@ -867,7 +867,7 @@ class BuyCoursesPlugin extends Plugin
$userCourseSubscriptions = $session->getSessionRelCourseRelUsersByStatus(
$course,
Chamilo\CoreBundle\Entity\Session::COACH
Chamilo\CoreBundle\Entity\Session::COURSE_COACH
);
foreach ($userCourseSubscriptions as $userCourseSubscription) {

@ -75,7 +75,7 @@ class Session implements ResourceWithAccessUrlInterface
public const STUDENT = 0;
public const DRH = 1;
public const COACH = 2;
public const COURSE_COACH = 2;
/**
* @Groups({"session:read", "session_rel_user:read"})
@ -497,7 +497,7 @@ class Session implements ResourceWithAccessUrlInterface
return false;
}
return $this->hasUserInCourse($user, $course, self::COACH);
return $this->hasUserInCourse($user, $course, self::COURSE_COACH);
}
public function getUserInCourse(User $user, Course $course, ?int $status = null): Collection

@ -47,14 +47,12 @@ class SessionRelCourseRelUser
{
use UserTrait;
public const STATUS_STUDENT = 0;
public const STATUS_COURSE_COACH = 2;
/**
* @var string[]
*/
public array $statusList = [
0 => 'student',
2 => 'course_coach',
Session::STUDENT => 'student',
Session::COURSE_COACH => 'course_coach',
];
/**
@ -117,7 +115,7 @@ class SessionRelCourseRelUser
$this->progress = 0;
$this->visibility = 1;
$this->legalAgreement = 0;
$this->status = self::STATUS_STUDENT;
$this->status = Session::STUDENT;
}
public function getSession(): Session

@ -71,7 +71,7 @@ class SessionRelUser
* @var string[]
*/
public array $relationTypeList = [
0 => 'student',
Session::STUDENT => 'student',
Session::DRH => 'drh',
];

@ -306,7 +306,7 @@ class UserRepository extends ResourceRepository implements PasswordUpgraderInter
$qb->expr()->andX(
$qb->expr()->eq('scu.session', $session->getId()),
$qb->expr()->eq('scu.course', $course->getId()),
$qb->expr()->eq('scu.status', SessionRelCourseRelUser::STATUS_COURSE_COACH)
$qb->expr()->eq('scu.status', Session::COURSE_COACH)
)
)
;

@ -137,10 +137,10 @@ class SessionRepository extends ServiceEntityRepository
;
break;
case Session::COACH:
case Session::COURSE_COACH:
if ($user->hasRole('ROLE_TEACHER')) {
$session->addUserInCourse(
Session::COACH,
Session::COURSE_COACH,
$user,
$course
);

@ -118,7 +118,7 @@ class SysAnnouncementRepository extends ServiceEntityRepository
// Check course coach
//$coaches = \SessionManager::getCoachesBySession($sessionId);
if ($this->security->isGranted('ROLE_TEACHER') &&
$session->getSessionRelCourseByUser($user, Session::COACH)->count() > 0
$session->getSessionRelCourseByUser($user, Session::COURSE_COACH)->count() > 0
) {
$show = true;

Loading…
Cancel
Save