[PLUGINS] +set de base
[lhc/web/www.git] / www / plugins / saisies / saisies / date.html
diff --git a/www/plugins/saisies/saisies/date.html b/www/plugins/saisies/saisies/date.html
new file mode 100644 (file)
index 0000000..392a817
--- /dev/null
@@ -0,0 +1,65 @@
+[(#REM) \r
+       Zone de saisie de date utilsant le dateur de Bonux si présent.\r
+       Sur les sites en HTML5, utilise type="date"\r
+       sur le input, et type="text" par défaut pour les autres.\r
+       Pour tous on utilise class="date" et class="heure" pour activer le dateur.\r
+       \r
+       La valeur fournie peut être :\r
+       - au format spip jj/mm/aaaa (date uniquement)\r
+       - au format SQL aaaa-mm-jj (date uniquement)\r
+       - au format SQL aaaa-mm-jj hh:mm:ss (date et heure)\r
+       - un tableau avec une entrée "date" et une entrée "heure" séparée, au format SQL (date et heure obligatoire)\r
+       \r
+       Pour utiliser les heures, il faut utiliser l'option "horaire=oui".\r
+       \r
+       La date est proposée à l'affichage au format jj/mm/aaaa.\r
+]\r
+\r
+[(#REM) Initialisation de la valeur ]\r
+#SET{valeur,#ENV{valeur_forcee,#ENV{valeur,#ENV{defaut}}}}\r
+\r
+[(#REM) Regex de date SQL ]\r
+#SET{date_sql,"[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]( [0-9][0-9]:[0-9][0-9]:[0-9][0-9])?"}\r
+\r
+[(#REM) Si la valeur est un tableau, on considère que c'est date et heure dans un format déjà reconnu (j/m/a ou SQL) ]\r
+[(#GET{valeur}|is_array|oui)\r
+       #SET{date, #GET{valeur}|table_valeur{date}}\r
+       #SET{heure, #GET{valeur}|table_valeur{heure}}\r
+]\r
+\r
+[(#REM) Si la valeur est une chaîne, on regarde si SQL ]\r
+[(#GET{valeur}|is_string|oui)\r
+       [(#REM) Par défaut (date uniquement au format SPIP) la date c'est toute la valeur ]\r
+       #SET{date, #GET{valeur}}\r
+       #SET{heure, ''}\r
+       \r
+       [(#REM) Si c'est bien une date SQL ]\r
+       [(#GET{valeur}|match{#GET{date_sql}}|oui)\r
+               [(#REM) Si la date est complètement 0, on met des valeurs vides ]\r
+               [(#GET{valeur}|=={0000-00-00 00:00:00}|oui)\r
+                       #SET{date, ''}\r
+                       #SET{heure, ''}\r
+               ]\r
+               [(#GET{valeur}|=={0000-00-00 00:00:00}|non)\r
+                       #SET{date, #GET{valeur}|affdate{d/m/Y}}\r
+                       #SET{heure, #GET{valeur}|affdate{H:i}}\r
+               ]\r
+       ]\r
+]\r
+\r
+[(#INCLURE{fond=saisies/input,\r
+       env,\r
+       nom=#ENV{nom}[(#ENV{horaire}|?{[date]})],\r
+       valeur=#GET{date},\r
+       type=#HTML5|?{date,text},\r
+       class=[(#ENV{class}) ]date})]\r
+[(#ENV{horaire}|oui)\r
+[(#INCLURE{fond=saisies/input,\r
+       env,\r
+       nom=#ENV{nom}[heure],\r
+       valeur=#GET{heure},\r
+       size=4,\r
+       maxlength=5,\r
+       class=[(#ENV{class}) ]heure})]\r
+]\r
+[(#ENV{disable}|non|et{#ENV{readonly}|non})[(#INCLURE{fond=formulaires/dateur/inc-dateur, heure_pas=#ENV{heure_pas,30}})]]\r