‰PNG

   
IHDR  6   £   7¾Âß  PLTEÿÿÿL‹õïïïåååLŒõOŽõÜÜÜRõI‰ôÙÙÙçççáááJ‰ñÞÞÞDU¶Oò6€ö©Çüb|‰ÕÕ×e÷÷÷ÒÒÖÛåð^w‡„«ôÍÍÓ^•óöôïEnÓBP°ÇÈÐDV´>…õpŠ•ÂÃÎüùîÊ×ñÃÇÉš¨°±óPo{~¦óZw…\tˆ>P³m öc˜ó°Æòäéï»Íñ«³¸2F³Yf¸ó÷ýŸ¾øÕáûéðýÚåûØÙá¢°Ôwœæ°ºÕÀÑñ‡¦å’©ßº¾ÏŸ¯Ú—¶óPt¢PƒÔ^r|t‡pƒ”}š„¢äMi“¡©—¤ª¬±½Mr¢ÕÏÉ¡¦Æ™Ñ’˜Â}„¿oy»½ÁÞhuÂ¨«Å–š¿þ­)€  (IDATxœíÝ
[ÚÈ p"&bEA gÓDQ«-½¸­v÷”êzzv{¶ÝïÿAÎÜ’L’É¥ä™$ÿgût­í®ù=ï;—db
…<yòäÉ“'Ož”äêæú¸õÄ^%ýÕ'•³‰ZÚZ(NÀqÒ_~2y=V+‘	!ì\%}Iäõd+Z-Œ
d±K¯b©…±md±K·ct(J) ¤K“¾†Õçªó,5Â¦f¯KÏŸWlÄ-ƒ]ÚŠ5²…³e°KÇË`S2×¥“Xj!lØ
\'}«N<¶52¸e®K—Â¶fI_ÇŠo±Æ–É.Åª–É.][æºt	l¤K·“¾Õ&[„éÒIÒ²Ú,ƒ”Ûë¤¯d¥‰Á©FØÎ’¾’•&š-MU³7—.…
—ÌÔ­ñH¶è¥lÙêÒ(¶8j´KÇI_Ê*Á­f±mÁiÒ×²Â,‡téyÒ×²Â„³ÅP#l¤K I_Ë
Æ ªárÛ {I_ÌêÂKÍaËT—³-¢ÆºtÏëáû>Ü'd*Ö@¶xj6.7¥Ûm¿yóF¯V«E”u.Þ]Ÿ A¬%­;l1Ñl5ºQxËÜt,W-ÆI•OQ8![\4Žté»>q{2ú3’¸	Øâ£qjô€\·kšíç°Éâæe[ÀÌÏßš(
Ë,t(
$”bfp±-fæR#_Z»]/©E@¶õ¤Iâ¤ƒŠ$ÒK¨¡j¨äs[X¹ÉPn˜m+ÔÂÎñÙÍl6;<¿ƒcƒï	[£»Ú}*ÃèÁ¦Ô7k=ÃXÃ1ŒžÑ¼ƒP
RC]Ú&lúúÓÙdèÒP6ÞM{”ÌŽaœW`€šªTpµ5P´˜n‚i¡˜´IŒ„±ÁÁÔcÆà¶QÁ‰Ô¬.ÅnåXÅ–>6ÞˆÐ\³Ø~m°.­ë™dS*ÂR³àZb7¥Cæ4)`·mš26elFê
w©é¸EÂ¥‹Mõ¨8Ü‡³ 5Ô¥m›­®G/CÒÅV™òfkÍÃ³í³óÙÔZ‰ª‘.¥nx|+G¹yÕ¤f«€™SZÆôzB7	°48Ä¿nª¡¥Û{êFØp½e‡
l÷œJ»Öú¶¤*pÜ4BÕTøÁìb·s[¬G¥f›Øµf4éÚÖ™*àÍM-D
uiŸÜ>Šç–&6xh±áÂòN `ÉfwéGÊË-ElêØVkúÕ"ƒ»´Ëº±i¡nR³¹o9»ã	jª2qwiX½ùÔ¤bsËT¬­7PW£]ÚuØ´z©IÊŽ­b›Á§¨¡.íÚ]JªMÓ‚ÜRÄfO½±ú5Ö¥ÖŠ—°iÕÔ³{ƒPãY©‰"œUÙ\Ú°ÊM«÷ûýFch““MíXóÁ9ß£Ê`Úôg*º¢À[÷œ õO†ÃáÊAzÙ¬GcnBPÁÀÞ8ð»Õ3Á†A¬K96D¶‹’^6{FèMì¡
7žmM°ÏRÅZñºØv|l~5‰Ùî,¶ŠƒÈæ¿í†Ôh—:ûÆ¶“
¶’ÊMŸqÙ°šÆ¦ˆÍ;¶¥Ší˜¯6gv\„M®9!€M &/›Òr–mü¢"USÈa{åæ°íVÓÊfoä;àf3¸L	LMïúB¶~Ý›*¶R%€„ßï[Kb´¶©¡rkX›+´EÐ6]/Zÿyá–A^6Ød×Õ
¾©Xy
…j
sd<?php

/***************************************************************************\
 *  SPIP, Système de publication pour l'internet                           *
 *                                                                         *
 *  Copyright © avec tendresse depuis 2001                                 *
 *  Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James  *
 *                                                                         *
 *  Ce programme est un logiciel libre distribué sous licence GNU/GPL.     *
\***************************************************************************/

/**
 * Définit les autorisations du plugin forum
 *
 * @package SPIP\Forum\Autorisations
 **/
if (!defined('_ECRIRE_INC_VERSION')) {
	return;
}

/**
 * Fonction d'appel pour le pipeline
 *
 * @pipeline autoriser
 */
function forum_autoriser() {
}

/**
 * Autorisation de voir l'élément «forums internes» dans le menu
 *
 * @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_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;
}

/**
 * Autorisation de voir l'élément «suivi des forums» dans le menu
 *
 * @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_forumreactions_menu_dist($faire, $type = '', $id = 0, $qui = null, $opt = null) {
	return (sql_countsel('spip_forum') && autoriser('publierdans', 'rubrique', _request('id_rubrique')));
}


/**
 * Autorisation de modérer un message de forum
 *
 * Il faut l'autorisation de modifier l'objet correspondant
 * (si le forum est attaché à un objet), sinon avoir droits par défaut
 * (être administrateur).
 *
 * @see autoriser_forum_moderer_dist()
 *
 * @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_modererforum_dist($faire, $type, $id, $qui, $opt) {
	return $type ? autoriser('modifier', $type, $id, $qui, $opt) : autoriser('moderer', 'forum', 0, $qui, $opt);
}

/**
 * Autorisation de changer le statut d'un message de forum
 *
 * Seulement sur les objets qu'on a le droit de modérer.
 *
 * @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_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;
}

/**
 * Autorisation par défaut de modérer un message de forum
 *
 * Si l'on connait l'objet, on délègue à modererforum, sinon il faut
 * être administrateur
 *
 * @see autoriser_modererforum_dist()
 *
 * @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_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 [$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
}


/**
 * Autorisation de modifier un message de forum
 *
 * Jamais
 *
 * @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_modifier_dist($faire, $type, $id, $qui, $opt) {
	return false;
}

/**
 * Autorisation de consulter le forum des administrateurs
 *
 * Il faut être administrateur (y compris restreint)
 *
 * @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_admin_dist($faire, $type, $id, $qui, $opt) {
	return $qui['statut'] == '0minirezo';
}

/**
 * Autorisation d'auto-association de documents sur des forum
 *
 * Jamais
 *
 * @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_autoassocierdocument_dist($faire, $type, $id, $qui, $opt) {
	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;
}

/**
 * Autorisation de participer au forum des admins
 *
 * Il faut être administrateur (y compris restreint)
 *
 * @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_forumadmin_participer_dist($faire, $type, $id, $qui, $opt) {
	return ($GLOBALS['meta']['forum_prive_admin'] == 'oui') && $qui['statut'] == '0minirezo';
}


/**
 * Autorisation de participer au forum privé d'un objet quelconque
 *
 * Afin de rester compatible avec l'existant cette autorisation est toujours vraie.
 *
 * @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_participerforumprive_dist($faire, $type, $id, $qui, $opt) {
	return true;
}

/**
 * Autorisation de voir le menu configurer_forum
 *
 * Il faut avoir accès à la page configurer_forum
 *
 * @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_configurerforum_menu_dist($faire, $type, $id, $qui, $opt) {
	return autoriser('configurer', 'forum', $id, $qui, $opt);
}
