File "pages_autorisations.php"
Full path: /home/argothem/www/organecyberpresse/plugins/auto/pages/v2.3.0/pages_autorisations.php
File size: 4.86 KB
MIME-type: text/x-php
Charset: utf-8
<?php
/**
* Fonction pour le pipeline, n'a rien a effectuer
*
* @return
*/
function pages_autoriser() {
}
/* ----------------------- AUTORISATIONS DE L'OBJET PAGE UNIQUE ----------------------- */
/**
* Autorisation de créer un page unique.
*
* Cette page unique peut être créée soit à partir de rien
* soit en convertissant un article existant.
* Par défaut seuls les administrateurs complets sont autorisés.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
* @return
*/
function autoriser_page_creer_dist($faire, $type, $id, $qui, $opt) {
// Conditions :
// - l'auteur connecté est un administrateur complet
$autoriser = pages_autorisation_defaut_dist($qui);
return $autoriser;
}
/**
* Autorisation de modifier une page unique existante.
*
* Cette page peut être modifiée soit au travers du formulaire d'édition
* soit en convertissant une page en article éditorial.
* Par défaut seuls les administrateurs complets sont autorisés.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
* @return
*/
function autoriser_page_modifier_dist($faire, $type, $id, $qui, $opt) {
$autoriser = false;
// Conditions :
// - l'auteur connecté est un administrateur complet
if ($id_article = intval($id)) {
$autoriser = pages_autorisation_defaut_dist($qui);
}
return $autoriser;
}
/**
* Autorisation d'afficher une page unique.
*
* Par défaut seuls les administrateurs complets sont autorisés.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
* @return
*/
function autoriser_page_voir_dist($faire, $type, $id, $qui, $opt) {
$autoriser = false;
// Conditions :
// - l'auteur connecté est un administrateur complet
if ($id_article = intval($id)) {
$autoriser = pages_autorisation_defaut_dist($qui);
}
return $autoriser;
}
/**
* Autorisation d'afficher la liste des pages uniques.
*
* Par défaut seuls les administrateurs complets sont autorisés.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
* @return
*/
function autoriser_pages_voir_dist($faire, $type, $id, $qui, $opt) {
// Conditions :
// - l'auteur connecté est un administrateur complet
$autoriser = pages_autorisation_defaut_dist($qui);
return $autoriser;
}
/**
* Autorisation d'accéder à la liste des pages uniques.
*
* Cette autorisation coîncide avec l'autorisation pages_voir.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
* @return
*/
function autoriser_pages_menu_dist($faire, $type, $id, $qui, $opt) {
// Conditions :
// - l'auteur connecté doit posséder l'autorisation pages_voir
$autoriser = autoriser('voir', '_pages', $id, $qui, $opt);
return $autoriser;
}
/**
* Autorisation d'afficher le bouton créer une page unique inclus
* dans la barre des outils rapides .
*
* Cette autorisation coîncide avec l'autorisation page_creer.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
*
*@return
*/
function autoriser_pagecreer_menu_dist($faire, $type, $id, $qui, $opt) {
// Conditions :
// - l'auteur connecté est un administrateur complet
$autoriser = autoriser('creer', 'page', $id, $qui, $opt);
return $autoriser;
}
/**
* Autorisation d'afficher le bouton "convertir en page unique" et "convertir en article"
*
* Par défaut seuls les administrateurs complets sont autorisés.
*
* @param object $faire
* @param object $type
* @param object $id
* @param object $qui
* @param object $opt
*
*@return
*/
function autoriser_page_convertir_dist($faire, $type, $id, $qui, $opt) {
// Conditions :
// - l'auteur connecté est un administrateur complet
$autoriser = pages_autorisation_defaut_dist($qui);
return $autoriser;
}
function pages_autorisation_defaut_dist($qui) {
return (($qui['statut'] == '0minirezo')
and !$qui['restreint']);
}
/**
* Autorisation de créer un article dans une rubrique $id
*
* Il faut pouvoir voir la rubrique et pouvoir créer un article…
* y compris tant qu'il n'y a pas de rubrique (pour une page unique)
*
* @param string $faire Action demandée
* @param string $type Type d'objet sur lequel appliquer l'action
* @param int $id Identifiant de l'objet
* @param array $qui Description de l'auteur demandant l'autorisation
* @param array $opt Options de cette autorisation
* @return bool true s'il a le droit, false sinon
**/
if (!function_exists('autoriser_rubrique_creerarticledans')) {
function autoriser_rubrique_creerarticledans($faire, $type, $id, $qui, $opt) {
return
(($id == -1) and pages_autorisation_defaut_dist($qui))
OR ($id
and autoriser('voir', 'rubrique', $id)
and autoriser('creer', 'article'));
}
}