editer_liens.php
Gestion du formulaire d'édition de liens
Table of Contents
Functions
- determine_source_lien_objet() : array<string|int, mixed>
- Retrouve la source et l'objet de la liaison
- formulaires_editer_liens_charger_dist() : array<string|int, mixed>|false
- Chargement du formulaire d'édition de liens
- formulaires_editer_liens_traiter_dist() : array<string|int, mixed>
- Traiter le post des informations d'édition de liens
- lien_gerer__oups() : array<string|int, mixed>|string|null
- Fonction de regroupement pour gerer le _oups de façon sécurisée sans passer par une globale ni par une _request
- lien_gerer__oups_collecter_args() : string
- Collecter les args du form utilisant la fonction lien_gerer__oups()
Functions
determine_source_lien_objet()
Retrouve la source et l'objet de la liaison
determine_source_lien_objet(string $a, string|int $b, int|string $c) : array<string|int, mixed>
À partir des 3 premiers paramètres transmis au formulaire, la fonction retrouve :
- l'objet dont on utilise sa table de liaison (table_source)
- l'objet et id_objet sur qui on lie des éléments (objet, id_objet)
- l'objet que l'on veut lier dessus (objet_lien)
Parameters
- $a : string
- $b : string|int
- $c : int|string
Return values
array<string|int, mixed> —($table_source,$objet,$id_objet,$objet_lien)
formulaires_editer_liens_charger_dist()
Chargement du formulaire d'édition de liens
formulaires_editer_liens_charger_dist(string $a, string|int $b, int|string $c[, array<string|int, mixed>|bool $options = [] ]) : array<string|int, mixed>|false
#FORMULAIRE_EDITER_LIENS{auteurs,article,23} pour associer des auteurs à l'article 23, sur la table pivot spip_auteurs_liens #FORMULAIRE_EDITER_LIENS{article,23,auteurs} pour associer des auteurs à l'article 23, sur la table pivot spip_articles_liens #FORMULAIRE_EDITER_LIENS{articles,auteur,12} pour associer des articles à l'auteur 12, sur la table pivot spip_articles_liens #FORMULAIRE_EDITER_LIENS{auteur,12,articles} pour associer des articles à l'auteur 12, sur la table pivot spip_auteurs_liens
Parameters
- $a : string
- $b : string|int
- $c : int|string
- $options : array<string|int, mixed>|bool = []
-
- Si array, tableau d'options
- Si bool : valeur de l'option 'editable' uniquement
Return values
array<string|int, mixed>|falseformulaires_editer_liens_traiter_dist()
Traiter le post des informations d'édition de liens
formulaires_editer_liens_traiter_dist(string $a, string|int $b, int|string $c[, array<string|int, mixed>|bool $options = [] ]) : array<string|int, mixed>
Les formulaires peuvent poster dans quatre variables
- ajouter_lien et supprimer_lien
- remplacer_lien
- qualifier_lien
- ordonner_lien
- desordonner_liens
Les deux premières peuvent être de trois formes différentes : ajouter_lien[]="objet1-id1-objet2-id2" ajouter_lien[objet1-id1-objet2-id2]="nimportequoi" ajouter_lien['clenonnumerique']="objet1-id1-objet2-id2" Dans ce dernier cas, la valeur ne sera prise en compte que si _request('clenonnumerique') est vrai (submit associé a l'input)
remplacer_lien doit être de la forme remplacer_lien[objet1-id1-objet2-id2]="objet3-id3-objet2-id2" ou objet1-id1 est celui qu'on enleve et objet3-id3 celui qu'on ajoute
qualifier_lien doit être de la forme, et sert en complément de ajouter_lien qualifier_lien[objet1-id1-objet2-id2][role] = array("role1", "autre_role") qualifier_lien[objet1-id1-objet2-id2][valeur] = array("truc", "chose") produira 2 liens chacun avec array("role"=>"role1","valeur"=>"truc") et array("role"=>"autre_role","valeur"=>"chose")
ordonner_lien doit être de la forme, et sert pour trier les liens ordonner_lien[objet1-id1-objet2-id2] = nouveau_rang
desordonner_liens n'a pas de forme précise, il doit simplement être non nul/non vide
Parameters
- $a : string
- $b : string|int
- $c : int|string
- $options : array<string|int, mixed>|bool = []
-
- Si array, tableau d'options
- Si bool : valeur de l'option 'editable' uniquement
Return values
array<string|int, mixed>lien_gerer__oups()
Fonction de regroupement pour gerer le _oups de façon sécurisée sans passer par une globale ni par une _request
lien_gerer__oups(string $form, string $action[, array<string|int, mixed>|null $valeur = null ]) : array<string|int, mixed>|string|null
Parameters
- $form : string
- $action : string
- $valeur : array<string|int, mixed>|null = null
Return values
array<string|int, mixed>|string|nulllien_gerer__oups_collecter_args()
Collecter les args du form utilisant la fonction lien_gerer__oups()
lien_gerer__oups_collecter_args(string $form, array<string|int, mixed> $trace) : string
Parameters
- $form : string
- $trace : array<string|int, mixed>