cextras_autoriser.php
Déclaration d'autorisations pour les champs extras
Table of Contents
Functions
- cextras_autoriser() : mixed
- Fonction d'appel pour le pipeline autoriser
- champs_extras_restrictions() : bool
- Retourne si une saisie peut s'afficher ou non
- autoriser_voirextra_dist() : bool
- Autorisation de voir un champ extra
- autoriser_modifierextra_dist() : bool
- Autorisation de modifier un champ extra
- restreindre_extras() : bool
- Fonction d'aide pour créer des autorisations de champs spécifiques
- _restreindre_extras_objet() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras()
- _restreindre_extras_objet_sur_cible() : bool|int
- Fonction d'autorisation interne à la fonction restreindre_extras()
- inc_restreindre_extras_objet_sur_branche_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à une branche de rubrique
- inc_restreindre_extras_objet_sur_rubrique_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à une rubrique
- inc_restreindre_extras_objet_sur_secteur_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à un secteur
- inc_restreindre_extras_objet_sur_groupe_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à un groupe de mot
- inc_restreindre_extras_objet_sur_groupemot_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à un groupe de mot
- inc_restreindre_extras_objet_sur_mot_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test de la présence d'un mot lié
- inc_restreindre_extras_objet_sur_composition_dist() : bool
- Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test de la présence d'une composition
Functions
cextras_autoriser()
Fonction d'appel pour le pipeline autoriser
cextras_autoriser() : mixed
Tags
champs_extras_restrictions()
Retourne si une saisie peut s'afficher ou non
champs_extras_restrictions(array<string|int, mixed> $saisie, string $action, string $table, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Teste les options de restrictions de la saisie si il y en a et calcule en fonction l'autorisation
Parameters
- $saisie : array<string|int, mixed>
-
Saisie que l'on traite.
- $action : string
-
Le type d'action : voir | modifier
- $table : string
-
La table d'application : spip_articles
- $id : int
-
Identifiant de la table : 3
- $qui : array<string|int, mixed>
-
Description de l'auteur en cours
- $opt : array<string|int, mixed>
-
Options de l'autorisation
Return values
bool —La saisie peut elle s'afficher ?
autoriser_voirextra_dist()
Autorisation de voir un champ extra
autoriser_voirextra_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Cherche une autorisation spécifique pour le champ si elle existe (autoriser_{objet}voirextra{colonne}_dist), sinon applique l'autorisation prévue par la description de la saisie
Parameters
- $faire : string
-
Action demandée
- $type : string
-
Type d'objet sur lequel appliquer l'action
- $id : int
-
Identifiant de l'objet
- $qui : array<string|int, mixed>
-
Description de l'auteur demandant l'autorisation
- $opt : array<string|int, mixed>
-
Options de cette autorisation
Tags
Return values
bool —true s'il a le droit, false sinon
autoriser_modifierextra_dist()
Autorisation de modifier un champ extra
autoriser_modifierextra_dist(string $faire, string $type, int $id, array<string|int, mixed> $qui, array<string|int, mixed> $opt) : bool
Cherche une autorisation spécifique pour le champ si elle existe (autoriser_{objet}modifierextra{colonne}_dist), sinon applique l'autorisation prévue par la description de la saisie
Parameters
- $faire : string
-
Action demandée
- $type : string
-
Type d'objet sur lequel appliquer l'action
- $id : int
-
Identifiant de l'objet
- $qui : array<string|int, mixed>
-
Description de l'auteur demandant l'autorisation
- $opt : array<string|int, mixed>
-
Options de cette autorisation
Tags
Return values
bool —true s'il a le droit, false sinon
restreindre_extras()
Fonction d'aide pour créer des autorisations de champs spécifiques
restreindre_extras(string $objet[, mixed $noms = array() ][, mixed $ids = array() ][, string $cible = 'rubrique' ][, bool $recursif = false ]) : bool
Permet d'indiquer que tels champs extras se limitent à telle ou telle rubrique et cela en créant à la volée les fonctions d'autorisations adéquates.
Parameters
- $objet : string
-
Objet possédant les extras
- $noms : mixed = array()
-
Nom des extras a restreindre
- $ids : mixed = array()
-
Identifiant (des rubriques par defaut) sur lesquelles s'appliquent les champs
- $cible : string = 'rubrique'
-
Type de la fonction de test qui sera appelee, par defaut "rubrique". Peut aussi etre "secteur", "groupe" ou des fonctions definies
- $recursif : bool = false
-
Application recursive sur les sous rubriques ? ATTENTION, c'est gourmand en requetes SQL :)
Tags
Return values
bool —true si on a fait quelque chose
_restreindre_extras_objet()
Fonction d'autorisation interne à la fonction restreindre_extras()
_restreindre_extras_objet(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids[, string $cible = 'rubrique' ][, bool $recursif = false ]) : bool
Teste si un objet à le droit d'afficher des champs extras en fonction de la rubrique (ou autre defini dans la cible) dans laquelle il se trouve et des rubriques autorisées
On met en cache pour éviter de plomber le serveur SQL, vu que la plupart du temps un hit demandera systématiquement le même objet/id_objet lorsqu'il affiche un formulaire.
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) (en rapport avec la cible) sur lesquelles s'appliquent les champs
- $cible : string = 'rubrique'
-
Type de la fonction de test qui sera appelee, par defaut "rubrique". Peut aussi etre "secteur", "groupe" ou des fonctions definies
- $recursif : bool = false
-
Application recursive sur les sous rubriques ? ATTENTION, c'est gourmand en requetes SQL :)
Return values
bool —Autorisé ou non
_restreindre_extras_objet_sur_cible()
Fonction d'autorisation interne à la fonction restreindre_extras()
_restreindre_extras_objet_sur_cible(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $_id_cible) : bool|int
Teste si un objet à le droit d'afficher des champs extras en fonction de la rubrique (ou autre defini dans la cible) dans laquelle il se trouve et des rubriques autorisées
Le dernier argument donne la colonne à chercher dans l'objet correspondant
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) (en rapport avec la cible) sur lesquelles s'appliquent les champs
- $_id_cible : bool
-
Nom de la colonne SQL cible (id_rubrique, id_secteur, id_groupe...)
Return values
bool|int —- true : autorisé,
- false : non autorisé,
- 0 : incertain.
inc_restreindre_extras_objet_sur_branche_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à une branche de rubrique
inc_restreindre_extras_objet_sur_branche_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $recursif) : bool
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des branches de rubrique sur lesquelles s'appliquent les champs
- $recursif : bool
-
Non utilisé
Tags
Return values
bool —Autorisé ou non
inc_restreindre_extras_objet_sur_rubrique_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à une rubrique
inc_restreindre_extras_objet_sur_rubrique_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $recursif) : bool
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des rubriques sur lesquelles s'appliquent les champs
- $recursif : bool
-
Application récursive sur les sous rubriques ? ATTENTION, c'est gourmand en requetes SQL :)
Return values
bool —Autorisé ou non
inc_restreindre_extras_objet_sur_secteur_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à un secteur
inc_restreindre_extras_objet_sur_secteur_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids[, bool $recursif = false ]) : bool
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des secteurs sur lesquelles s'appliquent les champs
- $recursif : bool = false
-
Non utilisé
Return values
bool —Autorisé ou non
inc_restreindre_extras_objet_sur_groupe_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à un groupe de mot
inc_restreindre_extras_objet_sur_groupe_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $recursif) : bool
Alias de groupemot
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des groupes de mots sur lesquelles s'appliquent les champs
- $recursif : bool
-
True pour appliquer aux branches d'un groupe de mot (avec plugin spécifique groupe de mots arborescents)
Tags
Return values
bool —Autorisé ou non
inc_restreindre_extras_objet_sur_groupemot_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test d'appartenance à un groupe de mot
inc_restreindre_extras_objet_sur_groupemot_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $recursif) : bool
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des groupes de mots sur lesquelles s'appliquent les champs
- $recursif : bool
-
True pour appliquer aux branches d'un groupe de mot (avec plugin spécifique groupe de mots arborescents)
Return values
bool —Autorisé ou non
inc_restreindre_extras_objet_sur_mot_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test de la présence d'un mot lié
inc_restreindre_extras_objet_sur_mot_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $recursif) : bool
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des mots sur lesquels s'appliquent les champs
- $recursif : bool
-
Inutile, la récursivité est prise en charge par compositions_determiner()
Return values
bool —Autorisé ou non
inc_restreindre_extras_objet_sur_composition_dist()
Fonction d'autorisation interne à la fonction restreindre_extras() spécifique au test de la présence d'une composition
inc_restreindre_extras_objet_sur_composition_dist(string $objet, int $id_objet, array<string|int, mixed> $opt, mixed $ids, bool $recursif) : bool
Parameters
- $objet : string
-
Objet possédant les extras
- $id_objet : int
-
Identifiant de l'objet possédant les extras
- $opt : array<string|int, mixed>
-
Options des autorisations
- $ids : mixed
-
Identifiant(s) des compositions sur lesquelles s'appliquent les champs
- $recursif : bool
-
Inutile, la récursivité est prise en charge par compositions_determiner()
Return values
bool —Autorisé ou non