Gestion des zones géographiques du continent à la subdivision
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

155 lines
4.8 KiB

  1. <?php
  2. /**
  3. * Définit les autorisations du plugin Territoires
  4. *
  5. * @package SPIP\TERRITOIRES\AUTORISATION
  6. */
  7. if (!defined('_ECRIRE_INC_VERSION')) {
  8. return;
  9. }
  10. /**
  11. * Fonction d'appel pour le pipeline
  12. *
  13. * @pipeline autoriser
  14. */
  15. function territoires_autoriser() {
  16. }
  17. // -----------------
  18. // Objet territoires
  19. /**
  20. * Autorisation de voir un élément de menu (territoires)
  21. *
  22. * @param string $faire Action demandée
  23. * @param string $type Type d'objet sur lequel appliquer l'action
  24. * @param int $id Identifiant de l'objet
  25. * @param array $qui Description de l'auteur demandant l'autorisation
  26. * @param array $opt Options de cette autorisation
  27. * @return bool true s'il a le droit, false sinon
  28. **/
  29. function autoriser_territoires_menu_dist($faire, $type, $id, $qui, $opt) {
  30. return autoriser('voir', '_territoires');
  31. }
  32. /**
  33. * Autorisation de voir (territoires)
  34. *
  35. * @param string $faire Action demandée
  36. * @param string $type Type d'objet sur lequel appliquer l'action
  37. * @param int $id Identifiant de l'objet
  38. * @param array $qui Description de l'auteur demandant l'autorisation
  39. * @param array $opt Options de cette autorisation
  40. * @return bool true s'il a le droit, false sinon
  41. **/
  42. function autoriser_territoires_voir_dist($faire, $type, $id, $qui, $opt) {
  43. return true;
  44. }
  45. /**
  46. * Autorisation de configurer (territoires)
  47. *
  48. * @param string $faire Action demandée
  49. * @param string $type Type d'objet sur lequel appliquer l'action
  50. * @param int $id Identifiant de l'objet
  51. * @param array $qui Description de l'auteur demandant l'autorisation
  52. * @param array $opt Options de cette autorisation
  53. * @return bool true s'il a le droit, false sinon
  54. **/
  55. function autoriser_territoires_configurer_dist($faire, $type, $id, $qui, $opt) {
  56. return autoriser('configurer');
  57. }
  58. /**
  59. * Autorisation de peupler ou dépeupler des territoires.
  60. *
  61. * @param string $faire Action demandée
  62. * @param string $type Type d'objet sur lequel appliquer l'action
  63. * @param int $id Identifiant de l'objet
  64. * @param array $qui Description de l'auteur demandant l'autorisation
  65. * @param array $opt Options de cette autorisation
  66. * @return bool true s'il a le droit, false sinon
  67. **/
  68. function autoriser_territoires_peupler_dist($faire, $type, $id, $qui, $opt) {
  69. return autoriser('configurer');
  70. }
  71. /**
  72. * Autorisation de voir (territoire)
  73. *
  74. * @param string $faire Action demandée
  75. * @param string $type Type d'objet sur lequel appliquer l'action
  76. * @param int $id Identifiant de l'objet
  77. * @param array $qui Description de l'auteur demandant l'autorisation
  78. * @param array $opt Options de cette autorisation
  79. * @return bool true s'il a le droit, false sinon
  80. **/
  81. function autoriser_territoire_voir_dist($faire, $type, $id, $qui, $opt) {
  82. return true;
  83. }
  84. /**
  85. * Autorisation de créer (territoire)
  86. *
  87. * @param string $faire Action demandée
  88. * @param string $type Type d'objet sur lequel appliquer l'action
  89. * @param int $id Identifiant de l'objet
  90. * @param array $qui Description de l'auteur demandant l'autorisation
  91. * @param array $opt Options de cette autorisation
  92. * @return bool true s'il a le droit, false sinon
  93. **/
  94. function autoriser_territoire_creer_dist($faire, $type, $id, $qui, $opt) {
  95. return false;
  96. }
  97. /**
  98. * Autorisation de modifier (territoire)
  99. *
  100. * @param string $faire Action demandée
  101. * @param string $type Type d'objet sur lequel appliquer l'action
  102. * @param int $id Identifiant de l'objet
  103. * @param array $qui Description de l'auteur demandant l'autorisation
  104. * @param array $opt Options de cette autorisation
  105. * @return bool true s'il a le droit, false sinon
  106. **/
  107. function autoriser_territoire_modifier_dist($faire, $type, $id, $qui, $opt) {
  108. return in_array($qui['statut'], array('0minirezo', '1comite'));
  109. }
  110. /**
  111. * Autorisation de supprimer (territoire)
  112. *
  113. * @param string $faire Action demandée
  114. * @param string $type Type d'objet sur lequel appliquer l'action
  115. * @param int $id Identifiant de l'objet
  116. * @param array $qui Description de l'auteur demandant l'autorisation
  117. * @param array $opt Options de cette autorisation
  118. * @return bool true s'il a le droit, false sinon
  119. **/
  120. function autoriser_territoire_supprimer_dist($faire, $type, $id, $qui, $opt) {
  121. return false;
  122. }
  123. /**
  124. * Autorisation de lier/délier l'élément (territoires)
  125. *
  126. * @param string $faire Action demandée
  127. * @param string $type Type d'objet sur lequel appliquer l'action
  128. * @param int $id Identifiant de l'objet
  129. * @param array $qui Description de l'auteur demandant l'autorisation
  130. * @param array $opt Options de cette autorisation
  131. * @return bool true s'il a le droit, false sinon
  132. **/
  133. function autoriser_associerterritoires_dist($faire, $type, $id, $qui, $opt) {
  134. return $qui['statut'] == '0minirezo' and !$qui['restreint'];
  135. }