sites_autoriser.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  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. // fonction pour le pipeline
  13. function sites_autoriser() {}
  14. // bouton du bandeau
  15. function autoriser_sites_menu_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
  16. return ($GLOBALS['meta']["activer_sites"] != "non");
  17. }
  18. function autoriser_sitecreer_menu_dist($faire, $type, $id, $qui, $opt){
  19. return
  20. ($GLOBALS['meta']["activer_sites"] != "non"
  21. AND verifier_table_non_vide()
  22. AND (
  23. $qui['statut']=='0minirezo'
  24. OR ($GLOBALS['meta']["proposer_sites"] >=
  25. ($qui['statut']=='1comite' ? 1 : 2))));
  26. }
  27. // Moderer la syndication ?
  28. // = modifier l'objet correspondant (si forum attache a un objet)
  29. // = droits par defaut sinon (admin complet pour moderation complete)
  30. // http://code.spip.net/@autoriser_modererforum_dist
  31. function autoriser_site_moderer_dist($faire, $type, $id, $qui, $opt) {
  32. return
  33. autoriser('modifier', 'site', $id, $qui, $opt);
  34. }
  35. function autoriser_site_purger_dist($faire, $type, $id, $qui, $opt) {
  36. return
  37. autoriser('moderer', 'site', $id, $qui, $opt);
  38. }
  39. function autoriser_controlersyndication_menu_dist($faire, $type, $id, $qui, $opt){
  40. return ($qui['statut']=='0minirezo' AND sql_countsel('spip_syndic_articles'));
  41. }
  42. // Creer un nouveau site ?
  43. function autoriser_site_creer_dist($faire, $type, $id, $qui, $opt){
  44. return
  45. ($GLOBALS['meta']["activer_sites"] != "non"
  46. AND (
  47. $qui['statut']=='0minirezo'
  48. OR ($GLOBALS['meta']["proposer_sites"] >=
  49. ($qui['statut']=='1comite' ? 1 : 2))));
  50. }
  51. // Autoriser a creer un site dans la rubrique $id
  52. // http://code.spip.net/@autoriser_rubrique_creersitedans_dist
  53. function autoriser_rubrique_creersitedans_dist($faire, $type, $id, $qui, $opt) {
  54. return
  55. $id
  56. AND autoriser('voir','rubrique',$id)
  57. AND $GLOBALS['meta']['activer_sites'] != 'non'
  58. AND (
  59. $qui['statut']=='0minirezo'
  60. OR ($GLOBALS['meta']["proposer_sites"] >=
  61. ($qui['statut']=='1comite' ? 1 : 2)));
  62. }
  63. // Autoriser a modifier un site
  64. // http://code.spip.net/@autoriser_site_modifier_dist
  65. function autoriser_site_modifier_dist($faire, $type, $id, $qui, $opt) {
  66. if ($qui['statut'] == '0minirezo' AND !$qui['restreint'])
  67. return true;
  68. $r = sql_fetsel("id_rubrique,statut", "spip_syndic", "id_syndic=".intval($id));
  69. return ($r
  70. AND autoriser('voir','rubrique',$r['id_rubrique'])
  71. AND
  72. ($r['statut'] == 'publie' OR (isset($opt['statut']) AND $opt['statut']=='publie'))
  73. ? autoriser('publierdans', 'rubrique', $r['id_rubrique'], $qui, $opt)
  74. : in_array($qui['statut'], array('0minirezo', '1comite'))
  75. );
  76. }
  77. // Autoriser a voir un site $id_syndic
  78. // http://code.spip.net/@autoriser_site_voir_dist
  79. function autoriser_site_voir_dist($faire, $type, $id, $qui, $opt) {
  80. return autoriser_site_modifier_dist($faire, $type, $id, $qui, $opt);
  81. }
  82. ?>