From 81886221a779efacbdc46db1ea24fc0dceea93bd Mon Sep 17 00:00:00 2001 From: Dave Goodwin Date: Tue, 25 Oct 2011 17:46:02 +0000 Subject: [PATCH] change create_user_id to take parameters; merge from trunk git-svn-id: https://xerteonlinetoolkits.googlecode.com/svn/branches/1.8@190 912cdd6b-5c7d-d5a7-a2ba-d0f0cdb91641 --- demo.php | 2 +- demo.txt | 23 +- index.php | 2 +- integration.php | 2 +- integration.txt | 3 +- switch.txt | 2 +- webctlink.php | 2 +- webctlink.txt | 3 +- website_code/php/user_library.php | 354 +++++++++++++++--------------- 9 files changed, 198 insertions(+), 195 deletions(-) diff --git a/demo.php b/demo.php index 95c8e5d16e..356924db0e 100644 --- a/demo.php +++ b/demo.php @@ -28,7 +28,7 @@ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); /* * create a virtual root folder for this user diff --git a/demo.txt b/demo.txt index 1a6cbd5990..d3e449a10a 100644 --- a/demo.txt +++ b/demo.txt @@ -1,8 +1,13 @@ php_library_path . "login_library.php"; - include $xerte_toolkits_site->php_library_path . "display_library.php"; +// fake our authentication tokens etc. $_SESSION['toolkits_firstname'] = "Guest"; - $_SESSION['toolkits_surname'] = "User 2"; include $xerte_toolkits_site->php_library_path . "user_library.php"; $_SESSION['toolkits_logon_username'] = "guest2"; -$mysql_id=database_connect("index.php database connect success","index.php database connect fail"); - /* * Check to see if this is a users' first time on the site @@ -43,7 +40,7 @@ if(check_if_first_time($_SESSION['toolkits_logon_username'])){ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); /* * create a virtual root folder for this user @@ -79,7 +76,7 @@ echo "var site_apache = \"" . $xerte_toolkits_site->apache . "\";\n"; echo "var properties_ajax_php_path = \"website_code/php/properties/\";\n var management_ajax_php_path = \"website_code/php/management/\";\n var ajax_php_path = \"website_code/php/\";\n"; -echo file_get_contents($xerte_toolkits_site->website_code_path . "management_top"); +echo login_page_format_top(file_get_contents($xerte_toolkits_site->website_code_path . "management_top")); list_users_projects("data_down"); diff --git a/index.php b/index.php index 3a790b8ac4..746787387c 100644 --- a/index.php +++ b/index.php @@ -226,7 +226,7 @@ function show_page($extra,$xerte_toolkits_site){ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); /* * create a virtual root folder for this user diff --git a/integration.php b/integration.php index 42e33587b9..ae61740215 100644 --- a/integration.php +++ b/integration.php @@ -43,7 +43,7 @@ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); /* * create a virtual root folder for this user diff --git a/integration.txt b/integration.txt index f7da2facfe..ae4e121eba 100644 --- a/integration.txt +++ b/integration.txt @@ -42,7 +42,8 @@ if(check_if_first_time($_SESSION['toolkits_logon_username'])){ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); + /* * create a virtual root folder for this user diff --git a/switch.txt b/switch.txt index 5d5f40e56b..7c300dfdf4 100644 --- a/switch.txt +++ b/switch.txt @@ -130,7 +130,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') { * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); /* * create a virtual root folder for this user diff --git a/webctlink.php b/webctlink.php index a32b9513ae..1838b81176 100644 --- a/webctlink.php +++ b/webctlink.php @@ -73,7 +73,7 @@ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); /* * create a virtual root folder for this user diff --git a/webctlink.txt b/webctlink.txt index c61b86799f..bedcfab57d 100644 --- a/webctlink.txt +++ b/webctlink.txt @@ -75,7 +75,8 @@ if(check_if_first_time($_SESSION['toolkits_logon_username'])){ * create the user a new id */ - $_SESSION['toolkits_logon_id'] = create_user_id(); + $_SESSION['toolkits_logon_id'] = create_user_id($_SESSION['toolkits_logon_username'], $_SESSION['toolkits_firstname'], $_SESSION['toolkits_surname']); + /* * create a virtual root folder for this user diff --git a/website_code/php/user_library.php b/website_code/php/user_library.php index f5d7257dd7..3f8fc2fef3 100644 --- a/website_code/php/user_library.php +++ b/website_code/php/user_library.php @@ -1,292 +1,296 @@ -database_table_prefix . "logindetails where username ='" . $session_login_ldap . "'"; + $query_for_users_first_time = "select login_id from " . $xerte_toolkits_site->database_table_prefix . "logindetails where username ='" . $session_login_ldap . "'"; - $query_response = mysql_query($query_for_users_first_time); + $query_response = mysql_query($query_for_users_first_time); - if($query_response!=FALSE){ + if($query_response!=FALSE){ - if(mysql_num_rows($query_response)==0){ + if(mysql_num_rows($query_response)==0){ - return true; + return true; - }else{ + }else{ - return false; + return false; - } + } - }else{ + }else{ - receive_message($session_login_ldap, "ADMIN", "CRITICAL", "Failed to check if the users first time", "Failed to check if the users first time"); + receive_message($session_login_ldap, "ADMIN", "CRITICAL", "Failed to check if the users first time", "Failed to check if the users first time"); - } + } } - /** - * - * Function get user id - * get the user's database ID - * @author Patrick Lockley - * @version 1.0 - * @return number - The user's database id - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function get user id + * get the user's database ID + * @author Patrick Lockley + * @version 1.0 + * @return number - The user's database id + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function get_user_id(){ - global $xerte_toolkits_site; + global $xerte_toolkits_site; - $query_for_user_id = "select login_id from " . $xerte_toolkits_site->database_table_prefix . "logindetails where username ='" . $_SESSION['toolkits_logon_username'] . "'"; + $query_for_user_id = "select login_id from " . $xerte_toolkits_site->database_table_prefix . "logindetails where username ='" . $_SESSION['toolkits_logon_username'] . "'"; - $query_response = mysql_query($query_for_user_id); + $query_response = mysql_query($query_for_user_id); - if($query_response!=FALSE){ + if($query_response!=FALSE){ - $row = mysql_fetch_array($query_response); + $row = mysql_fetch_array($query_response); - return $row['login_id']; - - }else{ + return $row['login_id']; - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to get users ID", "Failed to get users ID"); + }else{ - } + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to get users ID", "Failed to get users ID"); -} + } - /** - * - * Function create user id - * If a new user, create an ID - * @author Patrick Lockley - * @version 1.0 - * @return number - the user id - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +} -function create_user_id(){ +/** + * + * Function create user id + * If a new user, create an ID + * @author Patrick Lockley + * @version 1.0 + * @return number - the user id + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ - global $xerte_toolkits_site; +function create_user_id($username, $firstname, $surname){ - $query = "insert into " . $xerte_toolkits_site->database_table_prefix . "logindetails (username, lastlogin, firstname, surname) values ('" . $_SESSION['toolkits_logon_username'] . "','" . date('Y-m-d') . "',\"" . $_SESSION['toolkits_firstname'] . "\",\"" . $_SESSION['toolkits_surname'] . "\")"; + global $xerte_toolkits_site; - if(mysql_query($query)){ + $query = "insert into {$xerte_toolkits_site->database_table_prefix}logindetails (username, lastlogin, firstname, surname) values (?,?,?,?)"; + $res = db_query($query, array($username, date('Y-m-d', $firstname, $surname); - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Succeeded in creating users ID", "Succeeded in creating users ID"); + if($res){ - return get_user_id(); + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Succeeded in creating users ID", "Succeeded in creating users ID"); - }else{ + return get_user_id(); - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to create users ID", "Failed to create users ID"); + }else{ - } + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to create users ID", "Failed to create users ID"); + } + return false } - /** - * - * Function recycle bin - * looks for a reycle bin and if can't find one, make it. - * @author Patrick Lockley - * @version 1.0 - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function recycle bin + * looks for a reycle bin and if can't find one, make it. + * @author Patrick Lockley + * @version 1.0 + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function recycle_bin(){ - global $xerte_toolkits_site; + global $xerte_toolkits_site; - $query = "select folder_name from " . $xerte_toolkits_site->database_table_prefix . "folderdetails where folder_name=\"recyclebin\" and login_id=\"" . $_SESSION['toolkits_logon_id'] . "\""; + $query = "select folder_name from {$xerte_toolkits_site->database_table_prefix}folderdetails where + folder_name = ? AND login_id = ?"; + $res = db_query($query, array("recyclebin", $_SESSION['toolkits_logon_id'])); - $query_response = mysql_query($query); + $root_folder = get_user_root_folder(); - $root_folder = get_user_root_folder(); + if(sizeof($res)==0){ - if(mysql_num_rows($query_response)==0){ + $query = "insert into {$xerte_toolkits_site->database_table_prefix}folderdetails + (login_id,folder_parent,folder_name) VALUES (?,?,?)"; + $res = db_query($query, array($_SESSION['toolkits_logon_id'], "0", "recyclebin") ); - $query = "insert into " . $xerte_toolkits_site->database_table_prefix . "folderdetails (login_id,folder_parent,folder_name) VALUES (\"" . $_SESSION['toolkits_logon_id'] . "\", \"0\", \"recyclebin\" )"; + if($res) { - if(mysql_query($query)){ + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in creating users recycle bin " .$_SESSION['toolkits_logon_id'], "Succeeded in creating users root folder " .$_SESSION['toolkits_logon_id']); - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in creating users recycle bin " .$_SESSION['toolkits_logon_id'], "Succeeded in creating users root folder " .$_SESSION['toolkits_logon_id']); + }else{ - }else{ + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to create users recycle bin", "Failed to create users recycle bin"); - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to create users recycle bin", "Failed to create users recycle bin"); + } - } - - } + } } - /** - * - * Function get recycle bin - * Is this the users first time - * @author Patrick Lockley - * @version 1.0 - * @return number - folder id for the recycle bin - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function get recycle bin + * Is this the users first time + * @author Patrick Lockley + * @version 1.0 + * @return number - folder id for the recycle bin + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function get_recycle_bin(){ - global $xerte_toolkits_site; + global $xerte_toolkits_site; - $query = "select folder_id from " . $xerte_toolkits_site->database_table_prefix . "folderdetails where folder_name=\"recyclebin\" AND login_id=\"" . $_SESSION['toolkits_logon_id'] . "\""; + $query = "select folder_id from " . $xerte_toolkits_site->database_table_prefix . "folderdetails where folder_name=\"recyclebin\" AND login_id=\"" . $_SESSION['toolkits_logon_id'] . "\""; - $query_response = mysql_query($query); + $query_response = mysql_query($query); - $row = mysql_fetch_array($query_response); + $row = mysql_fetch_array($query_response); - return $row['folder_id']; + return $row['folder_id']; } - /** - * - * Function create a virtual root folder - * Creates the root folder for the user - * @author Patrick Lockley - * @version 1.0 - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function create a virtual root folder + * Creates the root folder for the user + * @author Patrick Lockley + * @version 1.0 + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function create_a_virtual_root_folder(){ - global $xerte_toolkits_site; + global $xerte_toolkits_site; - $query = "insert into " . $xerte_toolkits_site->database_table_prefix . "folderdetails (login_id,folder_parent,folder_name) VALUES (\"" . $_SESSION['toolkits_logon_id'] . "\", \"0\", \"". $_SESSION['toolkits_logon_username'] . "\" )"; + $query = "insert into " . $xerte_toolkits_site->database_table_prefix . "folderdetails (login_id,folder_parent,folder_name) VALUES (\"" . $_SESSION['toolkits_logon_id'] . "\", \"0\", \"". $_SESSION['toolkits_logon_username'] . "\" )"; - if(mysql_query($query)){ + if(mysql_query($query)){ - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in creating users root folder " .$_SESSION['toolkits_logon_id'], "Succeeded in creating users root folder " .$_SESSION['toolkits_logon_id']); + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in creating users root folder " .$_SESSION['toolkits_logon_id'], "Succeeded in creating users root folder " .$_SESSION['toolkits_logon_id']); - }else{ + }else{ - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to create users root folder", "Failed to create users root folder"); + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to create users root folder", "Failed to create users root folder"); - } + } } - /** - * - * Function update user logon time - * Modify the time the user last accessed the system - * @author Patrick Lockley - * @version 1.0 - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function update user logon time + * Modify the time the user last accessed the system + * @author Patrick Lockley + * @version 1.0 + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function update_user_logon_time(){ - global $xerte_toolkits_site; + global $xerte_toolkits_site; + + $query = "UPDATE " . $xerte_toolkits_site->database_table_prefix . "logindetails SET lastlogin = '" . date('Y-m-d') . "' WHERE username = '" . $_SESSION['toolkits_logon_username'] . "'"; - $query = "UPDATE " . $xerte_toolkits_site->database_table_prefix . "logindetails SET lastlogin = '" . date('Y-m-d') . "' WHERE username = '" . $_SESSION['toolkits_logon_username'] . "'"; - - if(mysql_query($query)){ + if(mysql_query($query)){ - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in updating users login time " . $_SESSION['toolkits_logon_username'], "Succeeded in updating users login time " .$_SESSION['toolkits_logon_id']); + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in updating users login time " . $_SESSION['toolkits_logon_username'], "Succeeded in updating users login time " .$_SESSION['toolkits_logon_id']); - }else{ + }else{ - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "MINOR", "Failed to update users login time", "Failed to update users login time"); + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "MINOR", "Failed to update users login time", "Failed to update users login time"); - } + } - $query = "UPDATE " . $xerte_toolkits_site->database_table_prefix . "logindetails SET firstname = '" . $_SESSION['toolkits_firstname'] . "', surname = '" . $_SESSION['toolkits_surname'] . "' WHERE username = '" . $_SESSION['toolkits_logon_username'] . "'"; - - if(mysql_query($query)){ + $query = "UPDATE " . $xerte_toolkits_site->database_table_prefix . "logindetails SET firstname = '" . $_SESSION['toolkits_firstname'] . "', surname = '" . $_SESSION['toolkits_surname'] . "' WHERE username = '" . $_SESSION['toolkits_logon_username'] . "'"; - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in updating users username " . $_SESSION['toolkits_logon_username'], "Succeeded in updating usersname "); + if(mysql_query($query)){ - }else{ + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "SUCCESS", "Succeeded in updating users username " . $_SESSION['toolkits_logon_username'], "Succeeded in updating usersname "); - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "MINOR", "Failed to update users username", "Failed to update users username"); + }else{ - } + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "MINOR", "Failed to update users username", "Failed to update users username"); + + } } - /** - * - * Function get user root folder - * Get the id for the users root folder - * @author Patrick Lockley - * @version 1.0 - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function get user root folder + * Get the id for the users root folder + * @author Patrick Lockley + * @version 1.0 + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function get_user_root_folder(){ - global $xerte_toolkits_site; + global $xerte_toolkits_site; + + $query = "select folder_id from " . $xerte_toolkits_site->database_table_prefix . "folderdetails where login_id='" . $_SESSION['toolkits_logon_id'] . "' AND folder_name = '" . $_SESSION['toolkits_logon_username'] . "'"; - $query = "select folder_id from " . $xerte_toolkits_site->database_table_prefix . "folderdetails where login_id='" . $_SESSION['toolkits_logon_id'] . "' AND folder_name = '" . $_SESSION['toolkits_logon_username'] . "'"; + $query_response = mysql_query($query); - $query_response = mysql_query($query); + if($query_response!=FALSE){ - if($query_response!=FALSE){ + $row = mysql_fetch_array($query_response); - $row = mysql_fetch_array($query_response); + return $row['folder_id']; - return $row['folder_id']; - - }else{ + }else{ - receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to get users root folder", "Failed to get users root folder"); + receive_message($_SESSION['toolkits_logon_username'], "ADMIN", "CRITICAL", "Failed to get users root folder", "Failed to get users root folder"); - } + } } - /** - * - * Function is user admin - * Is this user set as an administrator - * @author Patrick Lockley - * @version 1.0 - * @return bool - Is this the user an administrator - * @copyright Copyright (c) 2008,2009 University of Nottingham - * @package - */ +/** + * + * Function is user admin + * Is this user set as an administrator + * @author Patrick Lockley + * @version 1.0 + * @return bool - Is this the user an administrator + * @copyright Copyright (c) 2008,2009 University of Nottingham + * @package + */ function is_user_admin(){ - global $xerte_toolkits_site; - - if($_SESSION['toolkits_logon_id']=="site_administrator"){ + global $xerte_toolkits_site; + + if($_SESSION['toolkits_logon_id']=="site_administrator"){ - return true; + return true; - } + } } -?> \ No newline at end of file +?>