en | fr  | Contact  | Print  | Share

FrameBeurk File

Fmbk/Module/Uzers/PermissionPerimetre/Maj/modifiePermissionPerimetre.php

<?php //FrameBeurk V0.65 Copyright ToolOscope 2016. Licence CeCILL-C.

require_once(INSTALL_PATH '/Module/Uzers/PermissionPerimetre/modelePermissionPerimetre.php');

// IdRef, IdEntite et IdNoeud sont instanciés et castés en entier par ControleurMaj, car ils sont déclarés en clef de l'action dans $CONFIG

if ($IdEntite == && $IdNoeud == 0)
    
Beurk_messageEtape('Entités ou Id obligatoire'true'IdEntite');
elseif (
$IdNoeud == && (Beurk_estDeType($IdEntitefalse) != 'Entite'))
    
Beurk_messageEtape('Entité invalide'true'IdEntite');
elseif (
$IdNoeud != && ($terminal Beurk_terminal($IdNoeud)) == '')
    
Beurk_messageEtape('Id Entité inconnu'true'IdNoeud');
elseif (
$IdNoeud != && ! isset($CONFIG['Entite'][$terminal]))
    
Beurk_messageEtape("Id n'est pas celui d'une entité"true'IdNoeud');
elseif (! isset(
$_REQUEST['PermisOuInterdit']) || $_REQUEST['PermisOuInterdit'] == '')
    
Beurk_messageEtape('Permission obligatoire'true'PermisOuInterdit');
elseif (
$_REQUEST['PermisOuInterdit'] != '0' && $_REQUEST['PermisOuInterdit'] != '1')
    
Beurk_messageEtape('Valeur Permission erronée'true'PermisOuInterdit');
else {
    
//lecture du périmètre de permission à modifier
    
$result1 db_QUERY("SELECT IdPermission, IdEtat, NoVersion FROM Uzers_PermissionPerimetre WHERE IdPermissionPerimetre = '$IdMaj'");
    if (list(
$IdPermission$IdEtatPermissionPerimetre$NoVersionCourante) = db_FETCH_ROW($result1)) {

        
//recherche d'unicité sur (IdPermission, IdEntite)
        
$result2 db_QUERY(Uzers_queryDoublonPermissionPerimetres($IdPermission$IdEntite$IdMaj));
        
        if (list(
$DoublonExiste) = db_FETCH_ROW($result2))
            
Beurk_messageEtape('Périmètre déjà existant'true);
        else {
            
$requete = array('UPDATE' => 'Uzers_PermissionPerimetre',
                            
'SET' => array('IdEntite' => (($IdNoeud != 0) ? $IdNoeud $IdEntite),
                                        
'PermisOuInterdit' => Beurk_Request2DB($_REQUEST['PermisOuInterdit'])
                                        ),
                            
'WHERE' => "IdPermissionPerimetre = '$IdMaj'");

            
Beurk_modifieEntite($requete'Périmètre modifié'$IdEtatPermissionPerimetre$NoVersionCourante$IdMaj);
        }
        
db_FREE($result2);
    } else 
Beurk_messageEtape('Périmètre de Permission inconnu'true);
    
db_FREE($result1);
}


© 2010-2015 by ToolOscope SASU. © 2016-2018 by Arnaud De Rette. All rights reserved