en | fr  | Contact  | Print  | Share

FrameBeurk File

Fmbk/Module/Uzers/PermissionAction/Maj/creePermissionAction.php

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

require_once(INSTALL_PATH '/Module/Uzers/PermissionAction/modelePermissionAction.php');

// IdRef, IdAction, 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 ($IdAction == 0)
    
Beurk_messageEtape('Action obligatoire'true'IdAction');
elseif (
Beurk_estDeType($IdActionfalse) != 'Action')
    
Beurk_messageEtape('Action invalide'true'IdAction');
elseif (
$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');
else {
    
// recherche de la permission
    
$result db_QUERY("SELECT IdPermission FROM Uzers_Permission WHERE IdPermission = '$IdRef'");
    if (list(
$IdPermission) = db_FETCH_ROW($result)) {

        
//recherche d'unicité sur (IdPermission, IdAction, IdEntite)
        
$result2 db_QUERY(Uzers_queryDoublonPermissionActions($IdRef$IdAction$IdEntite));
        
        if (list(
$DoublonExiste) = db_FETCH_ROW($result2))
            
Beurk_messageEtape('Action déjà existante'true);
        else {    
            
$requete = array('INSERT' => 'Uzers_PermissionAction',
                            
'VALUES' => array('IdPermission' => $IdRef,
                                            
'IdAction' => $IdAction,
                                            
'IdEntite' => (($IdNoeud != 0) ? $IdNoeud $IdEntite)
                                            ));

            
Beurk_creeEntite($requete'Action ajoutée''V'$IdRef);
        }
    } else 
Beurk_messageEtape('Permission inconnue'true);

    
db_FREE($result);
}


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