Carnet Wiki

Astuces Actions et Boutons

Version 9 — Octobre 2019 JLuc

Pour gérer des actions dans des pages de l’espace public et/ou des formulaires, si l’utilisateur connecté dispose des autorisations adéquates - bien sûr - on utilise souvent  :
-  
des #BOUTON_ACTION . URL_ACTION (? ) ou mieux
-  des #BOUTON_ACTION

- Voir aussi #URL_ACTION_AUTEUR
-  Codage d’une action, authentification et passage de paramètre à une action : https://programmer.spip.net/-Action-, https://programmer.spip.net/Les-act..., https://programmer.spip.net/Fonctio...

Cette page porte sur l’usage des balises #BOUTON_ACTION

Rappel de syntaxe

 #BOUTON_ACTION { libellé, url, class ,message de confirmation,title,callback } 
Paramètre Description
$libelle texte du bouton
$url url d’action
$class class css a ajouter
$confirm message de confirmation oui/non avant l’action
$title info-bulle au survol
$callback callback js à a appeler après lors de l’evenement action ( apres confirmation éventuelle ( eventuelle si $confirm est non vide) et avant exécution execution de l’action. Si la callback renvoie false, elle annule le déclenchement declenchement de l’action

-  Documentation : http://www.spip.net/fr_article4583.html
-  Source SPIP : https://code.spip.net/autodoc/tree/ecrire/inc/filtres.php.html#function_bouton_action

Quelques exemples

-  Utilisation du callback

[(#BOUTON_ACTION{Demande de publication,
          #URL_ACTION_AUTEUR{demande_publi,#ENV{id_professionnel}},
          ajax btn-demande_publi,'','','(function(){jQuery(".btn-demande_publi").hide("slow", function(){jQuery(".demande_publi_ok").show(500);});return true;})()'})]

-  Forcer le statut d’un article dès la saisie en passant un hidden dans le formulaire : [1]

-  Suppression d’article : (cf http://forum.spip.net/fr_231977.html#forum231978)

#URL_ACTION_AUTEUR{instituer_article,[(#ENV{id_article})]/poubelle,#URL_AUTEUR{#SESSION{id_auteur}}}

-  Supprimer un document depuis l’espace public (cf http://forum.spip.net/fr_231679.html#forum231692)

Dans une boucle documents :

[(#BOUTON_ACTION{<:tonplugin:supprimer:>,
        #URL_ACTION_AUTEUR{documenter,
                -#ID_ARTICLE/article/#ID_DOCUMENT,
                #SELF|parametre_url{var_mode,calcul}
        }
})]