1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120:
<?php
class PHPShopAdminRule {
protected $UserStatus;
function __construct() {
$this->UserStatus = $this->ChekBase();
$this->fixRules = array(
'banner' => 'baner',
'order' => 'visitor',
'payment' => 'order',
'catalog' => 'cat_prod',
'slider' => 'baner',
'report' => 'stats1',
'menu' => 'page_menu',
'page' => 'page_menu',
'photo' => 'page',
'rss' => 'rsschanels',
'modules' => 'module',
'system' => 'visitor',
'exchange'=>'cat_prod',
'sort' => 'catalog',
'catpage' => 'page',
'intro' => 'system',
'upload'=>'update',
'currency'=>'valuta',
'tpleditor'=>'system'
);
}
function ChekBase() {
$session_id = session_id();
if (!$session_id)
session_start();
$PHPShopOrm = new PHPShopOrm($GLOBALS['SysValue']['base']['users']);
$data = $PHPShopOrm->select(array('*'), array('enabled' => "='1'", 'id' => "='" . intval($_SESSION['idPHPSHOP']) . "'"), false, array('limit' => 1));
if (is_array($data)) {
$hasher = new PasswordHash(8, false);
if ($_SESSION['logPHPSHOP'] == $data['login']) {
if ($hasher->CheckPassword($_SESSION['pasPHPSHOP'], $data['password'])) {
return unserialize($data['status']);
}
}
}
if (!empty($_SERVER['QUERY_STRING']))
$_SESSION['return'] = $_SERVER['QUERY_STRING'];
header("Location: /phpshop/admpanel/");
exit("No access");
}
function CheckedRules($path, $do = 'view') {
if(!is_array($this->UserStatus))
return true;
$rules_array = array(
'view' => 0,
'edit' => 1,
'create' => 2,
'remove' => 3,
'all' => 4,
'rule' => 5
);
if (empty($this->UserStatus[$path]) and !empty($this->fixRules[$path]))
$path = $this->fixRules[$path];
$array = explode("-", $this->UserStatus[$path]);
if (!empty($array[$rules_array[$do]]))
return true;
}
function BadUserFormaWindow() {
echo'
' . $_SESSION['idPHPSHOP'] . '
';
return true;
}
}
?>