From 30956491cb6cb1d8b63aed143166f9ffcf3e9877 Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Mon, 29 Oct 2012 16:19:50 +0100 Subject: [PATCH] Adding user number in list see BT#4927 --- main/admin/access_url_edit_users_to_url.php | 312 ++++++++++---------- main/inc/lib/urlmanager.lib.php | 10 +- 2 files changed, 163 insertions(+), 159 deletions(-) diff --git a/main/admin/access_url_edit_users_to_url.php b/main/admin/access_url_edit_users_to_url.php index 9995c3ad57..b607f8a297 100644 --- a/main/admin/access_url_edit_users_to_url.php +++ b/main/admin/access_url_edit_users_to_url.php @@ -1,24 +1,22 @@ -*/ - - + * @package chamilo.admin + * @author Julio Montoya + */ // name of the language file that needs to be included -$language_file='admin'; +$language_file = 'admin'; // resetting the course id $cidReset = true; require_once '../inc/global.inc.php'; -require_once api_get_path(LIBRARY_PATH).'urlmanager.lib.php'; -require_once api_get_path(LIBRARY_PATH).'access_url_edit_users_to_url_functions.lib.php'; +require_once api_get_path(LIBRARY_PATH) . 'urlmanager.lib.php'; +require_once api_get_path(LIBRARY_PATH) . 'access_url_edit_users_to_url_functions.lib.php'; require_once '../inc/lib/xajax/xajax.inc.php'; $xajax = new xajax(); //$xajax->debugOn(); -$xajax -> registerFunction (array('search_users', 'Accessurledituserstourl', 'search_users')); +$xajax->registerFunction(array('search_users', 'Accessurledituserstourl', 'search_users')); // setting the section (for the tabs) @@ -27,32 +25,32 @@ $this_section = SECTION_PLATFORM_ADMIN; // Access restrictions api_protect_global_admin_script(); if (!api_get_multiple_access_url()) { - header('Location: index.php'); - exit; + header('Location: index.php'); + exit; } // Database Table Definitions -$tbl_user = Database::get_main_table(TABLE_MAIN_USER); +$tbl_user = Database::get_main_table(TABLE_MAIN_USER); $tbl_access_url_rel_user = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER); -$tbl_access_url = Database :: get_main_table(TABLE_MAIN_ACCESS_URL); +$tbl_access_url = Database :: get_main_table(TABLE_MAIN_ACCESS_URL); // setting breadcrumbs $tool_name = get_lang('EditUsersToURL'); -$interbreadcrumb[] = array ('url' => 'index.php', 'name' => get_lang('PlatformAdmin')); -$interbreadcrumb[] = array ('url' => 'access_urls.php', 'name' => get_lang('MultipleAccessURLs')); +$interbreadcrumb[] = array('url' => 'index.php', 'name' => get_lang('PlatformAdmin')); +$interbreadcrumb[] = array('url' => 'access_urls.php', 'name' => get_lang('MultipleAccessURLs')); $add_type = 'multiple'; -if(isset($_REQUEST['add_type']) && $_REQUEST['add_type']!=''){ - $add_type = Security::remove_XSS($_REQUEST['add_type']); +if (isset($_REQUEST['add_type']) && $_REQUEST['add_type'] != '') { + $add_type = Security::remove_XSS($_REQUEST['add_type']); } -$access_url_id=1; -if(isset($_REQUEST['access_url_id']) && $_REQUEST['access_url_id']!=''){ - $access_url_id = Security::remove_XSS($_REQUEST['access_url_id']); +$access_url_id = 1; +if (isset($_REQUEST['access_url_id']) && $_REQUEST['access_url_id'] != '') { + $access_url_id = Security::remove_XSS($_REQUEST['access_url_id']); } -$xajax -> processRequests(); +$xajax->processRequests(); $htmlHeadXtra[] = $xajax->getJavascript('../inc/lib/xajax/'); $htmlHeadXtra[] = ' '; -$form_sent=0; -$errorMsg=''; -$UserList=array(); +$form_sent = 0; +$errorMsg = ''; +$UserList = array(); $message = ''; if ($_POST['form_sent']) { - $form_sent = $_POST['form_sent']; - $UserList = $_POST['sessionUsersList']; - - if (!is_array($UserList)) { - $UserList=array(); - } - if ($form_sent == 1) { - if ($access_url_id==0) { - header('Location: access_url_edit_users_to_url.php?action=show_message&message='.get_lang('SelectURL')); - } elseif (is_array($UserList)) { - $result = UrlManager::update_urls_rel_user($UserList, $access_url_id); - $url_info = UrlManager::get_url_data_from_id($access_url_id); + $form_sent = $_POST['form_sent']; + $UserList = $_POST['sessionUsersList']; + + if (!is_array($UserList)) { + $UserList = array(); + } + if ($form_sent == 1) { + if ($access_url_id == 0) { + header('Location: access_url_edit_users_to_url.php?action=show_message&message=' . get_lang('SelectURL')); + } elseif (is_array($UserList)) { + $result = UrlManager::update_urls_rel_user($UserList, $access_url_id); + $url_info = UrlManager::get_url_data_from_id($access_url_id); if (!empty($result)) { - $message .= 'URL: '.$url_info['url'].'
'; + $message .= 'URL: ' . $url_info['url'] . '
'; } - + if (!empty($result['users_added'])) { - $message .= '

