Просмотр файла 2/3020.ru/system/functions/access.php

Размер файла: 2.08Kb
<?php
  
/*
--------------------------------
Функция настроек доступа к сайту
--------------------------------
*/
  
FUNCTION ACCESS($param, $link = NULL, $exit = 0) {
  
  //$param - параметр доступа
  //$link - ссылка на которую перекидывать
  //$exit - нужен для созданных привилегий
    
  GLOBAL $user;
  
  $access = DB::GET_STRING("SELECT `ID`,`NAME` FROM `PANEL_ACCESS_LIST` WHERE `NAME` = '".HTMLSPECIALCHARS($param)."' LIMIT 1");
  
  IF ($access['ID']){
    
    IF ($exit == 0){
      
      IF (DB::GET_COLUMN("SELECT COUNT(`ID`) FROM `PANEL_ACCESS_USER_LIST` WHERE `ID_ACCESS_LIST` = '".$access['ID']."' AND `ID_ACCESS` = '".$user['ACCESS']."' LIMIT 1") == 0){
        
        IF ($link == NULL){
          
          $link = '/index?';
        
        }
        
        HEADER("Location: $link");
        EXIT;
        
      }
      
    }ELSEIF ($exit == 1){
      
      IF (DB::GET_COLUMN("SELECT COUNT(`ID`) FROM `PANEL_ACCESS_USER_LIST` WHERE `ID_ACCESS_LIST` = '".$access['ID']."' AND `ID_ACCESS` = '".$user['ACCESS']."' LIMIT 1") == 0){
        
        RETURN FALSE;
        
      }ELSE{
        
        RETURN TRUE;
      
      }
    
    }
    
  }
  
  //Доступ только гостям
  IF ($param == 'guests') {
    
    IF (ISSET($user)){
      
      IF ($link == NULL){
        
        $link = '/index?';
        
      }
      
      HEADER("Location: $link");
      EXIT;
      
    }
    
  }
  
  //Доступ только пользователям
  IF ($param == 'users') {
    
    IF (!ISSET($user)){
      
      IF ($link == NULL){
        
        $link = '/index?';
        
      }
      
      HEADER("Location: $link");
      EXIT;
      
    }
    
  }
  
  //Доступ только системным администраторам
  IF ($param == 'management') {
    
    IF (MANAGEMENT == 0){
      
      IF ($link == NULL){
        
        $link = '/index?';
        
      }
      
      HEADER("Location: $link");
      EXIT;
      
    }
    
  }
  
}