Standard SA_DENIED access level added.
[fa-stable.git] / includes / current_user.inc
index 94b7c2ffaa86f079c786071641004faf38a96b5c..99d314770b6f5952cd723d940ee2c19b24c02d9b 100644 (file)
@@ -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 "<center><br><br><font size='5' color='red'><b>";
                                                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 '<br>'."<a href=$path_to_root/index.php>"._("Back")."</a>";
                                                echo "</b></font><br><br></center>";
                                                exit;
                                        }
@@ -126,7 +127,6 @@ class current_user
        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,7 +134,10 @@ class current_user
 
                if ($page_level === 'SA_OPEN') 
                        return true;
-               $code = @$security_areas[$page_level][0];
+               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)
@@ -146,11 +149,11 @@ class current_user
                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);