'.get_lang('UsersAdded').':

'; + $message .= '

' . get_lang('UsersAdded') . ':

'; $i = 1; $user_added_list = array(); - foreach($result['users_added'] as $user) { + foreach ($result['users_added'] as $user) { $user_info = api_get_user_info($user); if (!empty($user_info)) { - $user_added_list[] = $i.'. '.api_get_person_name($user_info['firstname'], $user_info['lastname']); + $user_added_list[] = $i . '. ' . api_get_person_name($user_info['firstname'], $user_info['lastname']); $i++; } } if (!empty($user_added_list)) { $message .= implode(', ', $user_added_list); - } + } } - + if (!empty($result['users_deleted'])) { - $message .= '

'.get_lang('UsersDeleted').':

'; + $message .= '

' . get_lang('UsersDeleted') . ':

'; $user_deleted_list = array(); $i = 1; - foreach($result['users_deleted'] as $user) { + foreach ($result['users_deleted'] as $user) { $user_info = api_get_user_info($user); if (!empty($user_info)) { - $user_deleted_list [] = $i.'. '.api_get_person_name($user_info['firstname'], $user_info['lastname']); + $user_deleted_list [] = $i . '. ' . api_get_person_name($user_info['firstname'], $user_info['lastname']); $i++; } } @@ -142,8 +140,8 @@ if ($_POST['form_sent']) { $message .= implode(', ', $user_deleted_list); } } - } - } + } + } } Display::display_header($tool_name); @@ -153,156 +151,158 @@ if (!empty($message)) { } echo '
'; -echo Display::url(Display::return_icon('view_more_stats.gif',get_lang('AddUserToURL'),''), api_get_path(WEB_CODE_PATH).'admin/access_url_add_users_to_url.php'); +echo Display::url(Display::return_icon('view_more_stats.gif', get_lang('AddUserToURL'), ''), api_get_path(WEB_CODE_PATH) . 'admin/access_url_add_users_to_url.php'); echo '
'; api_display_tool_title($tool_name); if ($_GET['action'] == 'show_message') - Display :: display_normal_message(Security::remove_XSS(stripslashes($_GET['message']))); + Display :: display_normal_message(Security::remove_XSS(stripslashes($_GET['message']))); $nosessionUsersList = $sessionUsersList = array(); $ajax_search = $add_type == 'unique' ? true : false; -if($ajax_search) { - $Users=UrlManager::get_url_rel_user_data($access_url_id); - foreach($Users as $user) { - $sessionUsersList[$user['user_id']] = $user ; - } +if ($ajax_search) { + $Users = UrlManager::get_url_rel_user_data($access_url_id); + foreach ($Users as $user) { + $sessionUsersList[$user['user_id']] = $user; + } } else { - $Users=UrlManager::get_url_rel_user_data(); - foreach($Users as $user) { - if($user['access_url_id'] == $access_url_id) { - $sessionUsersList[$user['user_id']] = $user ; - } - } - $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username'; - $sql="SELECT u.user_id, lastname, firstname, username - FROM $tbl_user u WHERE status <> ".ANONYMOUS." ". - $order_clause; - $result=Database::query($sql); - $Users=Database::store_result($result); - $user_list_leys = array_keys($sessionUsersList); - foreach($Users as $user) { - if (!in_array($user['user_id'],$user_list_leys)) - $nosessionUsersList[$user['user_id']] = $user ; - } + $Users = UrlManager::get_url_rel_user_data(); + foreach ($Users as $user) { + if ($user['access_url_id'] == $access_url_id) { + $sessionUsersList[$user['user_id']] = $user; + } + } + $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username'; + $sql = "SELECT u.user_id, lastname, firstname, username + FROM $tbl_user u WHERE status <> " . ANONYMOUS . " " . + $order_clause; + $result = Database::query($sql); + $Users = Database::store_result($result); + $user_list_leys = array_keys($sessionUsersList); + foreach ($Users as $user) { + if (!in_array($user['user_id'], $user_list_leys)) { + $nosessionUsersList[$user['user_id']] = $user; + } + } } -if($add_type == 'multiple') { - $link_add_type_unique = ''.get_lang('SessionAddTypeUnique').''; - $link_add_type_multiple = get_lang('SessionAddTypeMultiple'); +if ($add_type == 'multiple') { + $link_add_type_unique = '' . get_lang('SessionAddTypeUnique') . ''; + $link_add_type_multiple = get_lang('SessionAddTypeMultiple'); } else { - $link_add_type_unique = get_lang('SessionAddTypeUnique'); - $link_add_type_multiple = ''.get_lang('SessionAddTypeMultiple').''; + $link_add_type_unique = get_lang('SessionAddTypeUnique'); + $link_add_type_multiple = '' . get_lang('SessionAddTypeMultiple') . ''; } $url_list = UrlManager::get_url_data(); - ?>
-  |  + | 


