Feature #1744 - Cleaning logical conditions: if ($_configuration['multiple_access_urls'] == true) ------> if ($_configuration['multiple_access_urls'])

skala
Ivan Tcholakov 15 years ago
parent 9ff4b4a7e3
commit f0c4747bf3
  1. 2
      index.php
  2. 6
      main/admin/add_courses_to_session.php
  3. 8
      main/admin/add_users_to_group.php
  4. 14
      main/admin/add_users_to_session.php
  5. 26
      main/admin/calendar.lib.php
  6. 2
      main/admin/course_add.php
  7. 8
      main/admin/course_edit.php
  8. 8
      main/admin/course_list.php
  9. 16
      main/admin/group_add.php
  10. 12
      main/admin/group_list.php
  11. 16
      main/admin/session_add.php
  12. 2
      main/admin/session_course_user.php
  13. 2
      main/admin/session_edit.php
  14. 4
      main/admin/session_export.php
  15. 14
      main/admin/session_list.php
  16. 10
      main/admin/settings.php
  17. 136
      main/admin/statistics/statistics.lib.php
  18. 8
      main/admin/subscribe_user2course.php
  19. 6
      main/admin/user_add.php
  20. 36
      main/admin/user_edit.php
  21. 4
      main/admin/user_export.php
  22. 2
      main/admin/user_information.php
  23. 72
      main/admin/user_list.php
  24. 318
      main/calendar/agenda.inc.php
  25. 50
      main/calendar/myagenda.inc.php
  26. 2
      main/inc/lib/add_course.lib.inc.php
  27. 2
      main/inc/lib/add_courses_to_session_functions.lib.php
  28. 4
      main/inc/lib/course.lib.php
  29. 10
      main/inc/lib/group_portal_manager.lib.php
  30. 50
      main/inc/lib/online.inc.php
  31. 46
      main/inc/lib/sessionmanager.lib.php
  32. 162
      main/inc/lib/tracking.lib.php
  33. 156
      main/inc/lib/usermanager.lib.php
  34. 134
      main/inc/local.inc.php
  35. 2
      main/metadata/playscormmdset.inc.php
  36. 18
      main/mySpace/index.php
  37. 2
      main/mySpace/user_add.php
  38. 4
      main/social/group_invitation.php
  39. 30
      main/user/subscribe_user.php
  40. 2
      main/user/user_add.php
  41. 48
      main/webservices/registration.soap.php
  42. 4
      user_portal.php

@ -574,7 +574,7 @@ function display_anonymous_course_list() {
//showing only the courses of the current access_url_id
global $_configuration;
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id != -1) {
$tbl_url_rel_course = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);

