Skip to content
Extraits de code Groupes Projets
Valider d2b163aa rédigé par esj's avatar esj
Parcourir les fichiers

Squelettes dynamiques introduits en [10645]: mettre aussi un formulaire de...

Squelettes dynamiques introduits en [10645]: mettre aussi un formulaire de saisie par colonne, sinon les critères conditionnels ne sont pas devinables.
parent 9a490d05
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -487,7 +487,7 @@ function debug_dumpfile ($texte, $fonc, $type) { ...@@ -487,7 +487,7 @@ function debug_dumpfile ($texte, $fonc, $type) {
function debug_affiche($fonc, $tout, $objet, $affiche) function debug_affiche($fonc, $tout, $objet, $affiche)
{ {
if (!$objet) {if ($affiche == 'squelette') $objet = $fonc;} if (!$objet) {if ($affiche == 'squelette') $objet = $fonc;}
if (!$objet OR !$res = $tout[$affiche][$objet]) return; if (!$objet OR !$quoi = $tout[$affiche][$objet]) return;
$res = "<div id=\"debug_boucle\"><fieldset>"; $res = "<div id=\"debug_boucle\"><fieldset>";
if ($affiche == 'resultat') { if ($affiche == 'resultat') {
$res .= "<legend>" .$tout['pretty'][$objet] ."</legend>"; $res .= "<legend>" .$tout['pretty'][$objet] ."</legend>";
...@@ -495,7 +495,7 @@ function debug_affiche($fonc, $tout, $objet, $affiche) ...@@ -495,7 +495,7 @@ function debug_affiche($fonc, $tout, $objet, $affiche)
if (function_exists('traite_query')) if (function_exists('traite_query'))
$req = traite_query($req); $req = traite_query($req);
$res .= ancre_texte($req); $res .= ancre_texte($req);
foreach ($res as $view) foreach ($quoi as $view)
if ($view) $res .= "\n<br /><fieldset>" .interdire_scripts($view) ."</fieldset>"; if ($view) $res .= "\n<br /><fieldset>" .interdire_scripts($view) ."</fieldset>";
} else if ($affiche == 'code') { } else if ($affiche == 'code') {
......
...@@ -33,18 +33,45 @@ function vertebrer_sort($fields, $direction) ...@@ -33,18 +33,45 @@ function vertebrer_sort($fields, $direction)
foreach($fields as $n => $t) { foreach($fields as $n => $t) {
$tri = $direction $tri = $direction
. ((test_sql_int($t) OR test_sql_date($r)) ? 'tri_n' : 'tri'); . ((test_sql_int($t) OR test_sql_date($r)) ? 'tri_n' : 'tri');
$url ="";
foreach (array('tri', 'tri_n', '_tri', '_tri_n') as $c) {
if ($tri != $c) $url .= "|$c";
}
$url = "|parametre_url{" . $tri . ",'" . $n . "'}" $url = "|parametre_url{" . $tri . ",'" . $n . "'}"
. '|parametre_url{"' . substr($url,1) .'",""}'; . vertebrer_sanstri($tri);
$res .= "\n\t\t<th><a href='[(#SELF$url)]'>$n</a></th>"; $res .= "\n\t\t<th><a href='[(#SELF$url)]'>$n</a></th>";
} }
return $res; return $res;
} }
function vertebrer_sanstri($sauf='')
{
$url ="";
foreach (array('tri', 'tri_n', '_tri', '_tri_n') as $c) {
if ($sauf != $c) $url .= "|$c";
}
return '|parametre_url{"' . substr($url,1) .'",""}';
}
// Autant de formulaire que de champs (pour les criteres conditionnels)
function vertebrer_form($fields)
{
$res = '<td></td>';
$url = join('|', array_keys($fields));
$url = "#SELF|parametre_url{'$url',''}";
foreach($fields as $n => $t) {
$s = test_sql_int($t) ? 11
: (preg_match('/char\s*\((\d)\)/i', $t, $r) ? $r[1] : '');
spip_log("$t $s");
$res .= "\n\t\t<td><form action='[($url)]' method='get'><div>"
. "\n\t\t\t<input name='$n'[ value='(#ENV{" . $n ."})']"
. ($s ? " size='$s'" : '')
. " />\n\t\t\t[($url|form_hidden)]"
. "\n\t\t</div></form></td>";
}
return $res;
}
// Autant de criteres conditionnels que de champs // Autant de criteres conditionnels que de champs
// http://doc.spip.org/@vertebrer_crit // http://doc.spip.org/@vertebrer_crit
...@@ -57,6 +84,7 @@ function vertebrer_crit($v) ...@@ -57,6 +84,7 @@ function vertebrer_crit($v)
return $res; return $res;
} }
// Class CSS en fonction de la parite du numero de ligne. // Class CSS en fonction de la parite du numero de ligne.
// Si une colonne reference une table, ajoute un href sur sa page dynamique. // Si une colonne reference une table, ajoute un href sur sa page dynamique.
// Ce serait encore mieux d'aller chercher sa cle primaire. // Ce serait encore mieux d'aller chercher sa cle primaire.
...@@ -103,9 +131,11 @@ function public_vertebrer_dist($desc) ...@@ -103,9 +131,11 @@ function public_vertebrer_dist($desc)
"href='./?page=$surnom&amp;var_mode=debug&amp;var_mode_affiche=squelette#debug_boucle'>squelette" . "href='./?page=$surnom&amp;var_mode=debug&amp;var_mode_affiche=squelette#debug_boucle'>squelette" .
"</a>" . "</a>" .
"\n#PAGINATION" . "\n#PAGINATION" .
"\n</p>\n<table class='spip' border='1' width='90%'>" . "\n</p><br class='nettoyeur' />\n<table class='spip' border='1' width='90%'>" .
"\n\t<tr>\n\t\t<th>Nb</th>" . "\n\t<tr>\n\t\t<th>Nb</th>" .
vertebrer_sort($field,'') . vertebrer_sort($field,'') .
"\n\t</tr>\n\t\t<tr>" .
vertebrer_form($field) .
"\n\t</tr>\n<BOUCLE1($surnom)" . "\n\t</tr>\n<BOUCLE1($surnom)" .
vertebrer_crit($field) . vertebrer_crit($field) .
'>' . '>' .
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter