FrameBeurk File
Fmbk/Module/Uzers/Permission/modelePermission.php
<?php //FrameBeurk V0.65 Copyright ToolOscope 2016. Licence CeCILL-C.
function Uzers_queryTousPermissions() {
return array('SELECT' => array('P.IdPermission', 'P.Permission',
'P.NbrGroupes', 'U.IdUser',
'U.User', 'H.TsAction',
'Q.TsAction', 'P.IdEtat',
'P.Donnees'),
'FROM' => 'Uzers_Permission AS P '
. 'LEFT JOIN Beurk_Historique AS H ON H.IdNoeud = P.IdPermission AND H.NoVersion = 1 '
. 'LEFT JOIN Beurk_Historique AS Q ON Q.IdNoeud = P.IdPermission AND Q.NoVersion = P.NoVersion '
. 'LEFT JOIN Uzers_User AS U ON U.IdUser = H.IdUser ');
}
function Uzers_queryPermission($IdPermission) {
$tabQuery = Uzers_queryTousPermissions();
$tabQuery['WHERE'] = "P.IdPermission = '$IdPermission'";
return Uzers_ajoutePermissionQUERY($tabQuery);
}
function Uzers_queryListePermission() {
$tabQuery = Uzers_queryTousPermissions();
$tabQuery['ORDER BY'] = 'P.Permission';
$tabQuery = Uzers_ajoutePermissionQUERY($tabQuery);
return Kom1_pagineRequete($tabQuery);
}
function Uzers_queryGroupesPermission($IdPermission) {
$tabQuery = array('SELECT' => array('GP.IdGroupePermission', 'GP.IdGroupe', 'G.Groupe', 'GP.IdPermission', "''", 'H.TsAction', 'Q.TsAction', 'GP.IdEtat'),
'FROM' => 'Uzers_GroupePermission AS GP '
. 'LEFT JOIN Uzers_Groupe AS G ON GP.IdGroupe = G.IdGroupe '
. 'LEFT JOIN Beurk_Historique AS H ON H.IdNoeud = GP.IdPermission AND H.NoVersion = 1 '
. 'LEFT JOIN Beurk_Historique AS Q ON Q.IdNoeud = GP.IdPermission AND Q.NoVersion = GP.NoVersion ',
'WHERE' => "GP.IdPermission = '$IdPermission'",
'ORDER BY' => 'GP.IdGroupe');
$tabQuery = Uzers_ajoutePermissionQUERY($tabQuery);
return Kom1_pagineRequete($tabQuery);
}
// fonction appelée par la fonction de recherche commune
function Uzers_queryRecherchePermission($TsCREMin, $TsCREMax, $MotCle, $Createur) {
$tabQuery['SELECT'] = array("'Permission'", 'P.IdPermission', 'P.Permission', 'U.IdUser', 'U.User', 'H.TsAction', 'P.NbrGroupes', '0', 'P.Donnees', '0');
$tabQuery['FROM'] = 'Uzers_Permission AS P '
. 'LEFT JOIN Beurk_Historique AS H ON H.IdNoeud = P.IdPermission AND H.NoVersion = 1 '
. 'LEFT JOIN Uzers_User AS U ON U.IdUser = H.IdUser ';
$tabQuery['WHERE'] = '';
if ($MotCle != '') {
$tabQuery['SELECT']['score'] = "MATCH(P.Permission, P.Donnees) AGAINST ('$MotCle')";
$tabQuery['WHERE'] = db_AND($tabQuery['WHERE'], "MATCH(P.Permission, P.Donnees) AGAINST ('$MotCle')");
} else
$tabQuery['SELECT']['score'] = '1'; // score
if ($TsCREMin != '' && $TsCREMax != '')
$tabQuery['WHERE'] = db_AND($tabQuery['WHERE'], "H.TsAction BETWEEN $TsCREMin AND $TsCREMax");
if ($Createur != '')
$tabQuery['WHERE'] = db_AND($tabQuery['WHERE'], "U.User = '$Createur'");
$tabQuery['SELECT'][] = "''"; //champs utile pour les permissions
$tabQuery['SELECT'][] = 'P.IdEtat';
return Uzers_ajoutePermissionQUERY($tabQuery);
}