breves_autoriser.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. /***************************************************************************\
  3. * SPIP, Systeme de publication pour l'internet *
  4. * *
  5. * Copyright (c) 2001-2014 *
  6. * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
  7. * *
  8. * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
  9. * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
  10. \***************************************************************************/
  11. if (!defined('_ECRIRE_INC_VERSION')) return;
  12. // pour le pipeline d'autorisation
  13. function breves_autoriser(){}
  14. // bouton du bandeau
  15. function autoriser_breves_menu_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
  16. return ($GLOBALS['meta']["activer_breves"] != "non");
  17. }
  18. function autoriser_brevecreer_menu_dist($faire, $type, $id, $qui, $opt){
  19. return ($GLOBALS['meta']["activer_breves"] != "non")
  20. AND verifier_table_non_vide();
  21. }
  22. // Autoriser a creer une breve dans la rubrique $id
  23. // http://code.spip.net/@autoriser_rubrique_creerbrevedans_dist
  24. function autoriser_rubrique_creerbrevedans_dist($faire, $type, $id, $qui, $opt) {
  25. $r = sql_fetsel("id_parent", "spip_rubriques", "id_rubrique=".intval($id));
  26. return
  27. $id
  28. AND ($r['id_parent']==0)
  29. AND ($GLOBALS['meta']["activer_breves"]!="non")
  30. AND autoriser('voir','rubrique',$id);
  31. }
  32. // Autoriser a modifier la breve $id
  33. // = admins & redac si la breve n'est pas publiee
  34. // = admins de rubrique parente si publiee
  35. // http://code.spip.net/@autoriser_breve_modifier_dist
  36. function autoriser_breve_modifier_dist($faire, $type, $id, $qui, $opt) {
  37. $r = sql_fetsel("id_rubrique,statut", "spip_breves", "id_breve=".intval($id));
  38. return
  39. $r AND (
  40. ($r['statut'] == 'publie' OR (isset($opt['statut']) AND $opt['statut']=='publie'))
  41. ? autoriser('publierdans', 'rubrique', $r['id_rubrique'], $qui, $opt)
  42. : in_array($qui['statut'], array('0minirezo', '1comite'))
  43. );
  44. }
  45. ?>