editer_liens.php
SPIP, Système de publication pour l'internet
Copyright © avec tendresse depuis 2001 Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James
Ce programme est un logiciel libre distribué sous licence GNU/GPL.
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>