@ -1,6 +1,6 @@
<?php //$id: $
/* For licensing terms, see /license.txt */
/**
/**
* @package chamilo.admin
* @todo use formvalidator
*/
@ -210,7 +210,7 @@ if ($ajax_search) {
ORDER BY ".(sizeof($courses)?"(code IN(".implode(',',$courses).")) DESC,":"")." title";
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -241,7 +241,7 @@ if ($ajax_search) {
ORDER BY ".(sizeof($courses)?"(code IN(".implode(',',$courses).")) DESC,":"")." title";
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){

@ -119,7 +119,7 @@ function search_users($needle,$type,$relation_type) {
$sql = "SELECT user_id, username, lastname, firstname FROM $tbl_user user
WHERE (username LIKE '$needle%' OR firstname LIKE '$needle%' OR lastname LIKE '$needle%')
AND user_id<>'$user_anonymous' $without_user_id $order_clause LIMIT 11";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$sql = "SELECT user.user_id, username, lastname, firstname FROM $tbl_user user
@ -150,7 +150,7 @@ function search_users($needle,$type,$relation_type) {
if (!empty($group_id) && !empty($relation_type)) {
$sql = "SELECT user_id, username, lastname, firstname FROM $tbl_user user
WHERE ".(api_sort_by_first_name() ? 'firstname' : 'lastname')." LIKE '$needle%' AND user_id<>'$user_anonymous' $without_user_id $order_clause ";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$sql = "SELECT user.user_id, username, lastname, firstname FROM $tbl_user user
@ -290,7 +290,7 @@ if ($ajax_search) {
$many_users = false;
$sql = "SELECT count(user_id) FROM $tbl_user user
WHERE ".(api_sort_by_first_name() ? 'firstname' : 'lastname')." LIKE '$needle%' AND user_id<>'$user_anonymous' $without_user_id ";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$sql = "SELECT count(user.user_id) FROM $tbl_user user
@ -325,7 +325,7 @@ if ($ajax_search) {
$sql = "SELECT user_id, username, lastname, firstname FROM $tbl_user user
WHERE ".(api_sort_by_first_name() ? 'firstname' : 'lastname')." LIKE '$needle%' AND user_id<>'$user_anonymous' $without_user_id $order_clause ";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$sql = "SELECT user.user_id, username, lastname, firstname FROM $tbl_user user

@ -108,7 +108,7 @@ function search_users($needle,$type)
$sql = 'SELECT user_id, username, lastname, firstname FROM '.$tbl_user.' user
WHERE (username LIKE "'.$needle.'%"
OR firstname LIKE "'.$needle.'%"
OR lastname LIKE "'.$needle.'%") AND user_id<>"'.$user_anonymous.'" AND user.status<>'.DRH.''.
OR lastname LIKE "'.$needle.'%") AND user_id<>"'.$user_anonymous.'" AND user.status<>'.DRH.''.
$order_clause.
' LIMIT 11';
} else {
@ -118,7 +118,7 @@ function search_users($needle,$type)
}
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -238,7 +238,7 @@ if($_POST['form_sent']) {
SessionManager::suscribe_users_to_session($id_session,$UserList,true,true);
//adding the session to the access_url_rel_session table
//if(empty($_GET['add']))
//header('Location: '.Security::remove_XSS($_GET['page']).'?id_session='.$id_session);
//else
@ -268,7 +268,7 @@ if ($ajax_search) {
AND $tbl_session_rel_user.id_session = ".intval($id_session)."
WHERE status<>".DRH." $order_clause";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -318,7 +318,7 @@ if ($ajax_search) {
}
$where_filter ='';
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
if (is_array($final_result) && count($final_result)>0) {
$where_filter = " AND u.user_id IN ('".implode("','",$final_result)."') ";
} else {
@ -351,7 +351,7 @@ if ($ajax_search) {
WHERE u.status<>".DRH."
$order_clause";
}
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -385,7 +385,7 @@ if ($ajax_search) {
ON $tbl_session_rel_user.id_user = u.user_id AND $tbl_session_rel_user.id_session = '$id_session' AND $tbl_session_rel_user.relation_type<>".SESSION_RELATION_TYPE_RRHH."
WHERE u.status<>".DRH." $order_clause";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){

@ -397,8 +397,8 @@ echo "</table>";
* @author: Patrick Cool <patrick.cool@UGent.be>, Ghent University
* @return integer the id of the last added agenda item
*/
function store_new_agenda_item() {
function store_new_agenda_item() {
$TABLEAGENDA = Database::get_main_table(TABLE_MAIN_SYSTEM_CALENDAR);
//$t_agenda_repeat = Database::get_course_Table(TABLE_AGENDA_REPEAT);
@ -481,7 +481,7 @@ function display_courseadmin_links() {
}
function display_student_links() {
function display_student_links() {
if ($_SESSION['sort'] == 'DESC') {
echo "<a href='".api_get_self()."?sort=asc&amp;origin=".Security::remove_XSS($_GET['origin'])."'>".Display::return_icon('calendar_up.gif',get_lang('AgendaSortChronologicallyUp')).' '.get_lang("AgendaSortChronologicallyUp")."</a>";
} else {
@ -558,7 +558,7 @@ function store_edited_agenda_item() {
function save_edit_agenda_item($id,$title,$content,$start_date,$end_date)
{
$TABLEAGENDA = Database::get_main_table(TABLE_MAIN_SYSTEM_CALENDAR);
$id=Database::escape_string($id);
$title=Database::escape_string($title);
$content=Database::escape_string($content);
@ -636,7 +636,7 @@ function display_agenda_items()
global $DaysShort, $DaysLong, $MonthsLong;
global $is_courseAdmin;
global $dateFormatLong, $timeNoSecFormat,$charset, $_user, $_course;
$TABLEAGENDA = Database::get_main_table(TABLE_MAIN_SYSTEM_CALENDAR);
// getting the group memberships
@ -934,10 +934,10 @@ function display_one_agenda_item($agenda_id)
global $is_courseAdmin;
global $dateFormatLong, $timeNoSecFormat, $charset;
global $_user;
$TABLEAGENDA = Database::get_main_table(TABLE_MAIN_SYSTEM_CALENDAR);
$TABLE_ITEM_PROPERTY = Database::get_course_table(TABLE_ITEM_PROPERTY);
$agenda_id=Database::escape_string($agenda_id);
//echo "displaying agenda items";
@ -1193,7 +1193,7 @@ function show_user_group_filter_form()
function show_add_form($id = '')
{
global $MonthsLong;
$htmlHeadXtra[] = to_javascript();
// the default values for the forms
if ($_GET['originalresource'] !== 'no')
@ -1634,7 +1634,7 @@ function get_agendaitems($month, $year)
//$mycourse = api_get_course_info();
$portal_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
$url = api_get_access_url($access_url_id);
@ -1954,7 +1954,7 @@ function get_day_agendaitems($courses_dbs, $month, $year, $day)
//echo $sqlquery;
$result = Database::query($sqlquery);
$portal_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
$url = api_get_access_url($access_url_id);
@ -2016,7 +2016,7 @@ function get_week_agendaitems($courses_dbs, $month, $year, $week = '')
global $_user;
global $_configuration;
global $setting_agenda_link;
$TABLEAGENDA = Database :: get_main_table(TABLE_MAIN_SYSTEM_CALENDAR);
$items = array ();
@ -2068,7 +2068,7 @@ function get_week_agendaitems($courses_dbs, $month, $year, $week = '')
$result = Database::query($sqlquery);
$portal_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
$url = api_get_access_url($access_url_id);
@ -3038,7 +3038,7 @@ function agenda_add_repeat_item($course_info,$orig_id,$type,$end,$orig_dest)
*/
function agenda_import_ical($course_info,$file) {
require_once api_get_path(LIBRARY_PATH).'fileUpload.lib.php';
$charset = api_get_setting('platform_charset');
$filepath = api_get_path(SYS_ARCHIVE_PATH).$file['name'];

@ -35,7 +35,7 @@ $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname' : ' O
$table_user = Database :: get_main_table(TABLE_MAIN_USER);
$sql = "SELECT user_id,lastname,firstname FROM $table_user WHERE status=1".$order_clause;
//filtering teachers when creating a course
if ($_configuration['multiple_access_urls']==true){
if ($_configuration['multiple_access_urls']) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql = "SELECT u.user_id,lastname,firstname FROM $table_user as u
INNER JOIN $access_url_rel_user_table url_rel_user

@ -50,13 +50,13 @@ while ($obj = Database::fetch_object($res)) {
}
// Get all possible teachers without the course teachers
if ($_configuration['multiple_access_urls']==true){
if ($_configuration['multiple_access_urls']) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql = "SELECT u.user_id,lastname,firstname FROM $table_user as u
INNER JOIN $access_url_rel_user_table url_rel_user
ON (u.user_id=url_rel_user.user_id) WHERE url_rel_user.access_url_id=".api_get_current_access_url_id()." AND status=1".$order_clause;
} else {
$sql = "SELECT user_id,lastname,firstname FROM $table_user WHERE status='1'".$order_clause;
$sql = "SELECT user_id,lastname,firstname FROM $table_user WHERE status='1'".$order_clause;
}
$res = Database::query($sql);
@ -82,7 +82,7 @@ if (count($course_teachers)==0) {
$sql='SELECT tutor_name FROM '.$course_table.' WHERE code="'.$course_code.'"';
$res = Database::query($sql);
$tutor_name=Database::result($res,0,0);
$course['tutor_name']=array_search($tutor_name,$platform_teachers);
$course['tutor_name']=array_search($tutor_name,$platform_teachers);
}
// Build the form
@ -166,7 +166,7 @@ foreach ($list_course_extra_field as $extra_field) {
$form->addElement('hidden', '_extra_'.$extra_field['field_variable'], 0);
$field_display_text=$extra_field['field_display_text'];
$form->addElement('checkbox', 'extra_'.$extra_field['field_variable'],get_lang('SpecialCourse') , get_lang($extra_field['field_default_value']).' '.Display::return_icon('synthese_view.gif',get_lang('AllUsersAreAutomaticallyRegistered')), $checked);
break;
/* case USER_FIELD_TYPE_SELECT_MULTIPLE:
case USER_FIELD_TYPE_DATE:

@ -27,7 +27,7 @@ function get_number_of_courses() {
$sql = "SELECT COUNT(code) AS total_number_of_items FROM $course_table";
global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_course_table = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$sql.= " INNER JOIN $access_url_rel_course_table url_rel_course ON (code=url_rel_course.course_code)";
}
@ -50,7 +50,7 @@ function get_number_of_courses() {
}
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_course.access_url_id=".api_get_current_access_url_id();
}
@ -69,7 +69,7 @@ function get_course_data($from, $number_of_items, $column, $direction)
$sql = "SELECT code AS col0, visual_code AS col1, title AS col2, course_language AS col3, category_code AS col4, subscribe AS col5, unsubscribe AS col6, tutor_name as col7, code AS col8, visibility AS col9,directory as col10 FROM $course_table";
//$sql = "SELECT code AS col0, visual_code AS col1, title AS col2, course_language AS col3, category_code AS col4, subscribe AS col5, unsubscribe AS col6, code AS col7, tutor_name as col8, code AS col9, visibility AS col10,directory as col11 FROM $course_table";
global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_course_table = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$sql.= " INNER JOIN $access_url_rel_course_table url_rel_course ON (code=url_rel_course.course_code)";
}
@ -92,7 +92,7 @@ function get_course_data($from, $number_of_items, $column, $direction)
}
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_course.access_url_id=".api_get_current_access_url_id();
}

@ -36,8 +36,8 @@ function text_longitud(){
document.forms[0].description.value = textarea;
}else{
textarea = document.forms[0].description.value;
}
}
}
}
</script>';
// Database table definitions
@ -103,19 +103,19 @@ if( $form->validate()) {
$picture_uri = '';
$name = $values['name'];
$description = $values['description'];
$url = $values['url'];
$url = $values['url'];
$status = intval($values['visibility']);
$picture = $_FILES['picture'];
$group_id = GroupPortalManager::add($name, $description, $url, $status);
if (!empty($picture['name'])) {
$picture_uri = GroupPortalManager::update_group_picture($group_id, $_FILES['picture']['name'], $_FILES['picture']['tmp_name']);
GroupPortalManager::update($group_id, $name, $description, $url,$status, $picture_uri);
}
//@todo send emails
/* if (!empty($email) && $send_mail) {
$recipient_name = api_get_person_name($firstname, $lastname, null, PERSON_NAME_EMAIL_ADDRESS);
$emailsubject = '['.api_get_setting('siteName').'] '.get_lang('YourReg').' '.api_get_setting('siteName');
@ -123,9 +123,9 @@ if( $form->validate()) {
$sender_name = api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'), null, PERSON_NAME_EMAIL_ADDRESS);
$email_admin = api_get_setting('emailAdministrator');
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
if ($access_url_id != -1) {
$url = api_get_access_url($access_url_id);
$emailbody = get_lang('Dear')." ".stripslashes(api_get_person_name($firstname, $lastname)).",\n\n".get_lang('YouAreReg')." ".api_get_setting('siteName') ." ".get_lang('WithTheFollowingSettings')."\n\n".get_lang('Username')." : ". $username ."\n". get_lang('Pass')." : ".stripslashes($password)."\n\n" .get_lang('Address') ." ". api_get_setting('siteName') ." ". get_lang('Is') ." : ". $url['url'] ."\n\n". get_lang('Problem'). "\n\n". get_lang('Formula').",\n\n".api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'))."\n". get_lang('Manager'). " ".api_get_setting('siteName')."\nT. ".api_get_setting('administratorTelephone')."\n" .get_lang('Email') ." : ".api_get_setting('emailAdministrator');
}
@ -135,7 +135,7 @@ if( $form->validate()) {
}
@api_mail($recipient_name, $email, $emailsubject, $emailbody, $sender_name, $email_admin);
}*/
Security::clear_token();
$tok = Security::get_token();
header('Location: group_list.php?action=show_message&message='.urlencode(get_lang('GroupAdded')).'&sec_token='.$tok);

@ -34,7 +34,7 @@ function get_number_of_groups()
// adding the filter to see the user's only of the current access_url
/*
global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}
@ -46,7 +46,7 @@ function get_number_of_groups()
// adding the filter to see the user's only of the current access_url
/*
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}*/
@ -76,7 +76,7 @@ function get_group_data($from, $number_of_items, $column, $direction)
// adding the filter to see the user's only of the current access_url
/*global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}*/
@ -87,7 +87,7 @@ function get_group_data($from, $number_of_items, $column, $direction)
}
/*
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}*/
@ -134,7 +134,7 @@ function get_recent_group_data($from =0 , $number_of_items = 5, $column, $direct
// adding the filter to see the user's only of the current access_url
/*global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}*/
@ -145,7 +145,7 @@ function get_recent_group_data($from =0 , $number_of_items = 5, $column, $direct
}
/*
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}*/

@ -60,7 +60,7 @@ function search_coachs($needle) {
' LIMIT 10';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -116,10 +116,10 @@ if ($_POST['formSent']) {
$id_session_category = $_POST['session_category'];
$id_visibility = $_POST['session_visibility'];
$return = SessionManager::create_session($name,$year_start,$month_start,$day_start,$year_end,$month_end,$day_end,$nb_days_acess_before,$nb_days_acess_after,$nolimit,$coach_username, $id_session_category,$id_visibility);
global $_configuration;
require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
UrlManager::add_session_to_url($return,$access_url_id);
@ -127,8 +127,8 @@ if ($_POST['formSent']) {
// we are filling by default the access_url_rel_session table
UrlManager::add_session_to_url($return,1);
}
if ($return == strval(intval($return))) {
// integer => no error on session creation
header('Location: add_courses_to_session.php?id_session='.$return.'&add=true&msg=');
@ -178,7 +178,7 @@ if (intval($count_users)<50) {
$order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username';
$sql="SELECT user_id,lastname,firstname,username FROM $tbl_user WHERE status='1'".$order_clause;
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -197,7 +197,7 @@ if (intval($count_users)<50) {
<option value="<?php echo $enreg['username']; ?>" <?php if($sent && $enreg['user_id'] == $id_coach) echo 'selected="selected"'; ?>><?php echo api_get_person_name($enreg['firstname'], $enreg['lastname']).' ('.$enreg['username'].')'; ?></option>
<?php endforeach; ?>
</select>
<?php
echo Display::return_icon('synthese_view.gif',get_lang('ActivityCoach'));
} else {
@ -382,7 +382,7 @@ for ($i=$thisYear-5;$i <= ($thisYear+5);$i++) {
<td width="40%"><?php echo get_lang('SessionVisibility') ?></td>
<td width="60%">
<select name="session_visibility" style="width:250px;">
<?php
<?php
$visibility_list = array(SESSION_VISIBLE_READ_ONLY=>get_lang('SessionReadOnly'), SESSION_VISIBLE=>get_lang('SessionAccessible'), SESSION_INVISIBLE=>api_ucfirst(get_lang('SessionNotAccessible')));
foreach($visibility_list as $key=>$item): ?>
<option value="<?php echo $key; ?>" <?php if($item == $visibility_id) echo 'selected="selected"'; ?>><?php echo $item; ?></option>

@ -153,7 +153,7 @@ $sql_all="SELECT code, title, visual_code, src.id_session " .
ORDER BY ".(sizeof($courses)?"(code IN(".implode(',',$courses).")) DESC,":"")." title";
*/
/*global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){

@ -66,7 +66,7 @@ if ($_POST['formSent']) {
$order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username';
$sql="SELECT user_id,lastname,firstname,username FROM $tbl_user WHERE status='1'".$order_clause;
if ($_configuration['multiple_access_urls']==true){
if ($_configuration['multiple_access_urls']) {
$table_access_url_rel_user= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {

@ -73,7 +73,7 @@ if ($_POST['formSent'] )
ON $tbl_user.user_id = $tbl_session.id_coach ORDER BY id";
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$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){
@ -279,7 +279,7 @@ Display::display_header($tool_name);
//select of sessions
$sql = "SELECT id, name FROM $tbl_session ORDER BY name";
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$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){

@ -138,12 +138,12 @@ if (isset ($_GET['search']) && $_GET['search'] == 'advanced') {
$where.= ' session_category_id = "'.$id_category.'" ';
$cond_url.= '&amp;id_category='.$id_category;
}
$user_id= $_user['user_id'];
if (api_is_session_admin()==true) {
$where.=" AND s.session_admin_id = $user_id ";
}
//Get list sessions
$sort = ($sort != "name_category")? 's.'.$sort : 'category_name';
$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.visibility ".
@ -156,11 +156,11 @@ if (isset ($_GET['search']) && $_GET['search'] == 'advanced') {
$query_rows = "SELECT count(*) as total_rows
FROM $tbl_session s
LEFT JOIN $tbl_session_category sc ON s.session_category_id = sc.id
INNER JOIN $tbl_user u ON s.id_coach = u.user_id
INNER JOIN $tbl_user u ON s.id_coach = u.user_id
$where ";
//filtering the session list by access_url
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$table_access_url_rel_session= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_SESSION);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
@ -181,7 +181,7 @@ if (isset ($_GET['search']) && $_GET['search'] == 'advanced') {
$where ";
}
}
$result_rows = Database::query($query_rows);
$recorset = Database::fetch_array($result_rows);
@ -206,7 +206,7 @@ if (isset ($_GET['search']) && $_GET['search'] == 'advanced') {
if (!isset($_GET['id_category'])) {
echo '<a href="'.api_get_path(WEB_CODE_PATH).'admin/session_add.php">'.Display::return_icon('view_more_stats.gif',get_lang('AddSession')).get_lang('AddSession').'</a>';
}
echo '<a href="'.api_get_path(WEB_CODE_PATH).'admin/add_many_session_to_category.php?id_category='.intval($_GET['id_category']).'">'.Display::return_icon('view_more_stats.gif',get_lang('AddSessionsInCategories')).get_lang('AddSessionsInCategories').'</a>';
echo '<a href="'.api_get_path(WEB_CODE_PATH).'admin/session_category_list.php">'.Display::return_icon('folder_document.gif',get_lang('ListSessionCategory')).get_lang('ListSessionCategory').'</a>';
echo '</div>';

@ -135,9 +135,9 @@ if (!empty($_GET['category']) && !in_array($_GET['category'], array('Plugins', '
$default_values = array();
foreach($settings as $row) {
// Settings to avoid
$rows_to_avoid = array('search_enabled', 'gradebook_enable');
$rows_to_avoid = array('search_enabled', 'gradebook_enable');
if (in_array($row['variable'], $rows_to_avoid)) { continue; }
$anchor_name = $row['variable'].(!empty($row['subkey']) ? '_'.$row['subkey'] : '');
$form->addElement('html',"\n<a name=\"$anchor_name\"></a>\n");
@ -147,12 +147,12 @@ if (!empty($_GET['category']) && !in_array($_GET['category'], array('Plugins', '
$form->addElement('style_submit_button', null,get_lang('SaveSettings'), 'class="save"');
$form->addElement('html','</div>');
}
$i++;
$form->addElement('header', null, get_lang($row['title']));
if ($row['access_url_changeable']=='1' && $_configuration['multiple_access_urls']==true) {
if ($row['access_url_changeable'] == '1' && $_configuration['multiple_access_urls']) {
$form->addElement('html', '<div style="float:right;">'.Display::return_icon('shared_setting.png',get_lang('SharedSettingIconComment')).'</div>');
}
@ -253,7 +253,7 @@ if (!empty($_GET['category']) && !in_array($_GET['category'], array('Plugins', '
if (api_get_setting('allow_social_tool') == 'true') {
if ($rowkeys['variable'] == 'show_tabs' && $rowkeys['subkey'] == 'my_profile') {continue;}
}
//hiding the gradebook option
if ($rowkeys['variable'] == 'show_tabs' && $rowkeys['subkey'] == 'my_gradebook') {continue;}

@ -5,7 +5,7 @@ require_once api_get_path(LIBRARY_PATH).'formvalidator/FormValidator.class.php';
* This class provides some functions for statistics
* @package chamilo.statistics
*/
class Statistics {
class Statistics {
/**
* Converts a number of bytes in a formatted string
* @param int $size
@ -28,7 +28,7 @@ class Statistics {
$course_table = Database :: get_main_table(TABLE_MAIN_COURSE);
$access_url_rel_course_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT COUNT(*) AS number FROM ".$course_table." as c, ".$access_url_rel_course_table." as u WHERE u.course_code=c.code AND access_url_id='".$current_url_id."'";
if (isset ($category_code)) {
$sql .= " AND category_code = '".Database::escape_string($category_code)."'";
@ -37,13 +37,13 @@ class Statistics {
$sql = "SELECT COUNT(*) AS number FROM ".$course_table." ";
if (isset ($category_code)) {
$sql .= " WHERE category_code = '".Database::escape_string($category_code)."'";
}
}
}
$res = Database::query($sql);
$obj = Database::fetch_object($res);
return $obj->number;
}
/**
* Count users
* @param int optional, user status (COURSEMANAGER or STUDENT), if it's not setted it'll count all users.
@ -52,7 +52,7 @@ class Statistics {
* @return int Number of users counted
*/
function count_users($status = null, $category_code = null, $count_invisible_courses = true) {
global $_configuration;
// Database table definitions
$course_user_table = Database :: get_main_table(TABLE_MAIN_COURSE_USER);
@ -60,24 +60,24 @@ class Statistics {
$user_table = Database :: get_main_table(TABLE_MAIN_USER);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
$status_filter = isset($status)?' AND status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(u.user_id)) AS number FROM $user_table as u, $access_url_rel_user_table as url WHERE u.user_id=url.user_id AND access_url_id='".$current_url_id."' $status_filter ";
if ($_configuration['multiple_access_urls']) {
$status_filter = isset($status)?' AND status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(u.user_id)) AS number FROM $user_table as u, $access_url_rel_user_table as url WHERE u.user_id=url.user_id AND access_url_id='".$current_url_id."' $status_filter ";
if (isset ($category_code)) {
$sql = "SELECT COUNT(DISTINCT(cu.user_id)) AS number FROM $course_user_table cu, $course_table c, $access_url_rel_user_table as url WHERE c.code = cu.course_code AND c.category_code = '".Database::escape_string($category_code)."' AND cu.user_id=url.user_id AND access_url_id='".$current_url_id."' $status_filter ";
}
} else {
$status_filter = isset($status)?' WHERE status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(user_id)) AS number FROM $user_table $status_filter ";
} else {
$status_filter = isset($status)?' WHERE status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(user_id)) AS number FROM $user_table $status_filter ";
if (isset ($category_code)) {
$status_filter = isset($status)?' AND status = '.intval($status):'';
$sql = "SELECT COUNT(DISTINCT(cu.user_id)) AS number FROM $course_user_table cu, $course_table c WHERE c.code = cu.course_code AND c.category_code = '".Database::escape_string($category_code)."' $status_filter ";
}
}
}
$res = Database::query($sql);
$obj = Database::fetch_object($res);
return $obj->number;
@ -94,7 +94,7 @@ class Statistics {
$table_user = Database::get_main_table(TABLE_MAIN_USER);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT count(default_id) AS total_number_of_items FROM $track_e_default, $table_user user, $access_url_rel_user_table url WHERE default_user_id = user.user_id AND user.user_id=url.user_id AND access_url_id='".$current_url_id."'";
} else {
$sql = "SELECT count(default_id) AS total_number_of_items FROM $track_e_default, $table_user user WHERE default_user_id = user.user_id ";
@ -119,15 +119,15 @@ class Statistics {
$table_course = Database::get_main_table(TABLE_MAIN_COURSE);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
$column = intval($column);
$from = intval($from);
$number_of_items = intval($number_of_items);
if (!in_array($direction, array('ASC','DESC'))) {
$direction = 'DESC';
}
if ($_configuration['multiple_access_urls'] == true){
}
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT
default_event_type as col0,
default_value_type as col1,
@ -135,7 +135,7 @@ class Statistics {
user.username as col3,
default_date as col4
FROM $track_e_default as track_default, $table_user as user, $access_url_rel_user_table as url
WHERE track_default.default_user_id = user.user_id AND url.user_id=user.user_id AND access_url_id='".$current_url_id."'";
WHERE track_default.default_user_id = user.user_id AND url.user_id=user.user_id AND access_url_id='".$current_url_id."'";
} else {
$sql = "SELECT
default_event_type as col0,
@ -211,7 +211,7 @@ class Statistics {
function print_stats($title, $stats, $show_total = true, $is_file_size = false) {
$total = 0;
$data = Statistics::rescale($stats);
echo '<table class="data_table" cellspacing="0" cellpadding="3">
<tr><th colspan="'.($show_total ? '4' : '3').'">'.$title.'</th></tr>';
$i = 0;
@ -228,7 +228,7 @@ class Statistics {
} else {
$number_label = Statistics::make_size_string($number);
}
echo '<tr class="row_'.($i%2 == 0 ? 'odd' : 'even').'">
<td width="150">'.$subtitle.'</td>
<td width="550">
@ -260,9 +260,9 @@ class Statistics {
$table = Database::get_statistic_table(TABLE_STATISTIC_TRACK_E_LOGIN);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$table_url = ", $access_url_rel_user_table";
$where_url = " WHERE login_user_id=user_id AND access_url_id='".$current_url_id."'";
$where_url = " WHERE login_user_id=user_id AND access_url_id='".$current_url_id."'";
} else {
$table_url = '';
$where_url='';
@ -310,9 +310,9 @@ class Statistics {
$table = Database::get_statistic_table(TABLE_STATISTIC_TRACK_E_LOGIN);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$table_url = ", $access_url_rel_user_table";
$where_url = " AND login_user_id=user_id AND access_url_id='".$current_url_id."'";
$where_url = " AND login_user_id=user_id AND access_url_id='".$current_url_id."'";
} else {
$table_url = '';
$where_url='';
@ -336,7 +336,7 @@ class Statistics {
$table = Database::get_statistic_table(TABLE_STATISTIC_TRACK_E_ACCESS);
$access_url_rel_course_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$current_url_id = api_get_current_access_url_id();
$tools = array('announcement','assignment','calendar_event',
'chat','conference','course_description','document',
'dropbox','group','learnpath','link','quiz',
@ -345,16 +345,16 @@ class Statistics {
foreach ($tools as $tool) {
$tool_names[$tool] = get_lang(ucfirst($tool), '');
}
if ($_configuration['multiple_access_urls'] == true){
$sql = "SELECT access_tool, count( access_id )
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT access_tool, count( access_id )
AS number_of_logins FROM $table, $access_url_rel_course_table
WHERE access_tool IN ('".implode("','",$tools)."') AND course_code = access_cours_code AND access_url_id='".$current_url_id."'
GROUP BY access_tool ";
} else {
$sql = "SELECT access_tool, count( access_id )
AS number_of_logins FROM $table
WHERE access_tool IN ('".implode("','",$tools)."')
GROUP BY access_tool ";
$sql = "SELECT access_tool, count( access_id )
AS number_of_logins FROM $table
WHERE access_tool IN ('".implode("','",$tools)."')
GROUP BY access_tool ";
}
$res = Database::query($sql);
$result = array();
@ -371,13 +371,13 @@ class Statistics {
$table = Database :: get_main_table(TABLE_MAIN_COURSE);
$access_url_rel_course_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
$sql = "SELECT course_language, count( c.code )
AS number_of_courses
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT course_language, count( c.code )
AS number_of_courses
FROM $table as c, $access_url_rel_course_table as u WHERE u.course_code=c.code AND access_url_id='".$current_url_id."' GROUP BY course_language";
} else {
$sql = "SELECT course_language, count( code )
AS number_of_courses
} else {
$sql = "SELECT course_language, count( code )
AS number_of_courses
FROM $table GROUP BY course_language ";
}
$res = Database::query($sql);
@ -395,7 +395,7 @@ class Statistics {
$user_table = Database :: get_main_table(TABLE_MAIN_USER);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$url_condition = ", $access_url_rel_user_table as url WHERE url.user_id=u.user_id AND access_url_id='".$current_url_id."'";
$url_condition2 = " AND url.user_id=u.user_id AND access_url_id='".$current_url_id."'";
$table = ", $access_url_rel_user_table as url ";
@ -403,14 +403,14 @@ class Statistics {
$sql = "SELECT COUNT(*) AS n FROM $user_table as u ".$url_condition;
$res = Database::query($sql);
$count1 = Database::fetch_object($res);
$sql = "SELECT COUNT(*) AS n FROM $user_table as u $table
$sql = "SELECT COUNT(*) AS n FROM $user_table as u $table
WHERE LENGTH(picture_uri) > 0 $url_condition2";
$res = Database::query($sql);
$count2 = Database::fetch_object($res);
// #users without picture
$result[get_lang('No')] = $count1->n - $count2->n;
$result[get_lang('No')] = $count1->n - $count2->n;
$result[get_lang('Yes')] = $count2->n; // #users with picture
Statistics::print_stats(get_lang('CountUsers').' ('.get_lang('UserPicture').')',$result,true);
}
@ -457,7 +457,7 @@ class Statistics {
global $_configuration;
$access_url_rel_course_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$current_url_id = api_get_current_access_url_id();
$columns[0] = 'access_cours_code';
$columns[1] = 'access_date';
$sql_order[SORT_ASC] = 'ASC';
@ -486,16 +486,16 @@ class Statistics {
$values = $form->exportValues();
$date_diff = $values['date_diff'];
$table = Database::get_statistic_table(TABLE_STATISTIC_TRACK_E_LASTACCESS);
if ($_configuration['multiple_access_urls'] == true){
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT * FROM $table, $access_url_rel_course_table WHERE course_code = access_cours_code AND access_url_id='".$current_url_id."'
GROUP BY access_cours_code
HAVING access_cours_code <> ''
GROUP BY access_cours_code
HAVING access_cours_code <> ''
AND DATEDIFF( NOW() , access_date ) <= ". $date_diff;
} else {
$sql = "SELECT * FROM $table
GROUP BY access_cours_code
HAVING access_cours_code <> ''
AND DATEDIFF( NOW() , access_date ) <= ". $date_diff;
$sql = "SELECT * FROM $table
GROUP BY access_cours_code
HAVING access_cours_code <> ''
AND DATEDIFF( NOW() , access_date ) <= ". $date_diff;
}
$res = Database::query($sql);
$number_of_courses = Database::num_rows($res);
@ -542,19 +542,19 @@ class Statistics {
$field = 'user_receiver_id';
break;
}
if ($_configuration['multiple_access_urls'] == true){
$sql = "SELECT lastname, firstname, username,
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT lastname, firstname, username,
COUNT($field) AS count_message
FROM ".$access_url_rel_user_table." as url, ".$message_table." m
LEFT JOIN ".$user_table." u ON m.$field = u.user_id
WHERE url.user_id = m.$field AND access_url_id='".$current_url_id."'
GROUP BY m.$field";
} else {
$sql = "SELECT lastname, firstname, username,
$sql = "SELECT lastname, firstname, username,
COUNT($field) AS count_message
FROM ".$message_table." m
FROM ".$message_table." m
LEFT JOIN ".$user_table." u ON m.$field = u.user_id
GROUP BY m.$field";
GROUP BY m.$field";
}
$res = Database::query($sql);
$messages_sent = array();
@ -562,7 +562,7 @@ class Statistics {
if (empty($messages['username'])) {
$messages['username'] = get_lang('Unknown');
}
$users = api_get_person_name($messages['firstname'], $messages['lastname']).'<br />('.$messages['username'].')';
$users = api_get_person_name($messages['firstname'], $messages['lastname']).'<br />('.$messages['username'].')';
$messages_sent[$users] = $messages['count_message'];
}
return $messages_sent;
@ -577,24 +577,24 @@ class Statistics {
$user_table = Database::get_main_table(TABLE_MAIN_USER);
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$current_url_id = api_get_current_access_url_id();
if ($_configuration['multiple_access_urls'] == true){
$sql = "SELECT lastname, firstname, username,
if ($_configuration['multiple_access_urls']) {
$sql = "SELECT lastname, firstname, username,
COUNT(friend_user_id) AS count_friend
FROM ".$access_url_rel_user_table." as url, ".$user_friend_table." uf
LEFT JOIN ".$user_table." u ON uf.user_id = u.user_id
FROM ".$access_url_rel_user_table." as url, ".$user_friend_table." uf
LEFT JOIN ".$user_table." u ON uf.user_id = u.user_id
WHERE uf.relation_type <> '".USER_RELATION_TYPE_RRHH."' AND uf.user_id = url.user_id AND access_url_id='".$current_url_id."'
GROUP BY uf.user_id";
} else {
$sql = "SELECT lastname, firstname, username,
$sql = "SELECT lastname, firstname, username,
COUNT(friend_user_id) AS count_friend
FROM ".$user_friend_table." uf
LEFT JOIN ".$user_table." u ON uf.user_id = u.user_id
FROM ".$user_friend_table." uf
LEFT JOIN ".$user_table." u ON uf.user_id = u.user_id
WHERE uf.relation_type <> '".USER_RELATION_TYPE_RRHH."'
GROUP BY uf.user_id";
}
$res = Database::query($sql);
$list_friends = array();
while ($friends = Database::fetch_array($res)) {
while ($friends = Database::fetch_array($res)) {
$users = api_get_person_name($friends['firstname'], $friends['lastname']).'<br />('.$friends['username'].')';
$list_friends[$users] = $friends['count_friend'];
}

@ -202,7 +202,7 @@ if ($use_extra_fields) {
}
$where_filter ='';
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
if (is_array($final_result) && count($final_result)>0) {
$where_filter = " AND u.user_id IN ('".implode("','",$final_result)."') ";
} else {
@ -226,7 +226,7 @@ $sql = "SELECT user_id,lastname,firstname,username
ORDER BY ". (count($users) > 0 ? "(user_id IN(".implode(',', $users).")) DESC," : "")." ".$target_name;
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -244,7 +244,7 @@ unset($result);
$sql = "SELECT code,visual_code,title FROM $tbl_course WHERE visual_code LIKE '".$first_letter_course."%' ORDER BY ". (count($courses) > 0 ? "(code IN('".implode("','", $courses)."')) DESC," : "")." visual_code";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -260,7 +260,7 @@ $result = Database::query($sql);
$db_courses = Database::store_result($result);
unset($result);
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){

@ -57,7 +57,7 @@ function display_drh_list(){
else if (document.getElementById("status_select").value=='.COURSEMANAGER.')
{
document.getElementById("drh_list").style.display="none";
document.getElementById("id_platform_admin").style.display="block";
document.getElementById("id_platform_admin").style.display="block";
}
else
{
@ -368,7 +368,7 @@ if( $form->validate()) {
$sender_name = api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'), null, PERSON_NAME_EMAIL_ADDRESS);
$email_admin = api_get_setting('emailAdministrator');
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$url = api_get_access_url($access_url_id);
@ -384,7 +384,7 @@ if( $form->validate()) {
if (isset($user['submit_plus'])) {
//we want to add more. Prepare report message and redirect to the same page (to clean the form)
$tok = Security::get_token();
header('Location: user_add.php?message='.urlencode(get_lang('UserAdded')).'&sec_token='.$tok);
header('Location: user_add.php?message='.urlencode(get_lang('UserAdded')).'&sec_token='.$tok);
exit ();
} else {
$tok = Security::get_token();

@ -39,7 +39,7 @@ function display_drh_list(){
}
else if (document.getElementById("status_select").value=='.STUDENT.')
{
document.getElementById("id_platform_admin").style.display="none";
document.getElementById("id_platform_admin").style.display="none";
}
else
{
@ -207,9 +207,9 @@ $form->addElement('html', '</div>');
$group = array();
$group[] =& HTML_QuickForm::createElement('radio', 'platform_admin', null, get_lang('Yes'), 1);
$group[] =& HTML_QuickForm::createElement('radio', 'platform_admin', null, get_lang('No'), 0);
$user_data['status'] == 1 ? $display = 'block':$display = 'none';
$form->addElement('html', '<div id="id_platform_admin" style="display:'.$display.'">');
$form->addGroup($group, 'admin', get_lang('PlatformAdmin'), null, false);
$form->addElement('html', '</div>');
@ -319,16 +319,16 @@ $form->setDefaults($user_data);
$error_drh = false;
// Validate form
if ( $form->validate()) {
$user = $form->exportValues();
$is_user_subscribed_in_course = CourseManager::is_user_subscribed_in_course($user['user_id']);
if ($user['status'] == DRH && $is_user_subscribed_in_course) {
$error_drh = true;
} else {
$error_drh = true;
} else {
$picture_element = & $form->getElement('picture');
$picture = $picture_element->getValue();
$picture_uri = $user_data['picture_uri'];
if ($user['delete_picture']) {
$picture_uri = UserManager::delete_user_picture($user_id);
@ -336,7 +336,7 @@ if ( $form->validate()) {
elseif (!empty($picture['name'])) {
$picture_uri = UserManager::update_user_picture($user_id, $_FILES['picture']['name'], $_FILES['picture']['tmp_name']);
}
$lastname = $user['lastname'];
$firstname = $user['firstname'];
$official_code = $user['official_code'];
@ -355,7 +355,7 @@ if ( $form->validate()) {
$expiration_date='0000-00-00 00:00:00';
}
$active = $user_data['platform_admin'] ? 1 : intval($user['active']);
if ($reset_password == 0) {
$password = null;
$auth_source = $user_data['auth_source'];
@ -385,21 +385,21 @@ if ( $form->validate()) {
Database::query($sql);
}
}
$extras = array();
foreach($user as $key => $value) {
if(substr($key, 0, 6) == 'extra_') { //an extra field
$myres = UserManager::update_extra_field_value($user_id, substr($key, 6), $value);
}
}
if (!empty ($email) && $send_mail) {
$recipient_name = api_get_person_name($firstname, $lastname, null, PERSON_NAME_EMAIL_ADDRESS);
$emailsubject = '['.api_get_setting('siteName').'] '.get_lang('YourReg').' '.api_get_setting('siteName');
$sender_name = api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'), null, PERSON_NAME_EMAIL_ADDRESS);
$email_admin = api_get_setting('emailAdministrator');
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$url = api_get_access_url($access_url_id);
@ -409,20 +409,20 @@ if ( $form->validate()) {
else {
$emailbody=get_lang('Dear')." ".stripslashes(api_get_person_name($firstname, $lastname)).",\n\n".get_lang('YouAreReg')." ". api_get_setting('siteName') ." ".get_lang('WithTheFollowingSettings')."\n\n".get_lang('Username')." : ". $username . (($reset_password > 0) ? "\n". get_lang('Pass')." : ".stripslashes($password) : "") . "\n\n" .get_lang('Address') ." ". api_get_setting('siteName') ." ". get_lang('Is') ." : ". $_configuration['root_web'] ."\n\n". get_lang('Problem'). "\n\n". get_lang('Formula').",\n\n".api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'))."\n". get_lang('Manager'). " ".api_get_setting('siteName')."\nT. ".api_get_setting('administratorTelephone')."\n" .get_lang('Email') ." : ".api_get_setting('emailAdministrator');
}
@api_mail($recipient_name, $email, $emailsubject, $emailbody, $sender_name, $email_admin);
}
$tok = Security::get_token();
header('Location: user_list.php?action=show_message&message='.urlencode(get_lang('UserUpdated')).'&sec_token='.$tok);
exit();
exit();
}
}
Display::display_header($tool_name);
if ($error_drh) {
if ($error_drh) {
$err_msg = get_lang('StatusCanNotBeChangedToHumanResourcesManager');
Display::display_error_message($err_msg);
Display::display_error_message($err_msg);
}
// USER PICTURE

@ -57,7 +57,7 @@ $courses[''] = '--';
$sql = "SELECT code,visual_code,title FROM $course_table ORDER BY visual_code";
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -104,7 +104,7 @@ if ($form->validate())
$filename = 'export_users_'.$course_code.'_'.date('Y-m-d_H-i-s');
} else {
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {

@ -285,7 +285,7 @@ else
* Show the URL in which this user is subscribed
*/
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
require_once(api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
$url_list= UrlManager::get_access_url_from_user($user['user_id']);
if (count($url_list) > 0) {

@ -32,18 +32,18 @@ function load_course_list (div_course,my_user_id) {
}
});
}
function active_user(element_div) {
id_image=$(element_div).attr("id");
image_clicked=$(element_div).attr("src");
image_clicked_info = image_clicked.split("/");
image_real_clicked = image_clicked_info[image_clicked_info.length-1];
var status = 1;
image_real_clicked = image_clicked_info[image_clicked_info.length-1];
var status = 1;
if (image_real_clicked == "right.gif") {
status = 0;
}
}
user_id=id_image.split("_");
ident="#img_"+user_id[1];
ident="#img_"+user_id[1];
if (confirm("'.get_lang('AreYouSureToEditTheUserStatus', '').'")) {
$.ajax({
contentType: "application/x-www-form-urlencoded",
@ -53,22 +53,22 @@ function active_user(element_div) {
url: "'.api_get_path(WEB_AJAX_PATH).'user_manager.ajax.php?a=active_user",
data: "user_id="+user_id[1]+"&status="+status,
success: function(datos) {
if (status == 1) {
if (status == 1) {
$(ident).attr("src","'.api_get_path(WEB_IMG_PATH).'right.gif'.'");
$(ident).attr("title","'.get_lang('Lock').'");
} else {
$(ident).attr("src","'.api_get_path(WEB_IMG_PATH).'wrong.gif'.'");
$(ident).attr("title","'.get_lang('Unlock').'");
}
}
});
}
}
function clear_course_list (div_course) {
$("div#"+div_course).html("&nbsp;");
$("div#"+div_course).hide("");
@ -322,7 +322,7 @@ function get_number_of_users()
// adding the filter to see the user's only of the current access_url
global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}
@ -382,7 +382,7 @@ function get_number_of_users()
}
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}
@ -421,7 +421,7 @@ function get_user_data($from, $number_of_items, $column, $direction)
" FROM $user_table u ";
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}
@ -454,7 +454,7 @@ function get_user_data($from, $number_of_items, $column, $direction)
$query_admin_table = " , $admin_table a ";
$keyword_admin = ' AND a.user_id = u.user_id ';
}
$keyword_extra_value = '';
if (isset($_GET['keyword_extra_data'])) {
if (!empty($_GET['keyword_extra_data']) && !empty($_GET['keyword_extra_data_text'])) {
@ -482,7 +482,7 @@ function get_user_data($from, $number_of_items, $column, $direction)
}
// adding the filter to see the user's only of the current access_url
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}
@ -530,7 +530,7 @@ function get_user_data($from, $number_of_items, $column, $direction)
*/
function email_filter($email)
{
return Display :: encrypted_mailto_link($email, $email);
return Display :: encrypted_mailto_link($email, $email);
}
/**
@ -538,9 +538,9 @@ function email_filter($email)
* @param string $email An email-address
* @return string HTML-code with a mailto-link
*/
function user_filter($name, $params, $row) {
return '<a href="'.api_get_path(WEB_PATH).'whoisonline.php?origin=user_list&id='.$row[0].'">'.$name.'</a>';
function user_filter($name, $params, $row) {
return '<a href="'.api_get_path(WEB_PATH).'whoisonline.php?origin=user_list&id='.$row[0].'">'.$name.'</a>';
}
/**
@ -602,10 +602,10 @@ function modify_filter($user_id,$url_params,$row)
}
if ($row[0]<>$_user['user_id'] && $user_is_anonymous == false) {
// you cannot lock yourself out otherwise you could disable all the accounts including your own => everybody is locked out and nobody can change it anymore.
$result .= '<a href="user_list.php?action=delete_user&amp;user_id='.$user_id.'&amp;'.$url_params.'&amp;sec_token='.$_SESSION['sec_token'].'" onclick="javascript:if(!confirm('."'".addslashes(api_htmlentities(get_lang("ConfirmYourChoice"),ENT_QUOTES,$charset))."'".')) return false;">'.Display::return_icon('delete.gif', get_lang('Delete')).'</a>';
} else {
$result .= Display::return_icon('delete_na.gif', get_lang('Delete'));
}
@ -616,17 +616,17 @@ function modify_filter($user_id,$url_params,$row)
} else {
$result .= Display::return_icon('admin_star_na.png', get_lang('IsNotAdministrator'));
}
// actions for assigning sessions, courses or users
if (api_is_session_admin()) {
/*if ($row[0] == api_get_user_id()) {
/*if ($row[0] == api_get_user_id()) {
$result .= '<a href="dashboard_add_sessions_to_user.php?user='.$user_id.'">'.Display::return_icon('view_more_stats.gif', get_lang('AssignSessions')).'</a>&nbsp;&nbsp;';
}*/
} else {
if ($row['7'] == $statusname[DRH] || UserManager::is_admin($row[0])) {
$result .= '<a href="dashboard_add_users_to_user.php?user='.$user_id.'">'.Display::return_icon('add_user_big.gif', get_lang('AssignUsers')).'</a>&nbsp;&nbsp;';
$result .= '<a href="dashboard_add_courses_to_user.php?user='.$user_id.'">'.Display::return_icon('course_add.gif', get_lang('AssignCourses')).'</a>&nbsp;&nbsp;';
$result .= '<a href="dashboard_add_sessions_to_user.php?user='.$user_id.'">'.Display::return_icon('view_more_stats.gif', get_lang('AssignSessions')).'</a>&nbsp;&nbsp;';
$result .= '<a href="dashboard_add_sessions_to_user.php?user='.$user_id.'">'.Display::return_icon('view_more_stats.gif', get_lang('AssignSessions')).'</a>&nbsp;&nbsp;';
} else if ($row['7'] == $statusname[SESSIONADMIN]) {
$result .= '<a href="dashboard_add_sessions_to_user.php?user='.$user_id.'">'.Display::return_icon('view_more_stats.gif', get_lang('AssignSessions')).'</a>&nbsp;&nbsp;';
}
@ -649,7 +649,7 @@ function active_filter($active, $url_params, $row) {
global $_user;
if ($active=='1') {
$action='Lock';
$action='Lock';
$image='right';
} elseif ($active=='-1') {
$action='edit';
@ -657,15 +657,15 @@ function active_filter($active, $url_params, $row) {
} elseif ($active=='0') {
$action='Unlock';
$image='wrong';
}
if ($action=='edit') {
$result = Display::return_icon($image.'.gif', get_lang('AccountExpired'));
} elseif ($row['0']<>$_user['user_id']) {
} elseif ($row['0']<>$_user['user_id']) {
// you cannot lock yourself out otherwise you could disable all the accounts including your own => everybody is locked out and nobody can change it anymore.
//$result = '<a href="user_list.php?action='.$action.'&amp;user_id='.$row['0'].'&amp;'.$url_params.'&amp;sec_token='.$_SESSION['sec_token'].'">'.Display::return_icon($image.'.gif', get_lang(ucfirst($action))).'</a>';
//$result = '<a href="'.api_get_path(WEB_AJAX_PATH).'user_manager.ajax.php?action=active_user&amp;user_id='.$row['0'].'&amp;'.$url_params.'&amp;sec_token='.$_SESSION['sec_token'].'">';
//$result = '<a href="'.api_get_path(WEB_AJAX_PATH).'user_manager.ajax.php?action=active_user&amp;user_id='.$row['0'].'&amp;'.$url_params.'&amp;sec_token='.$_SESSION['sec_token'].'">';
$result .=Display::return_icon($image.'.gif', get_lang(ucfirst($action)), array('onclick'=>'active_user(this);', 'id'=>'img_'.$row['0'])).'</a>';
//$result .= '<div>';
}
@ -750,9 +750,9 @@ if ($_GET['action'] == "login_as" && isset ($login_as_user_id))
$tool_name = get_lang('UserList');
}
Display :: display_header($tool_name, "");
//api_display_tool_title($tool_name);
if (isset ($_GET['action'])) {
$check = Security::check_token('get');
@ -878,7 +878,7 @@ if ($_GET['action'] == "login_as" && isset ($login_as_user_id))
$photo = '<center><img src="'.$user_profile['file'].'" '.$user_profile['style'].' alt="'.api_get_person_name($o_course_user['firstname'], $o_course_user['lastname']).'" title="'.api_get_person_name($o_course_user['firstname'], $o_course_user['lastname']).'" /></center>';
}
// display advaced search form
$form = new FormValidator('advanced_search','get');
@ -905,7 +905,7 @@ if ($_GET['action'] == "login_as" && isset ($login_as_user_id))
$form->addElement('html', '<tr><td>');
$form->add_textfield('keyword_officialcode',get_lang('OfficialCode'),false,array('style'=>'margin-left:17px'));
$form->addElement('html', '</td><td>');
$form->addElement('html', '</td><td>');
$status_options = array();
$status_options['%'] = get_lang('All');
@ -917,7 +917,7 @@ if ($_GET['action'] == "login_as" && isset ($login_as_user_id))
$form->addElement('html', '</td></tr>');
$form->addElement('html', '<tr><td>');
$active_group = array();
$active_group[] = $form->createElement('checkbox','keyword_active','',get_lang('Active'), array('style'=>'margin-left:17px'));
@ -975,10 +975,10 @@ if ($_GET['action'] == "login_as" && isset ($login_as_user_id))
$table->set_header(7, get_lang('Status'));
$table->set_header(8, get_lang('Active'),true, 'width="15px"');
$table->set_header(9, get_lang('Action'), false,'width="220px"');
$table->set_column_filter(3, 'user_filter');
$table->set_column_filter(4, 'user_filter');
$table->set_column_filter(6, 'email_filter');
$table->set_column_filter(7, 'status_filter');
$table->set_column_filter(8, 'active_filter');

@ -14,8 +14,8 @@
Reabability is also the reason why I use the if ($is_allowed_to_edit)
check for each part of the code. I'm aware that is duplication, but
it makes the code much easier to read.
@todo this code should be clean as well as the myagenda.inc.php
@todo this code should be clean as well as the myagenda.inc.php
*/
@ -58,7 +58,7 @@ $(document).ready(function () {
* @return array
*/
function get_calendar_items($month, $year) {
global $_user, $_course;
global $is_allowed_to_edit;
global $select_month, $select_year;
@ -86,7 +86,7 @@ function get_calendar_items($month, $year) {
$stop = 0;
// this is to make a difference between showing everything (all months) or only the current month)
// $show_all_current is a part of the sql statement
if ($_SESSION['show']!=='showall') {
$show_all_current=" AND MONTH(start_date)=$select_month AND year(start_date)=$select_year";
$start = mktime(0,0,0,$select_month,1,$select_year);
@ -129,7 +129,7 @@ function get_calendar_items($month, $year) {
if (api_is_allowed_to_edit(false,true) OR (api_get_course_setting('allow_user_edit_agenda') && !api_is_anonymous())) {
// A.1. you are a course admin with a USER filter
// => see only the messages of this specific user + the messages of the group (s)he is member of.
if (!empty($_SESSION['user'])) {
if (!empty($_SESSION['user'])) {
$group_memberships=GroupManager::get_group_ids($_course['dbName'],$_SESSION['user']);
if (is_array($group_memberships) && count($group_memberships)>0) {
$sql="SELECT
@ -156,7 +156,7 @@ function get_calendar_items($month, $year) {
// A.2. you are a course admin with a GROUP filter
// => see only the messages of this specific group
elseif (!empty($_SESSION['group'])) {
$sql="SELECT
agenda.*, ip.visibility, ip.to_group_id, ip.insert_user_id, ip.ref
FROM ".$TABLEAGENDA." agenda, ".$TABLE_ITEM_PROPERTY." ip
@ -170,7 +170,7 @@ function get_calendar_items($month, $year) {
}
// A.3 you are a course admin without any group or user filter
else {
// A.3.a you are a course admin without user or group filter but WITH studentview
// => see all the messages of all the users and groups without editing possibilities
if ($_GET['isStudentView']=='true') {
@ -237,25 +237,25 @@ function get_calendar_items($month, $year) {
}
}
} // you are a student
$result=Database::query($sql);
$data=array();
while ($row=Database::fetch_array($result, 'ASSOC')) {
$datum_item=(int)substr($row['start_date'],8,2);
$row['calendar_type'] = 'course';
$data[$datum_item][intval($datum_item)][] = $row;
}
//Check my personal agenda events
}
//Check my personal agenda events
if (api_get_setting('allow_personal_agenda') == 'true') {
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
// 1. creating the SQL statement for getting the personal agenda items in MONTH view
$sql = "SELECT id, title, text as content , date as start_date, enddate as end_date, parent_event_id FROM ".$tbl_personal_agenda."
WHERE user='".api_get_user_id()."' and MONTH(date)='".$month."' AND YEAR(date) = '".$year."' ORDER BY date ASC";
WHERE user='".api_get_user_id()."' and MONTH(date)='".$month."' AND YEAR(date) = '".$year."' ORDER BY date ASC";
$result = Database::query($sql);
while ($row = Database::fetch_array($result, 'ASSOC')) {
$datum_item=intval(substr($row["start_date"],8,2));
$row['calendar_type'] = 'personal';
while ($row = Database::fetch_array($result, 'ASSOC')) {
$datum_item=intval(substr($row["start_date"],8,2));
$row['calendar_type'] = 'personal';
$data[$datum_item][$datum_item][] = $row;
}
}
@ -265,15 +265,15 @@ function get_calendar_items($month, $year) {
$sql = "SELECT DISTINCT * FROM ".$table_agenda_system."
WHERE
MONTH(start_date)='".$month."'
AND YEAR(start_date)='".$year."'
AND YEAR(start_date)='".$year."'
ORDER BY start_date ";
$result=Database::query($sql);
while ($row = Database::fetch_array($result, 'ASSOC')) {
$datum_item=intval(substr($row['start_date'],8,2));
$row['calendar_type'] = 'global';
while ($row = Database::fetch_array($result, 'ASSOC')) {
$datum_item=intval(substr($row['start_date'],8,2));
$row['calendar_type'] = 'global';
$data[$datum_item][$datum_item][] = $row;
}
return $data;
}
@ -383,9 +383,9 @@ function display_monthcalendar($month, $year) {
global $DaysShort;
global $origin;
// Grabbing all the calendar items for this year and storing it in a array + my personal calendar events if exist and if enabled
// Grabbing all the calendar items for this year and storing it in a array + my personal calendar events if exist and if enabled
$data = get_calendar_items($month,$year);
//Handle leap year
$numberofdays = array(0,31,28,31,30,31,30,31,31,30,31,30,31);
if (($year%400 == 0) or ($year%4==0 and $year%100<>0)) $numberofdays[2] = 29;
@ -415,48 +415,48 @@ function display_monthcalendar($month, $year) {
echo '</tr>';
$curday = -1;
$today = getdate();
while ($curday <= $numberofdays[$month]) {
echo '<tr>';
//week
for ($ii=0; $ii<7; $ii++) {
for ($ii=0; $ii<7; $ii++) {
if (($curday == -1) && ($ii==$startdayofweek)) {
$curday = 1;
}
if (($curday>0)&&($curday<=$numberofdays[$month])) {
$bgcolor = $ii<5 ? 'class="row_odd"' : 'class="row_even"';
$dayheader = "$curday";
if (key_exists($curday, $data)) {
if (key_exists($curday, $data)) {
foreach ($data[$curday] as $key=>$agenda_item) {
$dayheader = "<a href='".api_get_self()."?".api_get_cidreq()."&amp;sort=asc&amp;toolgroup=".Security::remove_XSS($_GET['toolgroup'])."&amp;view=list&amp;origin=$origin&amp;month=$month&amp;year=$year&amp;day=$curday#$curday'>".$curday."</a>";
$some_content = false;
foreach ($agenda_item as $key=>$value) {
$month_start_date = (int)substr($value['start_date'],5,2);
$start_time = api_convert_and_format_date($value['start_date']);
$some_content = false;
foreach ($agenda_item as $key=>$value) {
$month_start_date = (int)substr($value['start_date'],5,2);
$start_time = api_convert_and_format_date($value['start_date']);
if ($month == $month_start_date) {
$some_content = true;
$start_time = api_convert_and_format_date($value['start_date'], TIME_NO_SEC_FORMAT, date_default_timezone_get());
$end_time = api_convert_and_format_date($value['end_date'], TIME_NO_SEC_FORMAT, date_default_timezone_get());
//Setting a personal event to green
$personal_start = $personal_end = '';
$personal_start = $personal_end = '';
if ($value['calendar_type'] == 'personal') {
$personal_start = '<div style="color:green;">'.get_lang('MyAgenda');
$personal_end = '</div>';
$personal_end = '</div>';
} elseif ($value['calendar_type'] == 'global') {
$personal_start = '<div style="color:red;">'.get_lang('GlobalEvent');
$personal_end = '</div>';
$personal_end = '</div>';
}
$dayheader.= $personal_start;
if ($value['end_date']=='0000-00-00 00:00:00') {
$dayheader.= $personal_start;
if ($value['end_date']=='0000-00-00 00:00:00') {
$dayheader .= '<br />'.get_lang('Work').'<br />';
$dayheader .= $value['title'];
$dayheader .= '<br/>';
@ -470,7 +470,7 @@ function display_monthcalendar($month, $year) {
$dayheader .= $value['title'];
$dayheader .= '<br/>';
}
$dayheader .= $personal_end;
$dayheader .= $personal_end;
} else {
//$dayheader=$curday;
}
@ -479,16 +479,16 @@ function display_monthcalendar($month, $year) {
if ($some_content == false) {
$dayheader = $curday;
}
}
}
//var_dump($dayheader);
if (($curday==$today['mday']) && ($year ==$today['year'])&&($month == $today['mon'])) {
echo '<td class="days_today"'.$bgcolor.'" style="width:10%">'.$dayheader;
} else {
echo '<td class="days_week"'.$bgcolor.'" style="width:10%">'.$dayheader;
}
}
echo '</td>';
$curday++;
} else {
@ -779,11 +779,11 @@ function user_group_filter_javascript() {
function get_course_users()
{
global $_cid;
$tbl_user = Database::get_main_table(TABLE_MAIN_USER);
$tbl_courseUser = Database::get_main_table(TABLE_MAIN_COURSE_USER);
$tbl_session_course_user= Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
// not 100% if this is necessary, this however prevents a notice
if (!isset($courseadmin_filter))
{$courseadmin_filter='';}
@ -1014,7 +1014,7 @@ function store_new_agenda_item() {
$content=trim($_POST['content']);
$start_date=(int)$_POST['fyear']."-".(int)$_POST['fmonth']."-".(int)$_POST['fday']." ".(int)$_POST['fhour'].":".(int)$_POST['fminute'].":00";
$end_date=(int)$_POST['end_fyear']."-".(int)$_POST['end_fmonth']."-".(int)$_POST['end_fday']." ".(int)$_POST['end_fhour'].":".(int)$_POST['end_fminute'].":00";
$title = Database::escape_string($title);
$content = Database::escape_string($content);
$start_date = Database::escape_string($start_date);
@ -1182,7 +1182,7 @@ function separate_users_groups($to) {
function sent_to($tool, $id)
{
global $_course;
$TABLE_ITEM_PROPERTY = Database::get_course_table(TABLE_ITEM_PROPERTY);
$tool=Database::escape_string($tool);
@ -1756,12 +1756,12 @@ function showhide_agenda_item($id) {
* @author Yannick Warnier <yannick.warnier@dokeos.com> - cleanup
* @author Julio Montoya <gugli100@gmail.com> - More cleanup
*/
function display_agenda_items($select_month, $select_year) {
function display_agenda_items($select_month, $select_year) {
$TABLEAGENDA = Database::get_course_table(TABLE_AGENDA);
$TABLE_ITEM_PROPERTY = Database::get_course_table(TABLE_ITEM_PROPERTY);
//not used in the function
//global $DaysShort, $DaysLong, $MonthsLong;
//global $is_courseAdmin;
//global $is_courseAdmin;
//global $dateFormatLong, $timeNoSecFormat,$charset, $_user, $_course;
global $charset, $_user, $_course;
@ -1781,7 +1781,7 @@ function display_agenda_items($select_month, $select_year) {
if ($_SESSION['show']!=='showall') {
$show_all_current =" AND MONTH(start_date)=$select_month AND year(start_date)=$select_year";
$show_all_current_personal =" AND MONTH(date)=$select_month AND year(date)=$select_year";
$start = mktime(0,0,0,$select_month,1,$select_year);
$stop = 0;
if (empty($select_year)) { $select_year = date('Y');}
@ -2000,9 +2000,9 @@ function display_agenda_items($select_month, $select_year) {
//echo "<pre>".$sql."</pre>";
$result = Database::query($sql);
$number_items = Database::num_rows($result);
/* DISPLAY: NO ITEMS */
if ($number_items==0) {
echo "<table class=\"data_table\" ><tr><td>".get_lang('NoAgendaItems')."</td></tr></table>";
}
@ -2015,28 +2015,28 @@ function display_agenda_items($select_month, $select_year) {
$export_icon = 'export.png';
$export_icon_low = 'export_low_fade.png';
$export_icon_high = 'export_high_fade.png';
$my_events = array();
while($myrow = Database::fetch_array($result)) {
$myrow['calendar_type'] = 'course';
$myrow['calendar_type'] = 'course';
$my_events[] = $myrow;
}
//Check my personal calendar items
//Check my personal calendar items
if (api_get_setting('allow_personal_agenda') == 'true') {
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
// 1. creating the SQL statement for getting the personal agenda items in MONTH view
$sql = "SELECT id, title, text as content , date as start_date, enddate as end_date, parent_event_id FROM ".$tbl_personal_agenda."
WHERE user='".api_get_user_id()."' ".$show_all_current_personal." ORDER BY date ASC";
WHERE user='".api_get_user_id()."' ".$show_all_current_personal." ORDER BY date ASC";
$result = Database::query($sql);
while ($row = Database::fetch_array($result, 'ASSOC')) {
$row['calendar_type'] = 'personal';
$row['calendar_type'] = 'personal';
$my_events[] = $row;
}
}
}
//Check global agenda events */
$table_agenda_system = Database :: get_main_table(TABLE_MAIN_SYSTEM_CALENDAR);
$sql = "SELECT DISTINCT id, title, content , start_date, end_date FROM ".$table_agenda_system."
@ -2044,11 +2044,11 @@ function display_agenda_items($select_month, $select_year) {
ORDER BY start_date ";
$result=Database::query($sql);
while ($row = Database::fetch_array($result, 'ASSOC')) {
$row['calendar_type'] = 'global';
$row['calendar_type'] = 'global';
$my_events[] = $row;
}
//while($myrow = Database::fetch_array($result)) {
foreach ($my_events as $myrow) {
$is_repeated = !empty($myrow['parent_event_id']);
@ -2060,7 +2060,7 @@ function display_agenda_items($select_month, $select_year) {
$myrow["start_date"] = api_get_local_time($myrow["start_date"], null, date_default_timezone_get());
if ($month_bar != api_format_date($myrow["start_date"], "%m%Y")) {
$month_bar = api_format_date($myrow["start_date"], "%m%Y");
//Showing month header
//Showing month header
echo '<tr><td class="agenda_month_divider" colspan="3" valign="top">';
echo api_format_date($myrow["start_date"], "%B %Y");
echo '</td></tr>';
@ -2093,42 +2093,42 @@ function display_agenda_items($select_month, $select_year) {
// the icons. If the message is sent to one or more specific users/groups
// we add the groups icon
// 2do: if it is sent to groups we display the group icon, if it is sent to a user we show the user icon
if ($myrow['calendar_type'] == 'course') {
Display::display_icon('agenda.gif', get_lang('Agenda'));
if ($myrow['calendar_type'] == 'course') {
Display::display_icon('agenda.gif', get_lang('Agenda'));
if ($myrow['to_group_id']!=='0') {
echo Display::return_icon('group.gif', get_lang('ItemForUserSelection'));
}
}
echo '<span style="padding-left:5px; font-size:130%; ">';
echo $myrow['title'];
echo '</span>';
} elseif ($myrow['calendar_type'] == 'personal') {
Display::display_icon('calendar_personal.gif', get_lang('Personal'));
echo '<span style="padding-left:5px; font-size:130%; ">';
echo '<span style="padding-left:5px; font-size:130%; ">';
echo $myrow['title'];
echo '</span>';
echo '</span>';
} else {
Display::display_icon('calendar_global.png', get_lang('Personal'));
echo '<span style="padding-left:5px; font-size:130%; ">';
echo '<span style="padding-left:5px; font-size:130%; ">';
echo $myrow['title'];
echo '</span>';
}
echo '</th>';
if ($myrow['calendar_type'] == 'course') {
// the message has been sent to
echo "<th>".get_lang('SentTo').": ";
$sent_to=sent_to(TOOL_CALENDAR_EVENT, $myrow["ref"]);
$sent_to_form=sent_to_form($sent_to);
echo $sent_to_form;
echo $sent_to_form;
echo '</th>';
} elseif ($myrow['calendar_type'] == 'personal') {
echo '<th>'.get_lang('Personal').'</th>';
echo '<th>'.get_lang('Personal').'</th>';
} elseif ($myrow['calendar_type'] == 'global') {
echo '<th>'.get_lang('GlobalEvent').'</th>';
}
if (!$is_repeated && (api_is_allowed_to_edit(false,true) OR (api_get_course_setting('allow_user_edit_agenda') && !api_is_anonymous())) && $myrow['calendar_type'] == 'course' ) {
if( ! (api_is_course_coach() && !api_is_element_in_the_session(TOOL_AGENDA, $myrow['id'] ) ) ) {
if( ! (api_is_course_coach() && !api_is_element_in_the_session(TOOL_AGENDA, $myrow['id'] ) ) ) {
// a coach can only delete an element belonging to his session
echo '<th>'.get_lang('Modify');
echo '</th></tr>';
@ -2143,7 +2143,7 @@ function display_agenda_items($select_month, $select_year) {
echo api_format_date($myrow['start_date']);
echo '</td>';
echo '<td>';
if ($myrow['calendar_type'] == 'course') {
if ($myrow['end_date']<>'0000-00-00 00:00:00') {
echo get_lang('EndTimeWindow').": ";
@ -2157,12 +2157,12 @@ function display_agenda_items($select_month, $select_year) {
/*Display: edit delete button (course admin only) */
if (!$is_repeated && (api_is_allowed_to_edit(false,true) OR (api_get_course_setting('allow_user_edit_agenda') && !api_is_anonymous())) && $myrow['calendar_type'] == 'course') {
if( ! (api_is_course_coach() && !api_is_element_in_the_session(TOOL_AGENDA, $myrow['id'] ) ) ) {
if( ! (api_is_course_coach() && !api_is_element_in_the_session(TOOL_AGENDA, $myrow['id'] ) ) ) {
// a coach can only delete an element belonging to his session
$mylink = api_get_self().'?'.api_get_cidreq().'&amp;origin='.Security::remove_XSS($_GET['origin']).'&amp;id='.$myrow['id'].'&amp;';
echo '<td align="center">';
// edit
// edit
echo '<a href="'.$mylink.api_get_cidreq()."&amp;sort=asc&amp;toolgroup=".Security::remove_XSS($_GET['toolgroup']).'&amp;action=edit&amp;id_attach='.$attachment_list['id'].'" title="'.get_lang("ModifyCalendarItem").'">';
echo Display::return_icon('edit.gif', get_lang('ModifyCalendarItem'))."</a>";
@ -2185,7 +2185,7 @@ function display_agenda_items($select_month, $select_year) {
}
if (!$is_repeated && (api_is_allowed_to_edit(false,true) OR (api_get_course_setting('allow_user_edit_agenda') && !api_is_anonymous()))) {
if( ! (api_is_course_coach() && !api_is_element_in_the_session(TOOL_AGENDA, $myrow['id'] ) ) ) {
if( ! (api_is_course_coach() && !api_is_element_in_the_session(TOOL_AGENDA, $myrow['id'] ) ) ) {
// a coach can only delete an element belonging to his session
$td_colspan= '<td colspan="3">';
} else {
@ -2199,7 +2199,7 @@ function display_agenda_items($select_month, $select_year) {
//echo '<a class="ical_export" href="'.$mylink.'&amp;class=private" title="'.get_lang('ExportiCalPrivate').'">'.Display::return_icon($export_icon_low, get_lang('ExportiCalPrivate')).'</a> ';
//echo '<a class="ical_export" href="'.$mylink.'&amp;class=public" title="'.get_lang('ExportiCalPublic').'">'.Display::return_icon($export_icon, get_lang('ExportiCalPublic')).'</a> ';
echo '<a href="#" onclick="javascript:win_print=window.open(\'print.php?id='.$myrow['id'].'\',\'popup\',\'left=100,top=100,width=700,height=500,scrollbars=1,resizable=0\'); win_print.focus(); return false;">'.Display::return_icon('print.gif', get_lang('Print')).'</a>&nbsp;';
echo '</td>';
echo '</td>';
} else {
echo '<td align="center">';
echo '</td>';
@ -2210,7 +2210,7 @@ function display_agenda_items($select_month, $select_year) {
$content = $myrow['content'];
$content = make_clickable($content);
$content = text_filter($content);
echo '<tr class="row_even">';
echo '<td colspan="3">';
echo $content;
@ -2565,20 +2565,20 @@ function show_add_form($id = '') {
if (is_int($id)) {
//echo "before get_agenda_item".$_SESSION['allow_individual_calendar'];
$item_2_edit=get_agenda_item($id);
$title = $item_2_edit['title'];
$content= $item_2_edit['content'];
// start date
list($datepart, $timepart) = split(" ", $item_2_edit['start_date']);
list($year, $month, $day) = explode("-", $datepart);
list($hours, $minutes, $seconds) = explode(":", $timepart);
// end date
list($datepart, $timepart) = split(" ", $item_2_edit['end_date']);
list($end_year, $end_month, $end_day) = explode("-", $datepart);
list($end_hours, $end_minutes, $end_seconds) = explode(":", $timepart);
// attachments
edit_added_resources("Agenda", $id);
$to=$item_2_edit['to'];
@ -2677,13 +2677,13 @@ function show_add_form($id = '') {
<select name="fyear" onchange="javascript:document.new_calendar_item.end_fyear.value=this.value;">
<option value="<?php echo ($year-1); ?>"><?php echo ($year-1); ?></option>
<option value="<?php echo $year; ?>" selected="selected"><?php echo $year; ?></option>
<?php
<?php
for ($i=1; $i<=5; $i++) {
$value=$year+$i;
echo "<option value=\"$value\">$value</option>";
} ?>
</select>
<a href="javascript:openCalendar('new_calendar_item', 'f')"><?php Display::display_icon('calendar_select.gif', get_lang('Select'), array ('style' => 'vertical-align: middle;')); ?></a>
&nbsp;<?php echo get_lang('StartTime').": \n"; ?>&nbsp;
<select name="fhour" onchange="javascript:document.new_calendar_item.end_fhour.value=this.value;">
@ -2706,12 +2706,12 @@ function show_add_form($id = '') {
<?php
foreach (range(0, 59) as $i) {
// values have to have double digits
$value = ($i <= 9 ? '0'.$i : $i );
if ($minutes == $value) {
$value = ($i <= 9 ? '0'.$i : $i );
if ($minutes == $value) {
echo "<option value=\"".$value."\" selected> ".$value." </option>";
} else {
echo "<option value=\"$value\">$value</option>";
}
}
} ?>
</select>
<?php
@ -2730,7 +2730,7 @@ function show_add_form($id = '') {
<?php
// small loop for filling all the dates
// 2do: the available dates should be those of the selected month => february is from 1 to 28 (or 29) and not to 31
foreach (range(1, 31) as $i) {
// values have to have double digits
$value = ($i <= 9 ? '0'.$i : $i );
@ -2743,7 +2743,7 @@ function show_add_form($id = '') {
</select>
<!-- month: january -> december -->
<select name="end_fmonth">
<?php
<?php
foreach (range(1, 12) as $i) {
// values have to have double digits
$value = ($i <= 9 ? '0'.$i : $i );
@ -2756,7 +2756,7 @@ function show_add_form($id = '') {
<select name="end_fyear">
<option value="<?php echo ($end_year-1) ?>"><?php echo ($end_year-1) ?></option>
<option value="<?php echo $end_year ?>" selected> <?php echo $end_year ?> </option>
<?php
<?php
for ($i=1; $i<=5; $i++) {
$value=$end_year+$i;
echo "<option value=\"$value\">$value</option>";
@ -2767,7 +2767,7 @@ function show_add_form($id = '') {
<select name="end_fhour">
<!-- <option value="--">--</option> -->
<?php
<?php
foreach (range(0, 23) as $i) {
// values have to have double digits
$value = ($i <= 9 ? '0'.$i : $i );
@ -2786,12 +2786,12 @@ function show_add_form($id = '') {
foreach (range(0, 59) as $i) {
// values have to have double digits
//$value = ($i <= 9 ? '0'.$i : $i );
$value = ($i <= 9 ? '0'.$i : $i );
if ($end_minutes == $value) {
$value = ($i <= 9 ? '0'.$i : $i );
if ($end_minutes == $value) {
echo "<option value=\"".$value."\" selected> ".$value." </option>";
} else {
echo "<option value=\"$value\">$value</option>";
}
}
} ?>
</select>
<?php
@ -2916,7 +2916,7 @@ function show_add_form($id = '') {
<?php
// small loop for filling all the dates
// 2do: the available dates should be those of the selected month => february is from 1 to 28 (or 29) and not to 31
foreach (range(1, 31) as $i)
{
// values have to have double digits
@ -2931,7 +2931,7 @@ function show_add_form($id = '') {
<!-- month: january -> december -->
<select name="repeat_end_month">
<?php
<?php
foreach (range(1, 12) as $i)
{
// values have to have double digits
@ -2946,7 +2946,7 @@ function show_add_form($id = '') {
<select name="repeat_end_year">
<option value="<?php echo ($end_year-1) ?>"><?php echo ($end_year-1) ?></option>
<option value="<?php echo $end_year ?>" selected> <?php echo $end_year ?> </option>
<?php
<?php
for ($i=1; $i<=5; $i++) {
$value=$end_year+$i;
echo "<option value=\"$value\">$value</option>";
@ -3049,9 +3049,9 @@ function get_agendaitems($month, $year) {
$result = Database::query($sqlquery);
global $_configuration;
$root_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
if ($access_url_id != -1 ) {
$url = api_get_access_url($access_url_id);
$root_url = $url['url'];
}
@ -3090,7 +3090,7 @@ function display_upcoming_events()
$mycourse = api_get_course_info();
$myuser = api_get_user_info();
$session_id = api_get_session_id();
$group_memberships = GroupManager :: get_group_ids($mycourse['dbName'], $myuser['user_id']);
// if the user is administrator of that course we show all the agenda items
@ -3157,7 +3157,7 @@ function display_upcoming_events()
* This function calculates the startdate of the week (monday)
* and the enddate of the week (sunday)
* and returns it as an array
* @todo check if this function is correct
* @todo check if this function is correct
*/
function calculate_start_end_of_week($week_number, $year) {
// determine the start and end date
@ -3207,7 +3207,7 @@ function display_daycalendar($agendaitems, $day, $month, $year, $weekdaynames, $
$previousday = $today - (24 * 60 * 60);
$week_number = date("W", $today);
}
// calculating the start date of the week
// the date of the monday of this week is the timestamp of today minus
// number of days that have already passed this week * 24 hours * 60 minutes * 60 seconds
@ -3226,7 +3226,7 @@ function display_daycalendar($agendaitems, $day, $month, $year, $weekdaynames, $
echo "</th>";
echo "<th width=\"10%\"><a href=\"", $forewardsURL, "\">".Display::return_icon('action_next.png',get_lang('Next'))."</a></th>";
echo "</tr>";
// the rows for each half an hour
for ($i = 10; $i < 48; $i ++) {
if ($i % 2 == 0) {
@ -3261,7 +3261,7 @@ function display_weekcalendar($agendaitems, $month, $year, $weekdaynames, $month
global $DaysShort,$course_path;
global $MonthsLong;
// timestamp of today
$today = time();
$day_of_the_week = date("w", $today);
@ -3270,52 +3270,52 @@ function display_weekcalendar($agendaitems, $month, $year, $weekdaynames, $month
$week_number = date("W", $today);
$thisweek_number = $week_number;
// if we moved to the next / previous week we have to recalculate the $today variable
if (!isset($_GET['week'])) {
/*
$today = mktime(0, 0, 0, 1, 1, $year);
$today = $today + (((int)$_GET['week']-1) * (7 * 24 * 60 * 60));
$week_number = date("W", $today);*/
$week_number = date("W", time());
} else {
$week_number = intval($_GET['week']);
$week_number = intval($_GET['week']);
}
// calculating the start date of the week
// the date of the monday of this week is the timestamp of today minus
// number of days that have already passed this week * 24 hours * 60 minutes * 60 seconds
$current_day = date("j", $today); // Day of the month without leading zeros (1 to 31) of today
$day_of_the_week = date("w", $today); // Numeric representation of the day of the week 0 (for Sunday) through 6 (for Saturday) of today
//Using the same script to calculate the start/end of a week
$start_end = calculate_start_end_of_week($week_number, $year);
$start_end = calculate_start_end_of_week($week_number, $year);
$timestamp_first_date_of_week = mktime(0, 0, 0, $start_end['start']['month'], $start_end['start']['day'], $start_end['start']['year']);
$timestamp_last_date_of_week = mktime(0, 0, 0, $start_end['end']['month'], $start_end['end']['day'], $start_end['end']['year']);
//var_dump($start_end);
//var_dump($start_end);
/*$timestamp_first_date_of_week = $today - (($day_of_the_week -1) * 24 * 60 * 60); // timestamp of the monday of this week
$timestamp_last_date_of_week = $today + ((7 - $day_of_the_week) * 24 * 60 * 60); // timestamp of the sunday of this week
*/
$timestamp_last_date_of_week = $today + ((7 - $day_of_the_week) * 24 * 60 * 60); // timestamp of the sunday of this week
*/
$backwardsURL = api_get_self()."?coursePath=".urlencode($course_path)."&amp;courseCode=".Security::remove_XSS($_GET['courseCode'])."&amp;action=view&amp;view=week&amp;week=". ($week_number -1);
$forewardsURL = api_get_self()."?coursePath=".urlencode($course_path)."&amp;courseCode=".Security::remove_XSS($_GET['courseCode'])."&amp;action=view&amp;view=week&amp;week=". ($week_number +1);
echo '<table class="data_table">';
// The title row containing the the week information (week of the year (startdate of week - enddate of week)
echo '<tr>';
echo "<th width=\"10%\"><a href=\"", $backwardsURL, "\">".Display::return_icon('action_prev.png',get_lang('Previous'))."</a></th>";
echo "<th width=\"10%\"><a href=\"", $backwardsURL, "\">".Display::return_icon('action_prev.png',get_lang('Previous'))."</a></th>";
echo "<th colspan=\"5\">".get_lang("Week")." ".$week_number;
echo " (".$DaysShort['1']." ".date("j", $timestamp_first_date_of_week)." ".$MonthsLong[date("n", $timestamp_first_date_of_week) - 1]." ".date("Y", $timestamp_first_date_of_week)." - ".$DaysShort['0']." ".date("j", $timestamp_last_date_of_week)." ".$MonthsLong[date("n", $timestamp_last_date_of_week) - 1]." ".date("Y", $timestamp_last_date_of_week).')';
echo "</th>";
echo "<th width=\"10%\"><a href=\"", $forewardsURL, "\">".Display::return_icon('action_next.png',get_lang('Next'))."</a></th>", "</tr>";
// The second row containing the short names of the days of the week
echo "<tr>";
//Printing the week days
// this is the Day of the month without leading zeros (1 to 31) of the monday of this week
$tmp_timestamp = $timestamp_first_date_of_week;
$tmp_timestamp = $timestamp_first_date_of_week;
for ($ii = 1; $ii < 8; $ii ++) {
$is_today = ($ii == $thisday_of_the_week AND (!isset($_GET['week']) OR $_GET['week']==$thisweek_number));
echo "<td class=\"weekdays\">";
@ -3332,13 +3332,13 @@ function display_weekcalendar($agendaitems, $month, $year, $weekdaynames, $month
$tmp_timestamp = $tmp_timestamp + (24 * 60 * 60);
}
echo "</tr>";
// The table cells containing all the entries for that day
echo "<tr>";
$counter = 0;
foreach ($array_tmp_timestamp as $key => $value) {
if ($counter < 5) {
if ($counter < 5) {
$class = "class=\"days_week\"";
} else {
$class = "class=\"days_weekend\"";
@ -3422,12 +3422,12 @@ function get_day_agendaitems($courses_dbs, $month, $year, $day) {
//echo Database::num_rows($result);
while ($item = Database::fetch_array($result)) {
// in the display_daycalendar function we use $i (ranging from 0 to 47) for each halfhour
// we want to know for each agenda item for this day to wich halfhour it must be assigned
// we want to know for each agenda item for this day to wich halfhour it must be assigned
$item['start_date'] = api_get_local_time($item['start_date'], null, date_default_timezone_get());
list ($datepart, $timepart) = split(" ", $item['start_date']);
list ($year, $month, $day) = explode("-", $datepart);
list ($hours, $minutes, $seconds) = explode(":", $timepart);
list ($hours, $minutes, $seconds) = explode(":", $timepart);
$halfhour =2* $hours;
if ($minutes >= '30') {
@ -3447,7 +3447,7 @@ function get_day_agendaitems($courses_dbs, $month, $year, $day) {
$items[$halfhour][] .= "<i>".$hours.":".$minutes."</i> <a href=\"$URL\" title=\"".$array_course_info['name']."\">".$agenda_link."</a> ".$item['title']."<br />";
}
}
// sorting by hour for every day
$agendaitems = array();
while (list($agendaday, $tmpitems) = each($items)) {
@ -3467,10 +3467,10 @@ function get_week_agendaitems($courses_dbs, $month, $year, $week = '') {
global $_user;
global $_configuration;
global $setting_agenda_link;
$TABLEAGENDA = Database :: get_course_table(TABLE_AGENDA);
$TABLE_ITEMPROPERTY = Database :: get_course_table(TABLE_ITEM_PROPERTY);
$items = array ();
// The default value of the week
if ($week == '') {
@ -3480,7 +3480,7 @@ function get_week_agendaitems($courses_dbs, $month, $year, $week = '') {
}
$start_end = calculate_start_end_of_week($week_number, $year);
$start_filter = $start_end['start']['year']."-".$start_end['start']['month']."-".$start_end['start']['day'];
$end_filter = $start_end['end']['year']."-".$start_end['end']['month']."-".$start_end['end']['day'];
//var_dump($start_filter, $end_filter);
@ -3558,7 +3558,7 @@ function get_week_agendaitems($courses_dbs, $month, $year, $week = '') {
$items[$agendaday][$item['start_date']] .= "<div>".$item['title']."</div><br>";
}
}
$agendaitems = array ();
// sorting by hour for every day
while (list ($agendaday, $tmpitems) = each($items)) {
@ -3567,7 +3567,7 @@ function get_week_agendaitems($courses_dbs, $month, $year, $week = '') {
$agendaitems[$agendaday] .= $val;
}
}
return $agendaitems;
}
/**
@ -4607,47 +4607,47 @@ function agenda_import_ical($course_info,$file) {
return false;
}
require_once api_get_path(LIBRARY_PATH).'icalcreator/iCalcreator.class.php';
$ical = new vcalendar();
$ical->setConfig('directory', dirname($filepath) );
$ical->setConfig('directory', dirname($filepath) );
$ical->setConfig('filename', basename($filepath) );
$return = $ical->parse();
//we need to recover: summary, description, dtstart, dtend, organizer, attendee, location (=course name),
$ve = $ical->getComponent(VEVENT);
$ttitle = $ve->getProperty('summary');
$ttitle = $ve->getProperty('summary');
$title = api_convert_encoding($ttitle,$charset,'UTF-8');
$tdesc = $ve->getProperty('description');
$desc = api_convert_encoding($tdesc,$charset,'UTF-8');
$start_date = $ve->getProperty('dtstart');
$start_date_string = $start_date['year'].'-'.$start_date['month'].'-'.$start_date['day'].' '.$start_date['hour'].':'.$start_date['min'].':'.$start_date['sec'];
$ts = $ve->getProperty('dtend');
if ($ts != false) {
$end_date_string = $ts['year'].'-'.$ts['month'].'-'.$ts['day'].' '.$ts['hour'].':'.$ts['min'].':'.$ts['sec'];
$end_date_string = $ts['year'].'-'.$ts['month'].'-'.$ts['day'].' '.$ts['hour'].':'.$ts['min'].':'.$ts['sec'];
} else {
//Check duration if dtend does not exist
$duration = $ve->getProperty('duration');
if ($duration != false) {
$duration = $ve->getProperty('duration');
$duration_string = $duration['year'].'-'.$duration['month'].'-'.$duration['day'].' '.$duration['hour'].':'.$duration['min'].':'.$duration['sec'];
$duration_string = $duration['year'].'-'.$duration['month'].'-'.$duration['day'].' '.$duration['hour'].':'.$duration['min'].':'.$duration['sec'];
$start_date_tms = mktime(intval($start_date['hour']), intval($start_date['min']), intval($start_date['sec']), intval($start_date['month']), intval($start_date['day']), intval($start_date['year']));
//$start_date_tms = mktime(($start_date['hour']), ($start_date['min']), ($start_date['sec']), ($start_date['month']), ($start_date['day']), ($start_date['year']));
//echo date('d-m-Y - h:i:s', $start_date_tms);
$end_date_string = mktime(intval($start_date['hour']) +$duration['hour'], intval($start_date['min']) + $duration['min'], intval($start_date['sec']) + $duration['sec'], intval($start_date['month']) + $duration['month'], intval($start_date['day'])+$duration['day'], intval($start_date['year']) + $duration['year']);
$end_date_string = date('Y-m-d H:i:s', $end_date_string);
//echo date('d-m-Y - h:i:s', $end_date_string);
}
//echo date('d-m-Y - h:i:s', $end_date_string);
}
}
//echo $start_date.' - '.$end_date;
$organizer = $ve->getProperty('organizer');
$attendee = $ve->getProperty('attendee');
@ -4723,7 +4723,7 @@ function get_global_agenda_items($agendaitems, $day = "", $month = "", $year = "
$sql = " SELECT * FROM ".$tbl_global_agenda." WHERE start_date>='".$start_filter."' AND start_date<='".$end_filter."'";
}
$result = Database::query($sql);
while ($item = Database::fetch_array($result)) {
// we break the date field in the database into a date and a time part
$agenda_db_date = explode(" ", $item['start_date']);

@ -135,8 +135,8 @@ function get_myagendaitems($courses_dbs, $month, $year) {
$agendaitems[$agendaday] .= $val;
}
}
//print_r($agendaitems);
return $agendaitems;
}
@ -214,7 +214,7 @@ function display_myminimonthcalendar($agendaitems, $month, $year, $monthName) {
$numberofdays[2] = 29;
//Get the first day of the month
$dayone = getdate(mktime(0, 0, 0, $month, 1, $year));
//Start the week on monday
//Start the week on monday
$startdayofweek = $dayone['wday'] <> 0 ? ($dayone['wday'] - 1) : 6;
$g_cc = (isset($_GET['courseCode'])?$_GET['courseCode']:'');
$backwardsURL = api_get_self()."?coursePath=".urlencode($course_path)."&amp;courseCode=".Security::remove_XSS($g_cc)."&amp;month=". ($month == 1 ? 12 : $month -1)."&amp;year=". ($month == 1 ? $year -1 : $year);
@ -280,9 +280,9 @@ function display_myminimonthcalendar($agendaitems, $month, $year, $monthName) {
function show_new_personal_item_form($id = "") {
global $year, $MonthsLong;
global $_user;
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
// we construct the default time and date data (used if we are not editing a personal agenda item)
$today = getdate();
$day = $today['mday'];
@ -474,13 +474,13 @@ function show_new_personal_item_form($id = "") {
* @param date is the time in minute
* @param string is the agenda title
* @param string is the content
* @param int is the id this param is optional, but is necessary if the item require be edited
* @param int is the id this param is optional, but is necessary if the item require be edited
*/
function store_personal_item($day, $month, $year, $hour, $minute, $title, $content, $id = "") {
global $_user;
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
//constructing the date
$date = $year."-".$month."-".$day." ".$hour.":".$minute.":00";
@ -510,7 +510,7 @@ function store_personal_item($day, $month, $year, $hour, $minute, $title, $conte
function get_all_courses_of_user() {
global $_user;
$TABLECOURS = Database :: get_main_table(TABLE_MAIN_COURSE);
$TABLECOURSUSER = Database :: get_main_table(TABLE_MAIN_COURSE_USER);
$tbl_session_course = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE);
@ -545,7 +545,7 @@ function get_all_courses_of_user() {
*/
function get_courses_of_user() {
global $_user;
$TABLECOURS = Database :: get_main_table(TABLE_MAIN_COURSE);
$TABLECOURSUSER = Database :: get_main_table(TABLE_MAIN_COURSE_USER);
$sql_select_courses = "SELECT course.code k, course.visual_code vc,
@ -568,7 +568,7 @@ function get_courses_of_user() {
function get_personal_agenda_items($agendaitems, $day = "", $month = "", $year = "", $week = "", $type) {
global $_user;
global $_configuration;
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
// 1. creating the SQL statement for getting the personal agenda items in MONTH view
if ($type == "month_view" or $type == "") // we are in month view
@ -608,14 +608,14 @@ function get_personal_agenda_items($agendaitems, $day = "", $month = "", $year =
global $_configuration;
$root_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
if ($access_url_id != -1 ) {
$url = api_get_access_url($access_url_id);
$root_url = $url['url'];
}
}
$result = Database::query($sql);
while ($item = Database::fetch_array($result)) {
// we break the date field in the database into a date and a time part
@ -643,10 +643,10 @@ function get_personal_agenda_items($agendaitems, $day = "", $month = "", $year =
// if we have a day_view we use a half hour as index => key 33 = 16h30
if ($type !== "day_view") {
// This is the array construction for the WEEK or MONTH view
//Display events in agenda
$agendaitems[$day] .= "<div><i>$hour:$minute</i> $course_link <a href=\"myagenda.php?action=view&amp;view=personal&amp;day=$day&amp;month=$month&amp;year=$year&amp;id=".$item['id']."#".$item['id']."\" class=\"personal_agenda\">".$item['title']."</a></div><br />";
} else {
// this is the array construction for the DAY view
$halfhour = 2 * $agendatime['0'];
@ -655,7 +655,7 @@ function get_personal_agenda_items($agendaitems, $day = "", $month = "", $year =
}
//Display events by list
$agendaitems[$halfhour] .= "<div><i>$hour:$minute</i> $course_link <a href=\"myagenda.php?action=view&amp;view=personal&amp;day=$day&amp;month=$month&amp;year=$year&amp;id=".$item['id']."#".$item['id']."\" class=\"personal_agenda\">".$item['title']."</a></div>";
}
}
//print_r($agendaitems);
@ -688,10 +688,10 @@ function get_personal_agenda_item($id) {
* these items in one list (ordered by date and grouped by month (the month_bar)
*/
function show_personal_agenda() {
global $MonthsLong, $charset;
global $MonthsLong, $charset;
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
// The SQL statement that retrieves all the personal agenda items of this user
$sql = "SELECT * FROM ".$tbl_personal_agenda." WHERE user='".api_get_user_id()."' ORDER BY date DESC";
$result = Database::query($sql);
@ -727,15 +727,15 @@ function show_personal_agenda() {
$style = "datanow";
$text_style = "text";
}
/* display: the title */
echo "<tr>";
echo '<td class="'.$style.'" colspan="2">';
echo $myrow['title'];
echo "</td>";
echo "</tr>";
/*--------------------------------------------------
display: date and time
--------------------------------------------------*/
@ -786,7 +786,7 @@ function show_personal_agenda() {
*/
function show_simple_personal_agenda($user_id) {
global $MonthsLong, $charset;
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
// The SQL statement that retrieves all the personal agenda items of this user
@ -860,7 +860,7 @@ function show_simple_personal_agenda($user_id) {
*/
function delete_personal_agenda($id) {
global $_user;
$tbl_personal_agenda = Database :: get_user_personal_table(TABLE_PERSONAL_AGENDA);
if ($id != strval(intval($id))) {

@ -2569,7 +2569,7 @@ function register_course($courseSysCode, $courseScreenCode, $courseRepository, $
//adding the course to an URL
global $_configuration;
require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_id=1;
if (api_get_current_access_url_id()!=-1) {
$url_id=api_get_current_access_url_id();

@ -51,7 +51,7 @@ class AddCourseToSession {
}
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){

@ -620,7 +620,7 @@ class CourseManager {
WHERE course_rel_user.user_id='$user_id' AND course_rel_user.status='1'
ORDER BY course.title";
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
@ -1502,7 +1502,7 @@ class CourseManager {
}
global $_configuration;
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
$url_id = 1;
if (api_get_current_access_url_id() != -1) {

@ -293,11 +293,11 @@ class GroupPortalManager
* Gets the group's members
* @param int group id
* @param bool show image or not of the group
* @param array list of relation type use constants
* @param array list of relation type use constants
* @param int from value
* @param int limit
* @param int limit
* @param array image configuration, i.e array('height'=>'20px', 'size'=> '20px')
* @return array list of users in a group
* @return array list of users in a group
*/
public static function get_users_by_group($group_id, $with_image = false, $relation_type = array(), $from = 0, $limit = 15, $image_conf = array('size'=>USER_IMAGE_SIZE_MEDIUM,'height'=>80))
{
@ -335,7 +335,7 @@ class GroupPortalManager
$sql="SELECT picture_uri as image, u.user_id, u.firstname, u.lastname, relation_type FROM $tbl_user u
INNER JOIN $table_group_rel_user gu
ON (gu.user_id = u.user_id) WHERE gu.group_id= $group_id $where_relation_condition ORDER BY relation_type, firstname LIMIT $from, $limit";
$result=Database::query($sql);
$array = array();
while ($row = Database::fetch_array($result, 'ASSOC')) {
@ -557,7 +557,7 @@ class GroupPortalManager
/*
global $_configuration;
if ($_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}*/

@ -28,7 +28,7 @@ function LoginCheck($uid) {
$reallyNow = time();
$login_date = date("Y-m-d H:i:s",$reallyNow);
$access_url_id = 1;
if ($_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_id = api_get_current_access_url_id();
}
$session_id = api_get_session_id();
@ -136,18 +136,18 @@ function who_is_online($valid, $friends = false) {
} else {
// all users online
//$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' "; //WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."'
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." e INNER JOIN ".$table_user ." u ON (u.user_id=e.login_user_id) WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' ORDER BY picture_uri DESC";
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." e INNER JOIN ".$table_user ." u ON (u.user_id=e.login_user_id) WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' ORDER BY picture_uri DESC";
}
/*
//This query will show all registered users. Only for dev purposes.
$query = "SELECT DISTINCT u.user_id as login_user_id, login_date
FROM ".$track_online_table ." e , $table_user u
$query = "SELECT DISTINCT u.user_id as login_user_id, login_date
FROM ".$track_online_table ." e , $table_user u
GROUP by u.user_id ORDER BY picture_uri DESC";
}*/
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
@ -159,12 +159,12 @@ function who_is_online($valid, $friends = false) {
WHERE track.access_url_id = $access_url_id AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' AND friend_user_id <> '".api_get_user_id()."' AND relation_type='".USER_RELATION_TYPE_FRIEND."' ";
} else {
// all users online
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." track INNER JOIN ".$table_user ." u ON (u.user_id=track.login_user_id)
$query = "SELECT login_user_id,login_date FROM ".$track_online_table ." track INNER JOIN ".$table_user ." u ON (u.user_id=track.login_user_id)
WHERE track.access_url_id = $access_url_id AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' ORDER BY picture_uri DESC ";
}
}
}
$result = @Database::query($query);
//@todo why we dont believe in db query results?
if (count($result)>0) {
@ -174,9 +174,9 @@ function who_is_online($valid, $friends = false) {
$rarray = array();
while(list($login_user_id,$login_date)= Database::fetch_row($result)) {
$barray = array();
$barray = array();
array_push($barray,$login_user_id);
array_push($barray,$login_date);
array_push($barray,$login_date);
// YYYY-MM-DD HH:MM:SS, db date format
$hour = substr($login_date,11,2);
@ -187,11 +187,11 @@ function who_is_online($valid, $friends = false) {
$year = substr($login_date,0,4);
// db timestamp
$dbtime = mktime($hour,$minute,$secund,$month,$day,$year);
if ($dbtime>$validtime) {
array_push($rarray,$barray);
}
}
}
return $rarray;
} else {
return false;
@ -207,23 +207,23 @@ function who_is_online_count($valid, $friends = false) {
$query = '';
if ($friends) {
// who friends from social network is online
$query = "SELECT DISTINCT count(login_user_id) as count
$query = "SELECT DISTINCT count(login_user_id) as count
FROM $track_online_table INNER JOIN $friend_user_table ON (friend_user_id = login_user_id)
WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' AND friend_user_id <> '".api_get_user_id()."' AND relation_type='".USER_RELATION_TYPE_FRIEND."' AND user_id = '".api_get_user_id()."' ";
} else {
// all users online
$query = "SELECT count(login_id) as count FROM ".$track_online_table ." WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' "; //WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."'
$query = "SELECT count(login_id) as count FROM ".$track_online_table ." WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' "; //WHERE DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."'
}
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
if ($access_url_id != -1) {
if ($friends) {
// friends from social network is online
$query = "SELECT DISTINCT count(login_user_id) as count
FROM $track_online_table track
$query = "SELECT DISTINCT count(login_user_id) as count
FROM $track_online_table track
INNER JOIN $friend_user_table ON (friend_user_id = login_user_id)
WHERE track.access_url_id = $access_url_id AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= '".$current_date."' AND friend_user_id <> '".api_get_user_id()."' AND relation_type='".USER_RELATION_TYPE_FRIEND."' ";
} else {
@ -233,10 +233,10 @@ function who_is_online_count($valid, $friends = false) {
}
}
}
$result = Database::query($query);
if (Database::num_rows($result) > 0) {
$row = Database::fetch_array($result);
return $row['count'];
$result = Database::query($query);
if (Database::num_rows($result) > 0) {
$row = Database::fetch_array($result);
return $row['count'];
} else {
return false;
}
@ -373,10 +373,10 @@ function who_is_online_in_this_course_count($uid, $valid, $coursecode=null)
$query = "SELECT count(login_user_id) as count FROM ".$track_online_table ." WHERE course='".$coursecode."' AND DATE_ADD(login_date,INTERVAL $valid MINUTE) >= NOW() ";
$result = Database::query($query);
$result = Database::query($query);
$result = Database::query($query);
if (Database::num_rows($result) > 0) {
$row = Database::fetch_array($result);
return $row['count'];
$row = Database::fetch_array($result);
return $row['count'];
} else {
return false;
}

@ -380,7 +380,7 @@ class SessionManager {
$emailheaders = 'From: '.get_setting('administratorName').' '.get_setting('administratorSurname').' <'.get_setting('emailAdministrator').">\n";
$emailheaders .= 'Reply-To: '.get_setting('emailAdministrator');
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
$url = api_get_access_url($access_url_id);
@ -444,16 +444,16 @@ class SessionManager {
$insert_sql = "INSERT IGNORE INTO $tbl_session_rel_user(id_session, id_user) VALUES('$id_session','$enreg_user')";
Database::query($insert_sql);
}
// update number of users in the session
$nbr_users = count($user_list);
$update_sql = "UPDATE $tbl_session SET nbr_users= $nbr_users WHERE id='$id_session' ";
Database::query($update_sql);
}
/**
* Unsubscribe user from session
*
*
* @param int Session id
* @param int User id
* @return bool True in case of success, false in case of error
@ -461,20 +461,20 @@ class SessionManager {
public static function unsubscribe_user_from_session($session_id, $user_id) {
$session_id = (int)$session_id;
$user_id = (int)$user_id;
$tbl_session_rel_course_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
$tbl_session_rel_course = Database::get_main_table(TABLE_MAIN_SESSION_COURSE);
$tbl_session_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_USER);
$tbl_session = Database::get_main_table(TABLE_MAIN_SESSION);
$delete_sql = "DELETE FROM $tbl_session_rel_user WHERE id_session = '$session_id' AND id_user ='$user_id' AND relation_type<>".SESSION_RELATION_TYPE_RRHH."";
Database::query($delete_sql);
$return = Database::affected_rows();
// Update number of users
$update_sql = "UPDATE $tbl_session SET nbr_users= nbr_users - $return WHERE id='$session_id' ";
Database::query($update_sql);
// Get the list of courses related to this session
$course_list = SessionManager::get_course_list_by_session_id($session_id);
if(!empty($course_list)) {
@ -488,9 +488,9 @@ class SessionManager {
}
}
}
return true;
}
/** Subscribes courses to the given session and optionally (default) unsubscribes previous users
@ -575,7 +575,7 @@ class SessionManager {
/**
* Unsubscribe course from a session
*
*
* @param int Session id
* @param int Course id
* @return bool True in case of success, false otherwise
@ -583,17 +583,17 @@ class SessionManager {
public static function unsubscribe_course_from_session($session_id, $course_id) {
$session_id = (int)$session_id;
$course_id = (int)$course_id;
$tbl_session_rel_course = Database::get_main_table(TABLE_MAIN_SESSION_COURSE);
$tbl_session_rel_course_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
$tbl_session = Database::get_main_table(TABLE_MAIN_SESSION);
// Get course code
$course_code = CourseManager::get_course_code_from_course_id($course_id);
if($course_code == 0) {
return false;
}
// Unsubscribe course
Database::query("DELETE FROM $tbl_session_rel_course WHERE course_code='$course_code' AND id_session='$session_id'");
$nb_affected = Database::affected_rows();
@ -607,8 +607,8 @@ class SessionManager {
return false;
}
}
/**
* Creates a new extra field for a given session
@ -890,7 +890,7 @@ class SessionManager {
$result = @Database::query($sql);
while ($rows = Database::fetch_array($result)) {
$session_id = $rows['id'];
if($delete_session == true){
if ($delete_session == true){
if ($from_ws) {
SessionManager::delete_session($session_id,true);
} else {
@ -1105,7 +1105,7 @@ class SessionManager {
Database::query($sql);
}
*/
// inserting new sessions list
if (is_array($sessions_list)) {
foreach ($sessions_list as $session_id) {
@ -1144,11 +1144,11 @@ class SessionManager {
}
return $assigned_sessions_to_hrm;
}
/**
* Gets the list of courses by session
* @param int session id
* @return array list of courses
* @return array list of courses
*/
public static function get_course_list_by_session_id ($session_id) {
$tbl_course = Database::get_main_table(TABLE_MAIN_COURSE);
@ -1165,10 +1165,10 @@ class SessionManager {
}
return $courses;
}
/**
* Get the session id based on the original id and field name in the extra fields. Returns 0 if session was not found
*
*
* @param string Original session id
* @param string Original field name
* @return int Session id
@ -1179,7 +1179,7 @@ class SessionManager {
$sql_session = "SELECT session_id FROM $table_field sf INNER JOIN $t_sfv sfv ON sfv.field_id=sf.id WHERE field_variable='$original_session_id_name' AND field_value='$original_session_id_value'";
$res_session = Database::query($sql_session);
$row = Database::fetch_object($res_session);
if($row != false) {
if ($row != false) {
return $row->session_id;
} else {
return 0;

@ -197,7 +197,7 @@ class Tracking {
$rs = Database::query($sql);
if (Database::num_rows($rs)>0) {
if ($first_login_date = Database::result($rs, 0, 0)) {
if($convert_date == true) {
if ($convert_date == true) {
return api_convert_and_format_date($first_login_date, DATE_FORMAT_SHORT, date_default_timezone_get());
} else {
return $first_login_date;
@ -237,13 +237,13 @@ class Tracking {
//If the last connection is > than 7 days, the text is red
//345600 = 7 days in seconds
if ($currentTimestamp - $timestamp > 604800) {
if($convert_date == true) {
if ($convert_date == true) {
return '<span style="color: #F00;">' . api_format_date($last_login_date, DATE_FORMAT_SHORT) . (api_is_allowed_to_edit()?' <a href="'.api_get_path(REL_CODE_PATH).'announcements/announcements.php?action=add&remind_inactive='.$student_id.'" title="'.get_lang('RemindInactiveUser').'"><img align="middle" src="'.api_get_path(WEB_IMG_PATH).'messagebox_warning.gif" /></a>':'').'</span>';
} else {
return $last_login_date;
}
} else {
if($convert_date == true) {
if ($convert_date == true) {
return api_format_date($last_login_date, DATE_FORMAT_SHORT);
} else {
return $last_login_date;
@ -364,7 +364,7 @@ class Tracking {
AND exe_cours_id = '$course_code'
AND orig_lp_item_id = 0
ORDER BY exe_date DESC";
$res = Database::query($sql);
$row = Database::fetch_array($res);
$quiz_avg_score = 0;
@ -428,7 +428,7 @@ class Tracking {
* @param string Course code
* @param array Limit average to listed lp ids
* @param int Session id (optional), if parameter $session_id is null(default) it'll return results including sessions, 0 = session is not filtered
* @param bool Will return an array of the type: [sum_of_progresses, number] if it is set to true
* @param bool Will return an array of the type: [sum_of_progresses, number] if it is set to true
* @return double Average progress of the user in this course
*/
public static function get_avg_student_progress($student_id, $course_code, $lp_ids = array(), $session_id = null, $return_array = false) {
@ -493,7 +493,7 @@ class Tracking {
}
// average progress = total sum divided by the number of views
// summed up.
if($return_array == false) {
if ($return_array == false) {
$avg_progress = round($sum / $number_items, 1);
return $avg_progress;
} else {
@ -520,14 +520,14 @@ class Tracking {
* @return string Value (number %) Which represents a round integer explain in got in 3.
*/
public static function get_avg_student_score($student_id, $course_code, $lp_ids=array(), $session_id = null, $return_array = false) {
// get global tables names
$course_table = Database :: get_main_table(TABLE_MAIN_COURSE);
$course_user_table = Database :: get_main_table(TABLE_MAIN_COURSE_USER);
$table_session_course_user = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
$tbl_stats_exercices = Database :: get_statistic_table(TABLE_STATISTIC_TRACK_E_EXERCICES);
$tbl_stats_attempts = Database :: get_statistic_table(TABLE_STATISTIC_TRACK_E_ATTEMPT);
$course = CourseManager :: get_course_information($course_code);
if (!empty($course['db_name'])) {
@ -537,15 +537,15 @@ class Tracking {
$lp_item_table = Database :: get_course_table(TABLE_LP_ITEM,$course['db_name']);
$lp_view_table = Database :: get_course_table(TABLE_LP_VIEW,$course['db_name']);
$lp_item_view_table = Database :: get_course_table(TABLE_LP_ITEM_VIEW,$course['db_name']);
// Compose a filter based on optional learning paths list given
$condition_lp = "";
if(count($lp_ids) > 0) {
$condition_lp =" WHERE id IN(".implode(',',$lp_ids).") ";
}
}
// Compose a filter based on optional session id
$condition_session = "";
@ -565,12 +565,12 @@ class Tracking {
$lp_list = array();
while ($row_lp = Database::fetch_array($res_row_lp)) {
$lp_list[] = $row_lp[0];
}
}
// Init local variables that will be used through the calculation
$lp_scorm_score_total = 0;
$lp_scorm_result_score_total = 0;
$lp_scorm_loop=0;
$lp_count = 0;
$progress = 0;
@ -585,13 +585,13 @@ class Tracking {
}
//var_dump($student_id);
if ($count_row_lp>0 && !empty($student_id)) {
// Getting the total count of LP
$sql = "SELECT count(id) as count FROM $lp_table WHERE session_id = ".api_get_session_id();
$sql = "SELECT count(id) as count FROM $lp_table WHERE session_id = ".api_get_session_id();
$my_res = Database::query($sql);
$my_row = Database::fetch_array($my_res);
$count_views = $my_row['count'];
$rs_last_lp_view_id = Database::query($sql);
// Get all views through learning paths filter
@ -599,13 +599,13 @@ class Tracking {
"FROM $lp_view_table ".
"WHERE lp_id IN (".implode(',',$lp_list).") ".
"$condition_user1 GROUP BY lp_id,user_id";
$rs_last_lp_view_id = Database::query($sql);
$rs_last_lp_view_id = Database::query($sql);
$global_count_item = 0;
$real_count_views = 0 ;
$real_count_views = 0 ;
$global_result = 0;
if (Database::num_rows($rs_last_lp_view_id) > 0) {
// Cycle through each line of the results (grouped by lp_id, user_id)
@ -626,7 +626,7 @@ class Tracking {
" OR lp_i.item_type='".TOOL_QUIZ."') ".
" WHERE lp_view_id='$lp_view_id'";
//echo $sql_max_score; echo '<br />';
$res_max_score = Database::query($sql_max_score);
$count_total_loop = 0;
$num_rows_max_score = Database::num_rows($res_max_score);
@ -634,10 +634,10 @@ class Tracking {
// Go through each scorable element of this view
$count_items = 0;
//4 -2 ------ 4 - 1
//echo '<br>';
//echo '<br>';
$lp_partial_total = 0;
$score_of_scorm_calculate = 0;
$score_of_scorm_calculate = 0;
while ($row_max_score = Database::fetch_array($res_max_score)) {
$max_score = $row_max_score['max_score'];
$score = $row_max_score['score'];
@ -685,70 +685,70 @@ class Tracking {
}
$lp_scorm_result_score_total += ($score/$max_score);
$lp_partial_total += ($score/$max_score);
//echo '<br>'; echo $lp_scorm_result_score_total.' - '."$score/$max_score"; echo '<br>';
//echo '<br>'; echo $lp_scorm_result_score_total.' - '."$score/$max_score"; echo '<br>';
//echo $lp_scorm_result_score_total;
//var_dump($score,$max_score);
//var_dump($score,$max_score);
$current_value = $score/$max_score;
} else {
//$lp_scorm_result_score_total += 0;
}
}
$count_items++;
$count_items++;
} //end while
$global_count_item +=$count_items;
//echo 'lp_view '.$lp_view_id.' - $count_items '.$count_items.' lp partiual '.$lp_partial_total.'- <br />';
$score_of_scorm_calculate += $count_items?round((($lp_partial_total/$count_items)*100),2):0;
$global_result += $score_of_scorm_calculate;
$real_count_views++;
} // end while
/*echo '<br>$lp_scorm_result_score_total:'.($global_result); echo '<br>';
/*echo '<br>$lp_scorm_result_score_total:'.($global_result); echo '<br>';
echo ("lp score :".($score_of_scorm_calculate));
echo '<br>'; */
echo '<br>'; */
}
if ($real_count_views == 1) {
$count_views = 1;
}
$lp_with_quiz = 0;
$lp_with_quiz = 0;
$total_lp = 0;
foreach($lp_list as $lp_id) {
//check if LP have a score
$sql = "SELECT count(id) as count FROM $lp_item_table
$sql = "SELECT count(id) as count FROM $lp_item_table
WHERE item_type = 'quiz' AND lp_id = ".$lp_id." ";
$result_have_quiz = Database::query($sql);
$result_have_quiz = Database::query($sql);
if (Database::num_rows($result_have_quiz) > 0 ) {
$row = Database::fetch_array($result_have_quiz,'ASSOC');
if (is_numeric($row['count']) && $row['count'] != 0) {
$lp_with_quiz ++;
$lp_with_quiz ++;
}
}
}
$total_lp ++;
}
//var_dump($lp_with_quiz);
//var_dump($lp_with_quiz);
if ($lp_with_quiz != 0 ) {
if($return_array == false) {
$score_of_scorm_calculate = round(($global_result/$lp_with_quiz),2);
if ($return_array == false) {
$score_of_scorm_calculate = round(($global_result/$lp_with_quiz),2);
return $score_of_scorm_calculate;
} else {
return array($global_result, $lp_with_quiz);
}
} else {
return '-';
}
}
}
return null;
}
/**
* This function gets time spent in learning path for a student inside a course
@ -875,7 +875,7 @@ class Tracking {
$sql = 'SELECT id_session, course_code FROM ' . $tbl_session_course_user . ' WHERE id_user=' . $coach_id.' AND status=2';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$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) {
@ -917,7 +917,7 @@ class Tracking {
INNER JOIN ' . $tbl_session . ' as session
ON session.id = session_course.id_session
AND session.id_coach = ' . $coach_id;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$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){
@ -1074,7 +1074,7 @@ class Tracking {
$sql = 'SELECT DISTINCT course_code FROM ' . $tbl_session_course_user . ' WHERE id_user=' . $coach_id.' AND status=2';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -1102,7 +1102,7 @@ class Tracking {
INNER JOIN ' . $tbl_course . ' as course
ON course.code = session_course.course_code';
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_course_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -1120,10 +1120,10 @@ class Tracking {
if (!empty ($id_session)) {
$sql .= ' WHERE session_course.id_session=' . $id_session;
if ($_configuration['multiple_access_urls']==true)
if ($_configuration['multiple_access_urls'])
$sql .= ' AND access_url_id = '.$access_url_id;
} else {
if ($_configuration['multiple_access_urls']==true)
if ($_configuration['multiple_access_urls'])
$sql .= ' WHERE access_url_id = '.$access_url_id;
}
@ -1156,7 +1156,7 @@ class Tracking {
WHERE id_coach=' . $coach_id;
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$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){
@ -1182,7 +1182,7 @@ class Tracking {
AND session_course_user.id_user=' . $coach_id.' AND session_course_user.status=2';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$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){
@ -1727,24 +1727,24 @@ class Tracking {
$average_data1=0;
$count_loop++;
}
//We only count the LP that have an exercise to get the average
$lp_with_quiz = 0;
$lp_with_quiz = 0;
foreach($lp_list as $lp_id) {
//check if LP have a score
$sql = "SELECT count(id) as count FROM $lp_item_table
$sql = "SELECT count(id) as count FROM $lp_item_table
WHERE item_type = 'quiz' AND lp_id = ".$lp_id." ";
$result_have_quiz = Database::query($sql);
$result_have_quiz = Database::query($sql);
if (Database::num_rows($result_have_quiz) > 0 ) {
$row = Database::fetch_array($result_have_quiz,'ASSOC');
if (is_numeric($row['count']) && $row['count'] != 0) {
$lp_with_quiz++;
$lp_with_quiz++;
}
}
}
}
if ($lp_with_quiz > 0) {
$avg_student_score = round(($average_data_sum / $lp_with_quiz * 100), 2);
}
@ -1941,7 +1941,7 @@ class TrackingCourseLog {
" WHERE tool.session_id = session.id AND session.id_coach = user.user_id AND tool.$id = $ref";
}
$recorset = Database::query($query);
if (!empty($recorset)) {
@ -1956,7 +1956,7 @@ class TrackingCourseLog {
$url_tool = api_get_path(WEB_CODE_PATH).$table_name['link_tool'];
$row[0] = '';
if ($row['col6'] != 2) {
if ($row['col6'] != 2) {
if (in_array($row['col0'], $thematic_tools)) {
$exp_thematic_tool = explode('_', $row['col0']);
@ -1988,38 +1988,38 @@ class TrackingCourseLog {
$obj_document = Database::fetch_object($rs_document);
$row[4] = $obj_document->title;
break;
case 'announcement':
case 'announcement':
$query_document = "SELECT title FROM $table_tool " .
" WHERE id = $ref";
" WHERE id = $ref";
$rs_document = Database::query($query_document);
$obj_document = Database::fetch_object($rs_document);
$row[4] = $obj_document->title;
break;
case 'glossary':
$query_document = "SELECT name FROM $table_tool " .
" WHERE glossary_id = $ref";
" WHERE glossary_id = $ref";
$rs_document = Database::query($query_document);
$obj_document = Database::fetch_object($rs_document);
$row[4] = $obj_document->name;
break;
case 'lp':
$query_document = "SELECT name FROM $table_tool " .
" WHERE id = $ref";
" WHERE id = $ref";
$rs_document = Database::query($query_document);
$obj_document = Database::fetch_object($rs_document);
$row[4] = $obj_document->name;
break;
case 'quiz':
$query_document = "SELECT title FROM $table_tool " .
" WHERE id = $ref";
" WHERE id = $ref";
$rs_document = Database::query($query_document);
$obj_document = Database::fetch_object($rs_document);
$row[4] = $obj_document->title;
break;
case 'course_description':
$query_document = "SELECT title FROM $table_tool " .
" WHERE id = $ref";
" WHERE id = $ref";
$rs_document = Database::query($query_document);
$obj_document = Database::fetch_object($rs_document);
$row[4] = $obj_document->title;
@ -2275,14 +2275,14 @@ class TrackingCourseLog {
function get_user_data($from, $number_of_items, $column, $direction) {
global $user_ids, $course_code, $additional_user_profile_info, $export_csv, $is_western_name_order, $csv_content, $session_id, $_configuration;
$course_code = Database::escape_string($course_code);
$course_info = CourseManager :: get_course_information($course_code);
$tbl_user = Database :: get_main_table(TABLE_MAIN_USER);
$access_url_id = api_get_current_access_url_id();
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
// get all users data from a course for sortable with limit
$condition_user = "";
if (is_array($user_ids)) {
@ -2290,12 +2290,12 @@ class TrackingCourseLog {
} else {
$condition_user = " WHERE user.user_id = '$user_ids' ";
}
if ($_configuration['multiple_access_urls']) {
$url_table = ", ".$tbl_url_rel_user."as url_users";
$url_condition = " AND user.user_id = url_users.user_id AND access_url_id='$access_url_id'";
}
$sql = "SELECT user.user_id as col0,
user.official_code as col1,
user.lastname as col2,
@ -2327,10 +2327,10 @@ class TrackingCourseLog {
$row[2] = $user[3];
}
$row[3] = api_time_to_hms(Tracking::get_time_spent_on_the_course($user[0], $course_code, $session_id));
$avg_student_score = Tracking::get_avg_student_score($user[0], $course_code, array(), $session_id);
//echo '<b>student '.$user[0].' $avg_student_score:</b> '.$avg_student_score; echo '<br />';
$avg_student_progress = Tracking::get_avg_student_progress($user[0], $course_code, array(), $session_id);
$avg_student_progress = Tracking::get_avg_student_progress($user[0], $course_code, array(), $session_id);
if (empty($avg_student_progress)) {$avg_student_progress=0;}
$row[4] = $avg_student_progress.'%';
//if (empty($avg_student_score)) {$avg_student_score=0;}

@ -36,7 +36,7 @@ define('USER_RELATION_TYPE_FRIEND', 3);
define('USER_RELATION_TYPE_GOODFRIEND', 4); // should be deprecated is useless
define('USER_RELATION_TYPE_ENEMY', 5); // should be deprecated is useless
define('USER_RELATION_TYPE_DELETED', 6);
define('USER_RELATION_TYPE_RRHH', 7);
define('USER_RELATION_TYPE_RRHH', 7);
class UserManager
{
@ -133,7 +133,7 @@ class UserManager
$return = Database::insert_id();
global $_configuration;
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
if (api_get_current_access_url_id() != -1) {
UrlManager::add_user_to_url($return, api_get_current_access_url_id());
} else {
@ -270,8 +270,8 @@ class UserManager
$sqlv = "DELETE FROM $t_ufv WHERE user_id = $user_id";
$resv = Database::query($sqlv);
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls']) {
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls']) {
$url_id = 1;
if (api_get_current_access_url_id() != -1) {
$url_id = api_get_current_access_url_id();
@ -383,10 +383,10 @@ class UserManager
}
return $return;
}
/**
* Disables or enables a user
*
*
* @param int user_id
* @param int Enable or disable
*/
@ -396,28 +396,28 @@ class UserManager
$sql = "UPDATE $table_user SET active = '$active' WHERE user_id = '$user_id';";
Database::query($sql);
}
/**
* Disables a user
*
*
* @param int User id
*/
public static function disable($user_id) {
self::change_active_state($user_id, 0);
}
/**
* Enable a user
*
*
* @param int User id
*/
public static function enable($user_id) {
self::change_active_state($user_id, 1);
}
/**
* Returns the user's id based on the original id and field name in the extra fields. Returns 0 if no user was found
*
*
* @param string Original user id
* @param string Original field name
* @return int User id
@ -428,7 +428,7 @@ class UserManager
$sql = "SELECT user_id FROM $t_uf uf INNER JOIN $t_ufv ufv ON ufv.field_id=uf.id WHERE field_variable='$original_user_id_name' AND field_value='$original_user_id_value';";
$res = Database::query($sql);
$row = Database::fetch_object($res);
if($row != false) {
if ($row != false) {
return $row->user_id;
} else {
return 0;
@ -525,10 +525,10 @@ class UserManager
// 2. Length limitation.
return substr(preg_replace(USERNAME_PURIFIER_SHALLOW, '', $username), 0, USERNAME_MAX_LENGTH);
}
/**
* Checks whether the user id exists in the database
*
*
* @param int User id
* @return bool True if user id was found, false otherwise
*/
@ -1096,7 +1096,7 @@ class UserManager
// Otherwise update it
$sql_query = "UPDATE $t_ufv SET field_value = '$fvalues', tms = FROM_UNIXTIME($tms) WHERE id = ".$rowufv['id'];
}
$resu = Database::query($sql_query);
return($resu ? true : false);
}
@ -1450,11 +1450,11 @@ class UserManager
$filter_cond .= " AND field_filter = $field_filter ";
}
$sql .= " WHERE f.field_visible = 1 $filter_cond ";
} else {
} else {
if (isset($field_filter)) {
$field_filter = intval($field_filter);
$sql .= " WHERE field_filter = $field_filter ";
}
}
}
$sql .= " ORDER BY f.field_order";
@ -1672,13 +1672,13 @@ class UserManager
}
return $result_data;
}
/**
* Get extra user data by field variable
* @param string field variable
* @return array data
*/
public static function get_extra_user_data_by_field_variable($field_variable) {
public static function get_extra_user_data_by_field_variable($field_variable) {
$tbl_user_field_values = Database::get_main_table(TABLE_MAIN_USER_FIELD_VALUES);
$extra_information_by_variable = self::get_extra_field_information_by_name($field_variable);
$field_id = intval($extra_information_by_variable['id']);
@ -1718,7 +1718,7 @@ class UserManager
//we filter the courses from the URL
$join_access_url=$where_access_url='';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if($access_url_id!=-1) {
$tbl_url_course = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
@ -1807,8 +1807,8 @@ class UserManager
//we filter the courses from the URL
$join_access_url = $where_access_url = '';
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$tbl_url_course = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
@ -1819,7 +1819,7 @@ class UserManager
// variable initialisation
$personal_course_list_sql = '';
//Courses in which we suscribed out of any session
/*$personal_course_list_sql = "SELECT course.code k, course.directory d, course.visual_code c, course.db_name db, course.title i,
course.tutor_name t, course.course_language l, course_rel_user.status s, course_rel_user.sort sort,
@ -1983,7 +1983,7 @@ class UserManager
//we filter the courses from the URL
$join_access_url=$where_access_url='';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if($access_url_id!=-1) {
$tbl_url_course = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
@ -2087,9 +2087,9 @@ class UserManager
$return .= '<ul>';
}
foreach ($file_list as $file) {
if($resourcetype=="all")
{
$return .= '<li><a href="'.$web_path.urlencode($file).'" target="_blank">'.htmlentities($file).'</a>';
@ -2097,7 +2097,7 @@ class UserManager
elseif($resourcetype=="images")
{
//get extension
$ext = explode('.', $file);
$ext = explode('.', $file);
if($ext[1]=='jpg' || $ext[1]=='jpeg'|| $ext[1]=='png' || $ext[1]=='gif' || $ext[1]=='bmp' || $ext[1]=='tif')
{
$return .= '<li style="display:inline;"><a href="'.$web_path.urlencode($file).'" target="_blank"><img src="'.$web_path.urlencode($file).'" width="80" height="60"></a>';
@ -2726,7 +2726,7 @@ class UserManager
$keyword = $tag;
$sql = "SELECT u.user_id, u.username, firstname, lastname, email, picture_uri FROM $user_table u";
global $_configuration;
if ($_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}
@ -2746,7 +2746,7 @@ class UserManager
$sql .= " AND u.status <> 6 ";
// adding the filter to see the user's only of the current access_url
if ($_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}
$direction = 'ASC';
@ -2814,7 +2814,7 @@ class UserManager
// adding the filter to see the user's only of the current access_url
global $_configuration;
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ((api_is_platform_admin() || api_is_session_admin()) && $_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$access_url_rel_user_table= Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql.= " INNER JOIN $access_url_rel_user_table url_rel_user ON (u.user_id=url_rel_user.user_id)";
}
@ -2831,7 +2831,7 @@ class UserManager
}
// adding the filter to see the user's only of the current access_url
if ($_configuration['multiple_access_urls']==true && api_get_current_access_url_id()!=-1) {
if ($_configuration['multiple_access_urls'] && api_get_current_access_url_id()!=-1) {
$sql.= " AND url_rel_user.access_url_id=".api_get_current_access_url_id();
}
@ -2894,7 +2894,7 @@ class UserManager
//we filter the courses from the URL
$join_access_url=$where_access_url='';
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if($access_url_id!=-1) {
$tbl_url_course = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
@ -3026,7 +3026,7 @@ class UserManager
}
}
}
/**
* get users folloewd by human resource manager
* @param int hr_dept id
@ -3038,26 +3038,26 @@ class UserManager
// Database Table Definitions
$tbl_user = Database::get_main_table(TABLE_MAIN_USER);
$tbl_user_rel_user = Database::get_main_table(TABLE_MAIN_USER_REL_USER);
$hr_dept_id = intval($hr_dept_id);
$hr_dept_id = intval($hr_dept_id);
$assigned_users_to_hrm = array();
$condition_status = '';
if (!empty($user_status)) {
$status = intval($status);
$status = intval($status);
$condition_status = ' AND u.status = '.$user_status;
}
$sql = "SELECT u.user_id, u.username, u.lastname, u.firstname, u.email FROM $tbl_user u
INNER JOIN $tbl_user_rel_user uru ON uru.user_id = u.user_id AND friend_user_id = '$hr_dept_id' AND relation_type = '".USER_RELATION_TYPE_RRHH."' $condition_status";
$rs_assigned_users = Database::query($sql, __FILE__, __LINE__);
if (Database::num_rows($rs_assigned_users) > 0) {
while ($row_assigned_users = Database::fetch_array($rs_assigned_users)) {
$assigned_users_to_hrm[$row_assigned_users['user_id']] = $row_assigned_users;
$assigned_users_to_hrm[$row_assigned_users['user_id']] = $row_assigned_users;
}
}
}
return $assigned_users_to_hrm;
}
/**
@ -3073,16 +3073,16 @@ class UserManager
$tbl_user_rel_user = Database::get_main_table(TABLE_MAIN_USER_REL_USER);
$hr_dept_id = intval($hr_dept_id);
$affected_rows = 0;
//Deleting assigned users to hrm_id
$affected_rows = 0;
//Deleting assigned users to hrm_id
$sql = "SELECT user_id FROM $tbl_user_rel_user WHERE friend_user_id = $hr_dept_id AND relation_type = '".USER_RELATION_TYPE_RRHH."' ";
$result = Database::query($sql,__FILE__,__LINE__);
if (Database::num_rows($result) > 0) {
$sql = "DELETE FROM $tbl_user_rel_user WHERE friend_user_id = $hr_dept_id AND relation_type = '".USER_RELATION_TYPE_RRHH."' ";
Database::query($sql,__FILE__,__LINE__);
Database::query($sql,__FILE__,__LINE__);
}
// inserting new user list
if (is_array($users_id)) {
foreach ($users_id as $user_id) {
@ -3090,35 +3090,35 @@ class UserManager
$insert_sql = "INSERT IGNORE INTO $tbl_user_rel_user(user_id, friend_user_id, relation_type) VALUES('$user_id', $hr_dept_id, '".USER_RELATION_TYPE_RRHH."')";
Database::query($insert_sql,__FILE__,__LINE__);
$affected_rows = Database::affected_rows();
}
}
}
return $affected_rows;
}
/**
* This function check if an user is followed by human resources manager
* @param int User id
* @param int User id
* @param int Human resources manager
* @return bool
*/
public static function is_user_followed_by_drh($user_id, $hr_dept_id) {
// Database table and variables Definitions
// Database table and variables Definitions
$tbl_user_rel_user = Database::get_main_table(TABLE_MAIN_USER_REL_USER);
$user_id = intval($user_id);
$hr_dept_id = intval($hr_dept_id);
$hr_dept_id = intval($hr_dept_id);
$result = false;
$sql = "SELECT user_id FROM $tbl_user_rel_user WHERE user_id='$user_id' AND friend_user_id='$hr_dept_id' AND relation_type=".USER_RELATION_TYPE_RRHH." ";
$rs = Database::query($sql);
if (Database::num_rows($rs) > 0) {
$result = true;
$result = true;
}
return $result;
}
/**
* get user id of teacher or session administrator
@ -3129,7 +3129,7 @@ class UserManager
$session=api_get_session_id();
$table_user = Database::get_main_table(TABLE_MAIN_USER);
$table_course_user = Database::get_main_table(TABLE_MAIN_COURSE_USER);
$table_session_course_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
$table_session_course_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
if ($session==0 || is_null($session)) {
$sql='SELECT u.user_id FROM '.$table_user.' u
INNER JOIN '.$table_course_user.' ru ON ru.user_id=u.user_id
@ -3143,23 +3143,23 @@ class UserManager
$my_num_rows=$num_rows;
$my_user_id=Database::result($rs,$my_num_rows-1,'user_id');
return $my_user_id;
}
}
} elseif ($session>0) {
$sql='SELECT u.user_id FROM '.$table_user.' u
INNER JOIN '.$table_session_course_user.' sru
ON sru.id_user=u.user_id WHERE sru.course_code="'.Database::escape_string($course_id).'" ';
$rs=Database::query($sql,__FILE__,__LINE__);
$row=Database::fetch_array($rs);
return $row['user_id'];
}
}
/**
* Determines if a user is a gradebook certified
* @param int The category id of gradebook
* @param int The user id
* @return boolean
* @return boolean
*/
public function is_user_certified($cat_id,$user_id) {
$table_certificate = Database::get_main_table(TABLE_MAIN_GRADEBOOK_CERTIFICATE);
@ -3174,10 +3174,10 @@ class UserManager
}
/**
* Gets the info about a gradebook certificate for a user by course
* Gets the info about a gradebook certificate for a user by course
* @param string The course code
* @param int The user id
* @return array if there is not information return false
* @return array if there is not information return false
*/
public function get_info_gradebook_certificate($course_code,$user_id) {
$tbl_grade_certificate = Database::get_main_table(TABLE_MAIN_GRADEBOOK_CERTIFICATE);
@ -3185,9 +3185,9 @@ class UserManager
$sql='SELECT * FROM '.$tbl_grade_certificate.' WHERE cat_id= (SELECT id FROM '.$tbl_grade_category.' WHERE course_code = "'.Database::escape_string($course_code).'" ) AND user_id="'.Database::escape_string($user_id).'" ';
$rs = Database::query($sql,__FILE__,__LINE__);
$row= Database::fetch_array($rs);
if (Database::num_rows($rs) > 0)
return $row;
else
if (Database::num_rows($rs) > 0)
return $row;
else
return false;
}
@ -3200,7 +3200,7 @@ class UserManager
$my_certificate = array();
$table_certificate = Database::get_main_table(TABLE_MAIN_GRADEBOOK_CERTIFICATE);
$table_gradebook_category = Database::get_main_table(TABLE_MAIN_GRADEBOOK_CATEGORY);
$session_id = api_get_session_id();
$user_id = intval($user_id);
if ($session_id==0 || is_null($session_id)) {
@ -3210,9 +3210,9 @@ class UserManager
} else {
$sql_session='';
}
$sql= "SELECT tc.path_certificate,tc.cat_id,tgc.course_code,tgc.name FROM $table_certificate tc, $table_gradebook_category tgc
WHERE tgc.id = tc.cat_id AND tc.user_id='$user_id' ORDER BY tc.date_certificate DESC limit 5";
$sql= "SELECT tc.path_certificate,tc.cat_id,tgc.course_code,tgc.name FROM $table_certificate tc, $table_gradebook_category tgc
WHERE tgc.id = tc.cat_id AND tc.user_id='$user_id' ORDER BY tc.date_certificate DESC limit 5";
$rs=Database::query($sql,__FILE__,__LINE__);
while ($row=Database::fetch_array($rs)) {
$my_certificate[]=$row;
@ -3229,21 +3229,21 @@ class UserManager
* @return bool True if the user is a coach
*
*/
public function is_session_course_coach($user_id, $course_code, $session_id) {
$tbl_session_course_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
public function is_session_course_coach($user_id, $course_code, $session_id) {
$tbl_session_course_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
// Protect data
$user_id = intval($user_id);
$course_code = Database::escape_string($course_code);
$session_id = intval($session_id);
$result = false;
$sql = "SELECT id_session FROM $tbl_session_course_rel_user WHERE id_session=$session_id AND course_code='$course_code' AND id_user = $user_id AND status=2 ";
$res = Database::query($sql);
if (Database::num_rows($res) > 0) {
$result = true;
}
return $result;
}
return $result;
}
}

@ -174,67 +174,67 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
if (isset($_user['user_id'])) {
unset($_user['user_id']);
}
//$_SESSION['info_current_user'][1] is user name
//$_SESSION['info_current_user'][2] is current password encrypted
//$_SESSION['update_term_and_condition'][1] is current user id, of user in session
if (api_get_setting('allow_terms_conditions')=='true') {
if (isset($_POST['login']) && isset($_POST['password']) && isset($_SESSION['update_term_and_condition'][1])) {
$user_id=$_SESSION['update_term_and_condition'][1]; // user id
// update the terms & conditions
//verify type of terms and conditions
$info_legal = explode(':',$_POST['legal_info']);
$legal_type=LegalManager::get_type_of_terms_and_conditions($info_legal[0],$info_legal[1]);
//is necessary verify check
if ($legal_type==1) {
if ((isset($_POST['legal_accept']) && $_POST['legal_accept']=='1')) {
$legal_option=true;
} else {
$legal_option=false;
}
}
//no is check option
if ($legal_type==0) {
$legal_option=true;
}
if (isset($_POST['legal_accept_type']) && $legal_option===true) {
$cond_array = explode(':',$_POST['legal_accept_type']);
if (!empty($cond_array[0]) && !empty($cond_array[1])){
$time = time();
$condition_to_save = intval($cond_array[0]).':'.intval($cond_array[1]).':'.$time;
UserManager::update_extra_field_value($user_id,'legal_accept',$condition_to_save);
}
}
}
}
if ((isset($_POST['login']) && isset($_POST['password']))) {
// $login && $password are given to log in
$login = $_POST['login'];
$password = $_POST['password'];
//lookup the user in the main database
$user_table = Database::get_main_table(TABLE_MAIN_USER);
$sql = "SELECT user_id, username, password, auth_source, active, expiration_date
FROM $user_table
WHERE username = '".trim(addslashes($login))."'";
$result = Database::query($sql);
if (Database::num_rows($result) > 0) {
$uData = Database::fetch_array($result);
if ($uData['auth_source'] == PLATFORM_AUTH_SOURCE) {
//the authentification of this user is managed by Chamilo itself
$password = trim(stripslashes($password));
// determine if the password needs to be encrypted before checking
// $userPasswordCrypted is set in an external configuration file
/*if ($userPasswordCrypted) {
$password = md5($password);
} */
@ -260,10 +260,10 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
unset($_SESSION['update_term_and_condition']);
unset($_SESSION['info_current_user']);
}
}
}
// Check the user's password
if ($password == $uData['password'] AND (trim($login) == $uData['username'])) {
// Check if the account is active (not locked)
@ -271,29 +271,29 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
// Check if the expiration date has not been reached
if ($uData['expiration_date']>date('Y-m-d H:i:s') OR $uData['expiration_date']=='0000-00-00 00:00:00') {
global $_configuration;
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$admin_table = Database::get_main_table(TABLE_MAIN_ADMIN);
//Check if user is an admin
//Check if user is an admin
$sql = "SELECT user_id FROM $admin_table
WHERE user_id = '".trim(addslashes($uData['user_id']))."' LIMIT 1";
$result = Database::query($sql);
$my_user_is_admin = false;
$my_user_is_admin = false;
if (Database::num_rows($result) > 0) {
$my_user_is_admin = true;
}
// This user is subscribed in these sites => $my_url_list
$my_url_list = api_get_access_url_from_user($uData['user_id']);
//Check the access_url configuration setting if the user is registered in the access_url_rel_user table
//Getting the current access_url_id of the platform
$current_access_url_id = api_get_current_access_url_id();
if ($my_user_is_admin === false) {
if ($my_user_is_admin === false) {
if (is_array($my_url_list) && count($my_url_list)>0 ){
// the user have the permissions to enter at this site
if (in_array($current_access_url_id, $my_url_list)) {
@ -317,7 +317,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
if (in_array(1, $my_url_list)) { //Check if this admin have the access_url_id = 1 which means the principal
$_user['user_id'] = $uData['user_id'];
api_session_register('_user');
event_login();
event_login();
} else {
//This means a secondary admin wants to login so we check as he's a normal user
if (in_array($current_access_url_id, $my_url_list)) {
@ -356,7 +356,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
header('Location: '.api_get_path(WEB_PATH).'index.php?loginFailed=1&error=user_password_incorrect');
exit;
}
if (isset($uData['creator_id']) && $_user['user_id'] != $uData['creator_id']) {
//first login for a not self registred
//e.g. registered by a teacher
@ -374,7 +374,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
// see configuration.php to define these
include_once($extAuthSource[$key]['login']);
/* >>>>>>>> External authentication modules <<<<<<<<< */
} else { // no standard Chamilo login - try external authentification
} else { // no standard Chamilo login - try external authentification
//huh... nothing to do... we shouldn't get here
error_log('Chamilo Authentication file '. $extAuthSource[$uData['auth_source']]['login']. ' could not be found - this might prevent your system from doing the corresponding authentication process',0);
}
@ -394,7 +394,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
// login failed, Database::num_rows($result) <= 0
$loginFailed = true; // Default initialisation. It could
// change after the external authentication
/*
* In this section:
* there is no entry for the $login user in the Chamilo
@ -411,7 +411,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
* responsability of the external login script
* to provide this $_user['user_id'].
*/
if (isset($extAuthSource) && is_array($extAuthSource)) {
foreach($extAuthSource as $thisAuthSource) {
if (!empty($thisAuthSource['newUser']) && file_exists($thisAuthSource['newUser'])) {
@ -466,9 +466,9 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
$user_table = Database::get_main_table(TABLE_MAIN_USER);
$sql = "SELECT user_id, username, password, auth_source, active, expiration_date
FROM $user_table
WHERE username = '".trim(addslashes($sso['username']))."'";
WHERE username = '".trim(addslashes($sso['username']))."'";
$result = Database::query($sql);
if (Database::num_rows($result) > 0) {
$uData = Database::fetch_array($result);
//Check the user's password
@ -486,24 +486,24 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
if ($uData['expiration_date']>date('Y-m-d H:i:s') OR $uData['expiration_date']=='0000-00-00 00:00:00') {
global $_configuration;
//If Multiple URL is enabled
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$admin_table = Database::get_main_table(TABLE_MAIN_ADMIN);
//Check if user is an admin
//Check if user is an admin
$sql = "SELECT user_id FROM $admin_table
WHERE user_id = '".trim(addslashes($uData['user_id']))."' LIMIT 1";
$result = Database::query($sql);
$my_user_is_admin = false;
$result = Database::query($sql);
$my_user_is_admin = false;
if (Database::num_rows($result) > 0) {
$my_user_is_admin = true;
}
//Check the access_url configuration setting if the user is registered in the access_url_rel_user table
//Getting the current access_url_id of the platform
$current_access_url_id = api_get_current_access_url_id();
$current_access_url_id = api_get_current_access_url_id();
// my user is subscribed in these sites => $my_url_list
$my_url_list = api_get_access_url_from_user($uData['user_id']);
if ($my_user_is_admin === false) {
if (is_array($my_url_list) && count($my_url_list)>0 ) {
if (in_array($current_access_url_id, $my_url_list)) {
@ -511,7 +511,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
$_user['user_id'] = $uData['user_id'];
api_session_register('_user');
event_login();
// Redirect to homepage
$sso_target = isset($sso['target']) ? $sso['target'] : api_get_path(WEB_PATH) .'.index.php';
header('Location: '. $sso_target);
@ -533,7 +533,7 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
if (in_array(1, $my_url_list)) { //Check if this admin have the access_url_id = 1 which means the principal portal
$_user['user_id'] = $uData['user_id'];
api_session_register('_user');
event_login();
event_login();
} else {
//This means a secondary admin wants to login so we check as a normal user
if (in_array($current_access_url_id, $my_url_list)) {
@ -626,10 +626,10 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
if (Database::num_rows($result)>0) {
//$row = Database::fetch_array($res);
$uData = Database::fetch_array($result);
if ($uData['auth_source'] == PLATFORM_AUTH_SOURCE) {
//the authentification of this user is managed by Chamilo itself
// check if the account is active (not locked)
if ($uData['active']=='1') {
// check if the expiration date has not been reached
@ -668,10 +668,10 @@ if (!empty($_SESSION['_user']['user_id']) && ! ($login || $logout)) {
}
}
}
// else {} => continue as anonymous user
$uidReset = true;
// $cidReset = true;
// $gidReset = true;
} // end else
@ -816,7 +816,7 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
api_session_register('_course');
//@TODO real_cid should be cid, for working with numeric course id
api_session_register('_real_cid');
// if a session id has been given in url, we store the session
if (api_get_setting('use_session_mode')=='true') {
// Database Table Definitions
@ -835,15 +835,15 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
api_session_unregister('id_session');
}
}
if ($_configuration['tracking_enabled'] && !isset($_SESSION['login_as'])) {
//We add a new record in the course tracking table
$course_tracking_table = Database :: get_statistic_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS);
$time = api_get_datetime();
$sql="INSERT INTO $course_tracking_table(course_code, user_id, login_course_date, logout_course_date, counter, session_id)" .
"VALUES('".$_course['sysCode']."', '".$_user['user_id']."', '$time', '$time', '1', ".api_get_session_id().")";
"VALUES('".$_course['sysCode']."', '".$_user['user_id']."', '$time', '$time', '1', ".api_get_session_id().")";
Database::query($sql);
}
}
} else {
//exit("WARNING UNDEFINED CID !! ");
header('location:'.api_get_path(WEB_PATH));
@ -872,7 +872,7 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
}
if ($_configuration['tracking_enabled'] && !isset($_SESSION['login_as'])) {
$course_tracking_table = Database :: get_statistic_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS);
if (isset($_configuration['session_lifetime'])) {
$session_lifetime = $_configuration['session_lifetime'];
@ -880,25 +880,25 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
$session_lifetime = 3600;
}
$course_code=$_course['sysCode'];
$time = api_get_datetime();
//We select the last record for the current course in the course tracking table
// But only if the login date is < thant now + max_life_time
$sql="SELECT course_access_id FROM $course_tracking_table
$course_code=$_course['sysCode'];
$time = api_get_datetime();
//We select the last record for the current course in the course tracking table
// But only if the login date is < thant now + max_life_time
$sql="SELECT course_access_id FROM $course_tracking_table
WHERE user_id=".intval($_user ['user_id'])."
AND course_code='$course_code'
AND login_course_date > now() - INTERVAL $session_lifetime SECOND
AND course_code='$course_code'
AND login_course_date > now() - INTERVAL $session_lifetime SECOND
ORDER BY login_course_date DESC LIMIT 0,1";
$result=Database::query($sql,__FILE__,__LINE__);
if (Database::num_rows($result)>0) {
if (Database::num_rows($result)>0) {
$i_course_access_id = Database::result($result,0,0);
//We update the course tracking table
//We update the course tracking table
$sql="UPDATE $course_tracking_table " .
"SET logout_course_date = '$time', " .
"counter = counter+1 " .
@ -910,7 +910,7 @@ if (isset($cidReset) && $cidReset) { // course session data refresh requested or
"VALUES('".$course_code."', '".$_user['user_id']."', '$time', '$time', '1')";
Database::query($sql,__FILE__,__LINE__);
}
}
}
}
}

@ -193,7 +193,7 @@ else
}
?>
</head>
<body dir="<?php echo $text_dir ?>"
<body dir="<?php echo $text_dir; ?>">
<!-- #outerframe container to control some general layout of all pages -->
<div id="outerframe">
<?php

@ -206,7 +206,7 @@ if ($is_drh || $_GET['display'] == 'yourstudents') {
$nb_menu_items = count($menu_items);
if ($nb_teacher_courses > 0 ) {
echo '<div class="actions-title" style ="font-size:10pt;">';
echo '<div class="actions-title" style ="font-size:10pt;">';
if ($nb_menu_items > 1) {
foreach ($menu_items as $key => $item) {
echo $item;
@ -214,17 +214,17 @@ if ($nb_teacher_courses > 0 ) {
echo '&nbsp;|&nbsp;';
}
}
}
}
echo '&nbsp;&nbsp;<a href="javascript: void(0);" onclick="javascript: window.print()"><img align="absbottom" src="../img/printmgr.gif">&nbsp;'.get_lang('Print').'</a> ';
if (isset($_GET['display']) && ($_GET['display'] == 'useroverview' || $_GET['display'] == 'sessionoverview' || $_GET['display'] == 'courseoverview')) {
echo '<a href="'.api_get_self().'?display='.$_GET['display'].'&export=csv&view='.$view.'"><img align="absbottom" src="../img/csv.gif">&nbsp;'.get_lang('ExportAsCSV').'</a>';
}
echo '&nbsp;&nbsp;<a href="'.api_get_path(WEB_CODE_PATH).'auth/my_progress.php"><img align="absbottom" src="../img/statistics.gif">&nbsp;'.get_lang('MyStats').'</a> ';
echo '</div>';
echo '</div>';
} else {
echo '<div class="actions-title" style ="font-size:10pt;">';
echo '<a href="'.api_get_path(WEB_CODE_PATH).'auth/my_progress.php"><img align="absbottom" src="../img/statistics.gif">&nbsp;'.get_lang('MyStats').'</a> ';
echo '</div>';
Display::display_warning_message(get_lang('HaveNoCourse'));
}
@ -275,12 +275,12 @@ if ($view == 'coach' || $view == 'drh') {
$nb_courses_student++;
$nb_posts += Tracking :: count_student_messages($student_id, $course_code);
$nb_assignments += Tracking :: count_student_assignments($student_id, $course_code);
$avg_student_progress += Tracking :: get_avg_student_progress($student_id, $course_code);
$avg_student_progress += Tracking :: get_avg_student_progress($student_id, $course_code);
$myavg_temp = Tracking :: get_avg_student_score($student_id, $course_code);
if (is_numeric($myavg_temp))
$avg_student_score += $myavg_temp;
if ($nb_posts !== null && $nb_assignments !== null && $avg_student_progress !== null && $avg_student_score !== null) {
//if one of these scores is null, it means that we had a problem connecting to the right database, so don't count it in
$nb_courses_student++;
@ -657,7 +657,7 @@ if ($is_platform_admin && $view == 'admin' && $_GET['display'] != 'yourstudents'
WHERE scu.id_user=user_id AND scu.status=2 AND login_user_id=user_id
GROUP BY user_id ";
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$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) {
@ -684,7 +684,7 @@ if ($is_platform_admin && $view == 'admin' && $_GET['display'] != 'yourstudents'
GROUP BY user_id
ORDER BY login_date '.$tracking_direction;
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
$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) {

@ -351,7 +351,7 @@ if ($form->validate()) {
$emailheaders .= 'Reply-To: '.api_get_setting('emailAdministrator');
$portal_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1) {
$url = api_get_access_url($access_url_id);

@ -125,7 +125,7 @@ function search_users($needle,$type) {
}
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){
@ -266,7 +266,7 @@ if ($ajax_search) {
ON (gu.user_id = u.user_id) WHERE gu.group_id = $group_id ".
$order_clause;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$tbl_user_rel_access_url= Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1){

@ -186,13 +186,13 @@ function get_number_of_users() {
if (isset($_REQUEST['type']) && $_REQUEST['type']=='teacher') {
if (api_get_session_id() != 0) {
$sql = "SELECT u.user_id
FROM $user_table u
LEFT JOIN $tbl_session_rel_course_user cu on u.user_id = cu.id_user and course_code='".api_get_course_id()."' AND id_session ='".api_get_session_id()."'
WHERE cu.id_user IS NULL AND u.status=1 AND (u.official_code <> 'ADMIN' OR u.official_code IS NULL) ";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id !=-1) {
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
@ -211,7 +211,7 @@ function get_number_of_users() {
LEFT JOIN $course_user_table cu on u.user_id = cu.user_id and course_code='".api_get_course_id()."'
WHERE cu.user_id IS NULL AND u.status<>".DRH." ";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id !=-1) {
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
@ -235,7 +235,7 @@ function get_number_of_users() {
FROM $user_table u
LEFT JOIN $tbl_session_rel_course_user cu on u.user_id = cu.id_user and course_code='".api_get_course_id()."' AND id_session ='".api_get_session_id()."'
WHERE cu.id_user IS NULL AND u.status<>".DRH." AND (u.official_code <> 'ADMIN' OR u.official_code IS NULL) ";
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id !=-1) {
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
@ -266,11 +266,11 @@ function get_number_of_users() {
$sql .= "WHERE cu.user_id IS NULL AND u.status<>".DRH." ";
}
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id !=-1) {
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql = "SELECT u.user_id
@ -395,9 +395,9 @@ function get_user_data($from, $number_of_items, $column, $direction) {
} else {
$sql .= "WHERE cu.user_id IS NULL AND u.status<>".DRH." ";
}
// adding a teacher NOT trough a session on a portal with multiple URLs
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id !=-1) {
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
@ -461,7 +461,7 @@ function get_user_data($from, $number_of_items, $column, $direction) {
$sql .= "WHERE cu.id_user IS NULL AND u.status<>".DRH." AND (u.official_code <> 'ADMIN' OR u.official_code IS NULL) ";
}
} else {
$sql = "SELECT
u.user_id AS col0,
u.official_code AS col1,
@ -491,10 +491,10 @@ function get_user_data($from, $number_of_items, $column, $direction) {
//showing only the courses of the current Dokeos access_url_id
global $_configuration;
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$url_access_id = api_get_current_access_url_id();
if ($url_access_id !=-1) {
$tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER);
$sql = "SELECT
u.user_id AS col0,
@ -524,8 +524,8 @@ function get_user_data($from, $number_of_items, $column, $direction) {
AND field_values.field_value = '".Database::escape_string($field_identification[1])."' AND access_url_id= $url_access_id ";
} else {
$sql .= "WHERE cu.user_id IS NULL AND u.status<>".DRH." AND access_url_id= $url_access_id ";
}
}
}
}
}
@ -555,7 +555,7 @@ function get_user_data($from, $number_of_items, $column, $direction) {
// Sorting and pagination (used by the sortable table)
$sql .= " ORDER BY col$column $direction ";
$sql .= " LIMIT $from,$number_of_items";
$res = Database::query($sql);
$users = array ();
while ($user = Database::fetch_row($res)) {

@ -183,7 +183,7 @@ if($register) {
$email_admin = api_get_setting('emailAdministrator');
$portal_url = $_configuration['root_web'];
if ($_configuration['multiple_access_urls']==true) {
if ($_configuration['multiple_access_urls']) {
$access_url_id = api_get_current_access_url_id();
if ($access_url_id != -1 ){
$url = api_get_access_url($access_url_id);

@ -12,7 +12,7 @@ require_once $libpath.'sessionmanager.lib.php';
function WSHelperVerifyKey($params) {
global $_configuration;
if(is_array($params)) {
$secret_key = $params['secret_key'];
} else {
@ -139,7 +139,7 @@ $server->register('WSCreateUsers', // method name
function WSCreateUsers($params) {
global $_user, $userPasswordCrypted;
if(!WSHelperVerifyKey($params)) {
return -1;
}
@ -261,7 +261,7 @@ function WSCreateUsers($params) {
//echo "id returned";
$return = Database::insert_id();
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
if (api_get_current_access_url_id() != -1) {
UrlManager::add_user_to_url($return, api_get_current_access_url_id());
} else {
@ -461,7 +461,7 @@ function WSCreateUser($params) {
//echo "id returned";
$return = Database::insert_id();
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
if (api_get_current_access_url_id() != -1) {
UrlManager::add_user_to_url($return, api_get_current_access_url_id());
} else {
@ -746,7 +746,7 @@ function WSCreateUsersPasswordCrypted($params) {
//echo "id returned";
$return = Database::insert_id();
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
if (api_get_current_access_url_id() != -1) {
UrlManager::add_user_to_url($return, api_get_current_access_url_id());
} else {
@ -969,7 +969,7 @@ function WSCreateUserPasswordCrypted($params) {
//echo "id returned";
$return = Database::insert_id();
require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php';
if ($_configuration['multiple_access_urls'] == true) {
if ($_configuration['multiple_access_urls']) {
if (api_get_current_access_url_id() != -1) {
UrlManager::add_user_to_url($return, api_get_current_access_url_id());
} else {
@ -1642,7 +1642,7 @@ function WSEditUserPasswordCrypted($params) {
$msg = "If encrypt_method is not empty the password param is required ";
return $msg;
}
$user_id = UserManager::get_user_id_from_original_id($original_user_id_value, $original_user_id_name);
if ($user_id == 0) {
@ -1707,7 +1707,7 @@ function WSEditUserPasswordCrypted($params) {
$server->wsdl->addComplexType(
'user_id',
'complexType',
'struct',
'struct',
'all',
'',
array(
@ -1732,7 +1732,7 @@ function WSHelperActionOnUsers($params, $type) {
if(!WSHelperVerifyKey($params)) {
return -1;
}
$original_user_ids = $params['ids'];
foreach($original_user_ids as $original_user_id) {
$user_id = UserManager::get_user_id_from_original_id($original_user_id['original_user_id_value'], $original_user_id['original_user_id_name']);
@ -3461,9 +3461,9 @@ function WSSubscribeUsersToCourse($params) {
if(!WSHelperVerifyKey($params)) {
return -1;
}
$results = array();
$userscourses = $params['userscourses'];
foreach($userscourses as $usercourse) {
$original_course_id = $usercourse['course_id'];
@ -3472,12 +3472,12 @@ function WSSubscribeUsersToCourse($params) {
if($usercourse['status']) {
$status = $usercourse['status'];
}
$result = array(
'original_user_id_value' => $original_user_id['original_user_id_value'],
'original_course_id_value' => $original_course_id['original_course_id_value'],
'result' => 1);
// Get user id
$user_id = UserManager::get_user_id_from_original_id($original_user_id['original_user_id_value'], $original_user_id['original_user_id_name']);
if($user_id == 0) {
@ -3500,7 +3500,7 @@ function WSSubscribeUsersToCourse($params) {
}
return $results;
}
/* Register WSUnsubscribeUserFromCourse function */
@ -4550,12 +4550,12 @@ function WSListCourses($params) {
if(!WSHelperVerifyKey($params)) {
return -1;
}
$course_field_name = $params['original_course_id_name'];
$courses_result = array();
$category_names = array();
$courses = CourseManager::get_courses_list();
foreach($courses as $course) {
$course_tmp = array();
@ -4564,7 +4564,7 @@ function WSListCourses($params) {
$course_tmp['title'] = $course['title'];
$course_tmp['language'] = $course['language'];
$course_tmp['visibility'] = $course['visibility'];
// Determining category name
if($category_names[$course['category_code']]) {
$course_tmp['category_name'] = $category_names[$course['category_code']];
@ -4573,20 +4573,20 @@ function WSListCourses($params) {
$category_names[$course['category_code']] = $category['name'];
$course_tmp['category_name'] = $category['name'];
}
// Determining number of students registered in course
$user_list = CourseManager::get_user_list_from_course_code($course['code'], false);
$course_tmp['number_students'] = count($user_list);
// Determining external course id
$course_tmp['external_course_id'] = CourseManager::get_course_extra_field_value($course_field_name, $course['code']);
$courses_result[] = $course_tmp;
}
return $courses_result;
}
// Use the request to (try to) invoke the service

@ -454,7 +454,7 @@ function display_courses_in_category($user_category_id) {
AND course_rel_user.relation_type<>".COURSE_RELATION_TYPE_RRHH."
AND course_rel_user.user_course_cat='".$user_category_id."' $without_special_courses ";
if ($_configuration['multiple_access_urls'] == true && $current_url_id!=-1){
if ($_configuration['multiple_access_urls'] && $current_url_id != -1){
$sql_select_courses .= " AND url.course_code=course.code AND access_url_id='".$current_url_id."'";
}
$sql_select_courses .= " ORDER BY course_rel_user.user_course_cat, course_rel_user.sort ASC";
@ -1642,7 +1642,7 @@ echo '<div class="clear"></div>';
echo '<div id="social_widget">';
echo ' <div id="social_widget_image">';
if (api_get_setting('allow_social_tool')=='true') {
if (api_get_setting('allow_social_tool') == 'true') {
if ($no_image == false) {
echo '<a href="'.api_get_path(WEB_PATH).'main/social/home.php"><img src="'.$img_array['file'].'" '.$img_array['style'].' border="1"></a>';
} else {

Loading…
Cancel
Save