Revision 1782
Added by Luisehahne about 13 years ago
| class.login.php | ||
|---|---|---|
| 3 | 3 | * | 
| 4 | 4 | * @category framework | 
| 5 | 5 | * @package backend login | 
| 6 | * @author Ryan Djurovich, WebsiteBaker Project | |
| 7 |  * @copyright       2009-2012, Website Baker Org. e.V.
 | |
| 6 |  * @author          Ryan Djurovich (2004-2009), WebsiteBaker Project
 | |
| 7 | * @copyright 2009-2012, WebsiteBaker Org. e.V. | |
| 8 | 8 | * @link http://www.websitebaker2.org/ | 
| 9 | 9 | * @license http://www.gnu.org/licenses/gpl.html | 
| 10 | 10 | * @platform WebsiteBaker 2.8.x | 
| ... | ... | |
| 24 | 24 | define('LOGIN_CLASS_LOADED', true);
 | 
| 25 | 25 |  | 
| 26 | 26 | // Load the other required class files if they are not already loaded | 
| 27 | require_once(WB_PATH."/framework/class.admin.php");
 | |
| 27 | if(!class_exists('admin', false)){ include(WB_PATH.'/framework/class.admin.php'); }
 | |
| 28 | 28 | // Get WB version | 
| 29 | 29 | require_once(ADMIN_PATH.'/interface/version.php'); | 
| 30 | 30 |  | 
| ... | ... | |
| 140 | 140 | $sql = 'SELECT * FROM `'.$this->users_table.'` '; | 
| 141 | 141 | $sql .= 'WHERE `username`=\''.$loginname.'\' AND `password`=\''.$this->password.'\' AND `active`=1'; | 
| 142 | 142 | $results = $database->query($sql); | 
| 143 | $results_array = $results->fetchRow(); | |
| 143 | 		$results_array = $results->fetchRow(MYSQL_ASSOC);
 | |
| 144 | 144 | $num_rows = $results->numRows(); | 
| 145 | 145 | 		if($num_rows == 1) {
 | 
| 146 | 146 | $user_id = $results_array['user_id']; | 
| ... | ... | |
| 188 | 188 | $_SESSION['TEMPLATE_PERMISSIONS'] = array(); | 
| 189 | 189 | $_SESSION['GROUP_NAME'] = array(); | 
| 190 | 190 |  | 
| 191 |  | |
| 192 |  | |
| 191 | 193 | $first_group = true; | 
| 192 | 194 | 			foreach (explode(",", $this->get_session('GROUPS_ID')) as $cur_group_id)
 | 
| 193 | 195 |             {
 | 
| ... | ... | |
| 196 | 198 | $results_array = $results->fetchRow(); | 
| 197 | 199 | $_SESSION['GROUP_NAME'][$cur_group_id] = $results_array['name']; | 
| 198 | 200 | // Set system permissions | 
| 199 | 				if($results_array['system_permissions'] != '') {
 | |
| 201 | 				if( $results_array['system_permissions'] != '' ) {
 | |
| 200 | 202 | 					$_SESSION['SYSTEM_PERMISSIONS'] = array_merge($_SESSION['SYSTEM_PERMISSIONS'], explode(',', $results_array['system_permissions']));
 | 
| 201 | 203 | } | 
| 202 | 204 | // Set module permissions | 
| 203 | 				if($results_array['module_permissions'] != '') {
 | |
| 205 | 				if( $results_array['module_permissions'] != '' ) {
 | |
| 204 | 206 | 					if ($first_group) {
 | 
| 205 |           	$_SESSION['MODULE_PERMISSIONS'] = explode(',', $results_array['module_permissions']);
 | |
| 206 |           } else {
 | |
| 207 |           	$_SESSION['MODULE_PERMISSIONS'] = array_intersect($_SESSION['MODULE_PERMISSIONS'], explode(',', $results_array['module_permissions']));
 | |
| 207 |                   	$_SESSION['MODULE_PERMISSIONS'] = explode(',', $results_array['module_permissions']);
 | |
| 208 |                   } else {
 | |
| 209 |                   	$_SESSION['MODULE_PERMISSIONS'] = array_intersect($_SESSION['MODULE_PERMISSIONS'], explode(',', $results_array['module_permissions']));
 | |
| 208 | 210 | } | 
| 209 | 211 | } | 
| 210 | 212 | // Set template permissions | 
| 211 | 213 | 				if($results_array['template_permissions'] != '') {
 | 
| 212 | 214 | 					if ($first_group) {
 | 
| 213 |           	$_SESSION['TEMPLATE_PERMISSIONS'] = explode(',', $results_array['template_permissions']);
 | |
| 214 |           } else {
 | |
| 215 |           	$_SESSION['TEMPLATE_PERMISSIONS'] = array_intersect($_SESSION['TEMPLATE_PERMISSIONS'], explode(',', $results_array['template_permissions']));
 | |
| 215 |                       	$_SESSION['TEMPLATE_PERMISSIONS'] = explode(',', $results_array['template_permissions']);
 | |
| 216 |                       } else {
 | |
| 217 |                       	$_SESSION['TEMPLATE_PERMISSIONS'] = array_intersect($_SESSION['TEMPLATE_PERMISSIONS'], explode(',', $results_array['template_permissions']));
 | |
| 216 | 218 | } | 
| 217 | 219 | } | 
| 218 | 220 | $first_group = false; | 
| 219 | 221 | } | 
| 220 | 222 |  | 
| 223 |             if( $this->ami_group_member('1')) {
 | |
| 224 | $_SESSION['MODULE_PERMISSIONS'] = array(); | |
| 225 | $_SESSION['TEMPLATE_PERMISSIONS'] = array(); | |
| 226 | } | |
| 227 |  | |
| 221 | 228 | // Update the users table with current ip and timestamp | 
| 222 | 229 | $get_ts = time(); | 
| 223 | 230 | $get_ip = $_SERVER['REMOTE_ADDR']; | 
Also available in: Unified diff
+ add maintance modus in backend