No description
Find a file
2024-07-12 10:22:38 +02:00
action feat: formulaire autonome, on peut passer dans l'array d'options soit obfusquer soit proteger 2023-06-29 17:49:43 +02:00
base wip: si obfusquer => on enregistre le nom du fichier initial dans le champ fichier_origine 2023-01-31 20:44:05 +01:00
formulaires feat: FORMULAIRE_BIGLOAD - ajout ajaxReload 2024-07-12 10:22:08 +02:00
inc fix: le nom du fichier doit passe dynamique sinon, la verif ne fonctionne pas dans toutes les situations 2024-01-12 16:49:30 +01:00
inclure feat: FORMULAIRE_BIGLOAD - ajout ajaxReload 2024-07-12 10:22:08 +02:00
js on ajoute un input hidden avec le nom du fichier pour pouvoir recreer proprement l'ordre du files 2019-12-09 11:37:31 +01:00
lang Pour l'usage : insertion dans un formulaire existant => OK 2019-12-06 12:02:37 +01:00
prive première version utilisable 2019-12-04 20:15:44 +01:00
bigform_administrations.php wip: si obfusquer => on enregistre le nom du fichier initial dans le champ fichier_origine 2023-01-31 20:44:05 +01:00
bigform_autorisations.php PSR 2023-06-29 09:13:48 +02:00
bigform_fonctions.php on rend configurable : mulitple / previsualiser / accept, cf README 2019-12-10 12:13:51 +01:00
bigform_options.php feat: compat spip 41 qui n'utilise plus la fonction urls_propres mais generer_url_document 2023-06-28 10:04:46 +02:00
bigform_pipelines.php secu: cette boucle pouvait permettre (difficilement) de voir les images. 2023-06-29 10:48:02 +02:00
fabrique_bigform.php première version utilisable 2019-12-04 20:15:44 +01:00
paquet.xml chore: up de z 2024-07-12 10:22:38 +02:00
README.md feat: FORMULAIRE_BIGLOAD - ajout ajaxReload 2024-07-12 10:22:08 +02:00
retailler_img.html secu: cette boucle pouvait permettre (difficilement) de voir les images. 2023-06-29 10:48:02 +02:00

Plugin bigform

plugin proposant un formulaire CVT pour le plugin bigup

Usage 1 : en formulaire autonome (comme html5_upload)

ATTENTION : il n'y a pas de vérification sur le type des fichiers envoyés en PHP. Ne pas hésiter à surcharger la fonction de vérification : formulaires_bigform_verifier() en fonction des besoins !

#FORMULAIRE_BIGFORM{objet, id_objet, mode, args (array)}
  • mode (facultatif) : le type d'image si besoin. Valeurs possibles : auto | logoon | logooff
  • args (facultatif) : un array d'options.
    • redirect qui permet de renvoyer sur la page passée en argument.
    • obfusquer
    • proteger
    • charger_js_titre oui par defaut => permet de ne pas charger le js d'ajout de l'input titre
    • ajaxReload le nom d'un bloc ajax à recharger via ajaxReload. dans ce cas, charger_js_titre = non Exemple pour revenir à la page principale "equipe" avec un bigform appelé dans une popin :
#FORMULAIRE_BIGFORM{article, #ID_ARTICLE, logoon, #ARRAY{redirect, #URL_PAGE{equipe}, obfusquer, oui}}

Usage 2 : en inclure dans un formulaire

Ajoute dynamiquement un champ titre pour chaque image

  1. dans le formulaire html:
<INCLURE{fond=inclure/bigform,env}>
arg: suffix_liste_fichiers=toto qui permet de charger le fichier :inc-bigup_liste_fichiers_toto.html

cet inclure peut accepter 3 arguments facultatifs :

  • accept=#LISTE{image/*, application/pdf} ou accept="image/*" par défaut tous les fichiers
  • previsualiser=non (par défaut = oui)
  • multiple=non (par défaut = oui)
  1. dans le formulaire php
// dans le charger :
$valeurs['_bigup_rechercher_fichiers'] = true;

// dans le verifier
// Pour les options :
// https://contrib.spip.net/References-des-verifications#verification_fichiers
// https://git.spip.net/plugin/verifier/src/branch/master/verifier/fichiers.php
$bigform = charger_fonction('bigform_verifier','inc');
$options = ['mime' => 'image_web'];

// si on veut redimensionner les images a 2048 et limiter a 10000 le televersement
// 1. dans options, définir la constante
define('_IMG_MAX_WIDTH', 2048);
// 2. ajouter dans l'appel de verifier des dimension_max
$options = [
	'mime' => 'tout_mime',
	'dimension_max' => [
		'largeur' => 10000,
		'hauteur' => 10000,
	]
];

$bigform($options,$erreurs);

/*
 * traiter
 * @param int $id_objet
 * @param string $objet
 * @param string $mode (facultatif) defaut: auto
 * @param bool $secu (true => deplace les fichiers dans IMG/PROTECTED/); defaut : false
 */

$bigform = charger_fonction('bigform_traiter','inc');
$bigform($id_objet, $objet);

// Options de protection des documents :
// - deplacer dans un sous repertoire PROTECTED
// - obfusquer le nom du fichier
//
$secu = [
	'proteger'  => false,
	'obfusquer' => false
];

$bigform = charger_fonction('bigform_traiter','inc');
$bigform($id_objet, $objet, $mode, $secu);


// ou definir la constante  pour l'avoir dans tous les formulaires:
define('_BIGFORM_OBFUSQUER', true);

ATTENTION Il faut ajouter les vérifications pour les différents types de fichiers

ATTENTION pour les documents protégés Il faut activer les urls propres : URLs Propres+.html