rewrote php session variables

This commit is contained in:
SJ
2013-11-18 19:24:33 +01:00
parent 0809b5a514
commit 881a2380e0
39 changed files with 302 additions and 609 deletions

View File

@ -86,9 +86,10 @@ class Controller {
protected function fetch(){
$session = Registry::get('session');
if(isset($_SESSION['theme']) && preg_match("/^([a-zA-Z0-9\-\_]+)$/", $_SESSION['theme']) && file_exists(DIR_THEME . $_SESSION['theme']) ) {
$file = DIR_THEME . $_SESSION['theme'] . '/templates/' . $this->template;
if($session->get("theme") && preg_match("/^([a-zA-Z0-9\-\_]+)$/", $session->get("theme")) && file_exists(DIR_THEME . $session->get("theme")) ) {
$file = DIR_THEME . $session->get("theme") . '/templates/' . $this->template;
} else {
$file = DIR_THEME . THEME . '/templates/' . $this->template;
}

View File

@ -8,10 +8,11 @@ class Language {
global $langs;
$lang = '';
$session = Registry::get('session');
if(isset($_SESSION['lang']) && $_SESSION['lang'] != '') {
$file = DIR_LANGUAGE . $_SESSION['lang'] . '/messages.php';
define('LANG', $_SESSION['lang']);
if($session->get("lang")) {
$file = DIR_LANGUAGE . $session->get("lang") . '/messages.php';
define('LANG', $session->get("lang"));
}
else {
$pref_langs = $this->get_preferred_languages();
@ -26,7 +27,7 @@ class Language {
if($lang == '') { $lang = DEFAULT_LANG; }
$_SESSION['lang'] = $lang;
$session->set("lang", $lang);
$file = DIR_LANGUAGE . $lang . '/messages.php';
}

View File

@ -3,8 +3,10 @@
function LOGGER($event = '', $username = '') {
if($event == "") { return 0; }
$session = Registry::get('session');
if($username == '') {
if(isset($_SESSION['username'])) { $username = $_SESSION['username']; }
if($session->get("username")) { $username = $session->get("username"); }
else { $username = 'unknown'; }
}
@ -16,8 +18,10 @@ function AUDIT($action = 0, $email = '', $ipaddr = '', $id = 0, $description = '
if(ENABLE_AUDIT == 0) { return 0; }
$session = Registry::get('session');
if($ipaddr == '' && isset($_SERVER['REMOTE_ADDR'])) { $ipaddr = $_SERVER['REMOTE_ADDR']; }
if($email == '') { $email = $_SESSION['email']; }
if($email == '') { $email = $session->get("email"); }
$a = explode("@", $email);
@ -30,42 +34,51 @@ function AUDIT($action = 0, $email = '', $ipaddr = '', $id = 0, $description = '
function getAuthenticatedUsername() {
$session = Registry::get('session');
if(isset($_SESSION['username'])){ return $_SESSION['username']; }
if($session->get("username")) { return $session->get("username"); }
return "";
}
function isAdminUser() {
if(isset($_SESSION['admin_user']) && $_SESSION['admin_user'] == 1){ return 1; }
$session = Registry::get('session');
if($session->get("admin_user") == 1){ return 1; }
return 0;
}
function isAuditorUser() {
if(isset($_SESSION['admin_user']) && $_SESSION['admin_user'] == 2){ return 1; }
$session = Registry::get('session');
if($session->get("admin_user") == 2){ return 1; }
return 0;
}
function isReadonlyAdmin() {
if(isset($_SESSION['admin_user']) && $_SESSION['admin_user'] == 3){ return 1; }
$session = Registry::get('session');
if($session->get("admin_user") == 3){ return 1; }
return 0;
}
function logout() {
AUDIT(ACTION_LOGOUT, $_SESSION['email'], '', '', '');
$session = Registry::get('session');
$_SESSION['username'] = "";
$_SESSION['admin_user'] = 0;
AUDIT(ACTION_LOGOUT, $session->get("email"), '', '', '');
unset($_SESSION['username']);
unset($_SESSION['admin_user']);
$session->set("username", "");
$session->set("admin_user", 0);
$session->remove("username");
$session->remove("admin_user");
Registry::set('username', '');
@ -82,9 +95,10 @@ function isBinary($num = '') {
function get_page_length() {
$page_len = PAGE_LEN;
if(isset($_SESSION['pagelen']) && is_numeric($_SESSION['pagelen']) && $_SESSION['pagelen'] >= 10 && $_SESSION['pagelen'] <= MAX_SEARCH_HITS) {
$page_len = $_SESSION['pagelen'];
$session = Registry::get('session');
if($session->get("pagelen") && is_numeric($session->get("pagelen")) && $session->get("pagelen") >= 10 && $session->get("pagelen") <= MAX_SEARCH_HITS) {
$page_len = $session->get("pagelen");
}
return $page_len;

View File

@ -27,12 +27,12 @@ class Request {
class Session {
public function __construct() {
//session_start();
session_start();
}
public function get($s = '') {
if($s && isset($_SESSION[$s])) { return $_SESSION[$s]; }
public function get($k = '') {
if($k && isset($_SESSION[$k])) { return $_SESSION[$k]; }
return '';
}
@ -44,6 +44,12 @@ class Session {
}
public function remove($k = '') {
if($k) { unset($_SESSION[$k]); }
}
}

View File

@ -6,8 +6,8 @@ require(DIR_SYSTEM . "/front.php");
require(DIR_SYSTEM . "/language.php");
require(DIR_SYSTEM . "/loader.php");
require(DIR_SYSTEM . "/model.php");
require(DIR_SYSTEM . "/registry.php");
require(DIR_SYSTEM . "/request.php");
//require(DIR_SYSTEM . "/registry.php");
//require(DIR_SYSTEM . "/request.php");
require(DIR_SYSTEM . "/router.php");
require(DIR_SYSTEM . "/misc.php");