-
> - + > +

- + - - + @@ -310,12 +310,12 @@ unset($sessionUsersList); diff --git a/main/inc/lib/urlmanager.lib.php b/main/inc/lib/urlmanager.lib.php index 2f7ce7a14e..c34d707676 100644 --- a/main/inc/lib/urlmanager.lib.php +++ b/main/inc/lib/urlmanager.lib.php @@ -153,7 +153,7 @@ class UrlManager * @param int access url id * @return array Database::store_result of the result * */ - public static function get_url_rel_user_data($access_url_id='') + public static function get_url_rel_user_data($access_url_id = null, $order_by = null) { $where = ''; $table_url_rel_user = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER); @@ -161,12 +161,16 @@ class UrlManager if (!empty($access_url_id)) { $where ="WHERE $table_url_rel_user.access_url_id = ".Database::escape_string($access_url_id); } - $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username'; + if (empty($order_by)) { + $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username'; + } else { + $order_clause = $order_by; + } $sql="SELECT u.user_id, lastname, firstname, username, access_url_id FROM $tbl_user u INNER JOIN $table_url_rel_user ON $table_url_rel_user.user_id = u.user_id - $where".$order_clause; + $where $order_clause"; $result=Database::query($sql); $users=Database::store_result($result); return $users;
: + : : :
- - -
- - - + + +
+ + +
- - - - -

- - + + + + +

+ +






- '.get_lang('AddUsersToURL').''; - else - echo ''; - ?> + ' . get_lang('AddUsersToURL') . ''; + else + echo ''; + ?>