123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- <?php
- /***************************************************************************\
- * SPIP, Systeme de publication pour l'internet *
- * *
- * Copyright (c) 2001-2014 *
- * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
- * *
- * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
- * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
- \***************************************************************************/
- if (!defined("_ECRIRE_INC_VERSION")) return;
- // declarer la fonction du pipeline
- function forum_autoriser(){}
- function autoriser_foruminternesuivi_menu_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
- if ((($GLOBALS['meta']['forum_prive'] == 'non') && ($GLOBALS['meta']['forum_prive_admin'] == 'non'))
- OR (($GLOBALS['meta']['forum_prive'] == 'non') && ($qui['statut'] == '1comite')))
- return false;
- return true;
- }
- function autoriser_forumreactions_menu_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
- return (sql_countsel('spip_forum') && autoriser('publierdans','rubrique',_request('id_rubrique')));
- }
- // Moderer le forum ?
- // = modifier l'objet correspondant (si forum attache a un objet)
- // = droits par defaut sinon (admin complet pour moderation complete)
- // http://code.spip.net/@autoriser_modererforum_dist
- function autoriser_modererforum_dist($faire, $type, $id, $qui, $opt) {
- return $type ? autoriser('modifier', $type, $id, $qui, $opt):autoriser('moderer', 'forum', 0, $qui, $opt);
- }
- /**
- * Autorise a changer le statut d'un message de forum :
- * seulement sur les objets qu'on a le droit de moderer
- */
- function autoriser_forum_instituer_dist($faire, $type, $id, $qui, $opt){
- if (!intval($id)) return autoriser('moderer','forum');
- $row = sql_fetsel('objet,id_objet','spip_forum','id_forum='.intval($id));
- return $row?autoriser('modererforum',$row['objet'],$row['id_objet'],$qui,$opt):false;
- }
- function autoriser_forum_moderer_dist($faire, $type, $id, $qui, $opt){
- // si on fournit un id : deleguer a modererforum sur l'objet concerne
- if ($id){
- include_spip('inc/forum');
- if ($racine = racine_forum($id)
- AND list($objet,$id_objet,) = $racine
- AND $objet){
- return autoriser('modererforum',$objet,$id_objet);
- }
- }
-
- // sinon : admins uniquement
- return $qui['statut']=='0minirezo'; // les admins restreints peuvent moderer leurs messages
- }
- // Modifier un forum ?
- // = jamais !
- // http://code.spip.net/@autoriser_forum_modifier_dist
- function autoriser_forum_modifier_dist($faire, $type, $id, $qui, $opt) {
- return false;
- }
- // Consulter le forum des admins ?
- // admins y compris restreints
- // http://code.spip.net/@autoriser_forum_admin_dist
- function autoriser_forum_admin_dist($faire, $type, $id, $qui, $opt) {
- return $qui['statut'] == '0minirezo';
- }
- /**
- * Auto-association de documents sur des forum : niet
- */
- function autoriser_forum_autoassocierdocument_dist($faire, $type, $id, $qui, $opts) {
- return false;
- }
- /**
- * Autorisation d'association de documents sur des forum
- *
- * Toujours
- *
- * @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
- */
- function autoriser_forum_associerdocuments_dist($faire, $type, $id, $qui, $opt) {
- return true;
- }
- /**
- * Autorisation de dissociation de documents sur des forum
- *
- * Toujours
- *
- * @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
- */
- function autoriser_forum_dissocierdocuments_dist($faire, $type, $id, $qui, $opt) {
- return true;
- }
- /**
- * Autoriser a participer au forum des admins
- *
- * @return bool
- */
- function autoriser_forumadmin_participer_dist($faire, $type, $id, $qui, $opts) {
- return ($GLOBALS['meta']['forum_prive_admin'] == 'oui') && $qui['statut']=='0minirezo';
- }
- /**
- * Autoriser a participer au forum privé d'un objet quelconque
- * Afin de rester compatible avec l'existant cette autorisation est toujours vraie.
- *
- * @return bool
- */
- function autoriser_participerforumprive_dist($faire, $type, $id, $qui, $opt) {
- return true;
- }
- ?>
|