Server : Apache System : Linux webd348.cluster026.gra.hosting.ovh.net 5.15.148-ovh-vps-grsec-zfs-classid #1 SMP Thu Feb 8 09:41:04 UTC 2024 x86_64 User : hednacluml ( 122243) PHP Version : 8.3.9 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl Directory : /home/hednacluml/jobs/plugins-dist/bigup/balise/ |
<?php /** * Saisie fichier spécifique * * @plugin Bigup * @copyright 2016 * @author marcimat * @licence GNU/GPL * @package SPIP\Bigup\Fonctions */ if (!defined('_ECRIRE_INC_VERSION')) { return; } include_spip('balise/saisie'); /** * Compile la balise `#SAISIE_FICHIER` qui retourne le code HTML de la saisie de formulaire indiquée. * * Identique à peu de choses près à la balise `#SAISIE` * - ajoute `form = #ENV{form}` * - ajoute `formulaire_args = #ENV{formulaire_args}` * - ajoute `fichiers = #ENV{_bigup_fichiers}` * * Ces 2 premières infos sont utiles à la balise `#BIGUP_TOKEN` * La liste des fichiers, elle, permet… à la saisie de lister les fichiers déjà présents. * * @syntaxe `#SAISIE_FICHIER{type,nom[,option=xx,...]}` * * @param Champ $p * @return Champ */ function balise_SAISIE_FICHIER_dist($p) { if (!class_exists('Pile')) { $msg = [ 'bigup:zbug_necessite_plugin', [ 'balise' => '#SAISIE_FICHIER', 'plugin' => 'saisies', ] ]; erreur_squelette($msg, $p); return $p; } // on recupere les parametres sans les traduire en code d'execution php $type_saisie = Pile::recuperer_et_supprimer_argument_balise(1, $p); // $type $titre = Pile::recuperer_et_supprimer_argument_balise(1, $p); // $titre // creer #ENV*{$titre} (* pour les cas de tableau serialises par exemple, que l'on veut reutiliser) $env_titre = Pile::creer_balise('ENV', ['param' => [$titre], 'etoile' => '*']); // #ENV*{titre} // créer #ENV{_bigup_fichiers} $_bigup_fichiers = Pile::creer_et_ajouter_argument_balise(Pile::creer_balise('ENV'), '_bigup_fichiers'); // on modifie $p pour ajouter des arguments // {nom=$titre, valeur=#ENV{$titre}, erreurs, type_saisie=$type, fond=saisies/_base} $p = Pile::creer_et_ajouter_argument_balise($p, 'nom', $titre); $p = Pile::creer_et_ajouter_argument_balise($p, 'valeur', $env_titre); $p = Pile::creer_et_ajouter_argument_balise($p, 'form'); // ajouté par rapport à `#SAISIE` $p = Pile::creer_et_ajouter_argument_balise($p, 'formulaire_args'); // ajouté par rapport à `#SAISIE` $p = Pile::creer_et_ajouter_argument_balise($p, 'fichiers', $_bigup_fichiers); // ajouté par rapport à `#SAISIE` $p = Pile::creer_et_ajouter_argument_balise($p, 'type_saisie', $type_saisie); $p = Pile::creer_et_ajouter_argument_balise($p, 'erreurs'); $p = Pile::creer_et_ajouter_argument_balise($p, 'fond', 'saisies/_base'); // on appelle la balise #INCLURE // avec les arguments ajoutes if (function_exists('balise_INCLURE')) { return balise_INCLURE($p); } else { return balise_INCLURE_dist($p); } }