X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fcurrent_user.inc;h=99d314770b6f5952cd723d940ee2c19b24c02d9b;hb=6989100b74130784a524b1f941b3ae73f30f663a;hp=fc11db8442acec040c7072dc8e9bccfa48a31025;hpb=728910985f90c66207bd0ac9f16ea48ca5ad7823;p=fa-stable.git diff --git a/includes/current_user.inc b/includes/current_user.inc index fc11db84..99d31477 100644 --- a/includes/current_user.inc +++ b/includes/current_user.inc @@ -25,7 +25,7 @@ class current_user var $timeout; var $last_act; var $role_set = false; - + var $old_db; var $logged; var $ui_mode = 0; @@ -54,7 +54,7 @@ class current_user function login($company, $loginname, $password) { - global $security_areas, $security_groups, $security_headings; + global $security_areas, $security_groups, $security_headings, $path_to_root; $this->set_company($company); $this->logged = false; @@ -73,6 +73,7 @@ class current_user if (!isset($security_groups) || !isset($security_headings)) { echo "


"; echo _('Before software upgrade you have to include old $security_groups and $security_headings arrays from old config.php file to the new one.'); + echo '
'.""._("Back").""; echo "


"; exit; } @@ -123,10 +124,9 @@ class current_user return !isset($security_groups) && is_array($this->role_set); } - function can_access_page($page_level) + function can_access($page_level) { global $security_groups, $security_areas; - if (isset($security_groups)) { return $this->company == 0 && in_array(20, $security_groups[$this->access]); @@ -134,17 +134,26 @@ class current_user if ($page_level === 'SA_OPEN') return true; + if ($page_level === 'SA_DENIED' || $page_level === '') + return false; + $code = $security_areas[$page_level][0]; + // only first registered company has site admin privileges return $code && in_array($code, $this->role_set) - && ($this->company == 0 || ($code&~0xff != SS_SADMIN)); + && ($this->company == 0 || (($code&~0xff) != SS_SADMIN)); + } + + function can_access_page($page_level) + { + return $this->can_access($page_level); } - function get_db_connection() + function get_db_connection($id=-1) { global $db_connections; - $connection = $db_connections[$this->company]; + $connection = $db_connections[$id == -1 ? $this->company : $id]; //print_r($connection);