Bontiv-Sourceer source code viewer
Root | Help
./PhpMyCMS/mod/admin/~admin.php
<?php

/**
 * Administration des utilisateurs
 *
 * @version $Id$
 * @copyright 2009
 */

class admin_admin {

    var
$name = 'Gestion des droits';
    var
$description = 'Administration des differents droits d\'accès';

    function
index(){
       
$page = page::Open();
       
$url = URL_Analyser::Open();
       
$page->module = 'admin';
        switch(
$url->GetUrlDir(2)){
            case
'':
            case
'index':
               
self::home();
                break;
            case
'user':
               
self::user_acc($url->GetUrlDir(3));
                break;
            case
'droit':
               
self::droit(
                   
basename($url->GetUrlDir(-1), '.htm'),
                   
$url->GetUrlDir(3),
                   
$url->GetVarValue('dir'
               
));
                break;
            default:
                return
false;
        }
// switch
   
}

    private static function
droit($action, $userid, $droit){

       
$droit = trim($droit, '/\\');
       
$sql = new Data('admin');
       
$me = mod_user::GetUserInfo();

        if (
mod_admin::is_Auth($droit) < 2 || $userid == $me['id']) {
           
$page = page::Open();
           
$page->ExeTpl('403.tpl');
            exit;
        }

        switch(
strtolower($action)){
            case
'add':
               
$sql->InsertInto(array('user'=>$userid, 'droit'=>'/'.$droit, 'user'=>$userid));
                break;
            case
'user':
               
$sql->Update(array('acces'=>'1'), array('user'=>$userid, 'droit'=>'/'.$droit));;
                break;
            case
'refus':
               
$sql->DeleteFrom(array('user'=>$userid, 'droit'=>'/'.$droit));
                break;
            case
'admin':
               
$sql->Update(array('acces'=>'2'), array('user'=>$userid, 'droit'=>'/'.$droit));;
                break;
        }
// switch
       
self::user_acc($userid);
    }

    private static function
home() {
       
$page = page::Open();
       
$page->assign('user', mod_user::GetAllUser());
       
$page->ExeTpl('home.tpl');
    }

    private static function
user_acc($id){

       
$page = page::Open();
       
$sql = new Data('admin');
       
$user = mod_user::GetAllUser();

        if (isset(
$user['id'.$id])) {
           
$page->assign('current', $user['id'.$id]);

       
// Parcours des droits de l'utilisateur
           
$sql->Select(array('user'=>$id));
            while(
$sql->next()){
               
$page->append('list', array(
                   
'acc'=>$sql->row,
                   
'me'=>mod_admin::is_Auth(
                       
trim($sql->row['droit'], '\/')
                    )
                ));
            }
// while
           
        //
           
$sql->Select(array('user'=>$id));
        }
       
$page->ExeTpl('user.tpl');
    }
}

?>
Presented with Bontiv-Sourceer