From 2e6695c1b951d27fa8ca139893474b118d663225 Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Fri, 20 May 2005 17:32:35 +0000 Subject: [PATCH] rationalisation + mesure anti-phraseur PHP chatouilleux --- inc-compilo-api.php3 | 18 ++++++++++++++---- inc-compilo.php3 | 10 +++++----- inc-html-squel.php3 | 26 +++++++++++++------------- 3 files changed, 32 insertions(+), 22 deletions(-) diff --git a/inc-compilo-api.php3 b/inc-compilo-api.php3 index ac1d929fea..6c958acdf3 100644 --- a/inc-compilo-api.php3 +++ b/inc-compilo-api.php3 @@ -27,7 +27,7 @@ class Inclure { var $type = 'include'; var $texte; var $args = array(); // valeurs des params - var $cond_avant, $cond_apres; // inutilises mais generiques + var $avant, $apres; // inutilises mais generiques } // @@ -37,11 +37,12 @@ class Boucle { var $type = 'boucle'; var $id_boucle; var $id_parent =''; - var $cond_avant, $milieu, $cond_apres, $cond_altern; + var $avant, $milieu, $apres, $altern; var $lang_select; var $type_requete; var $sql_serveur; var $param = array(); + var $criteres = array(); var $separateur = array(); var $doublons; var $partie, $total_parties,$mode_partie; @@ -69,11 +70,20 @@ class Boucle { var $numrows = false; } +// sous-noeud du precedent + +class Critere { + var $operateur; + var $arg1; + var $arg2; + var $not; +} + class Champ { var $type = 'champ'; var $nom_champ; var $nom_boucle= ''; // seulement si boucle explicite - var $cond_avant, $cond_apres; // tableaux d'objets + var $avant, $apres; // tableaux d'objets var $etoile; var $filtres = array(); // filtre explicites var $fonctions = array(); // source des filtres (compatibilite) @@ -98,7 +108,7 @@ class Idiome { var $module = ""; // son module de definition var $filtres = array(); // les filtres a appliquer au resultat var $fonctions = array(); // source des filtres - var $cond_avant, $cond_apres; // inutilises mais faut = ci-dessus + var $avant, $apres; // inutilises mais faut = ci-dessus // champs pour la production de code, cf ci-dessus var $id_boucle; var $boucles; diff --git a/inc-compilo.php3 b/inc-compilo.php3 index c464027121..bbbb3e7a09 100644 --- a/inc-compilo.php3 +++ b/inc-compilo.php3 @@ -423,11 +423,11 @@ function calculer_liste($tableau, $descr, &$boucles, $id_boucle='', $niv=1) { ereg_replace("-","_", $nom) . $descr['nom'] . '($Cache, $Pile, $doublons, $Numrows, $SP)'; $commentaire=''; - $avant = calculer_liste($p->cond_avant, + $avant = calculer_liste($p->avant, $newdescr, $boucles, $id_boucle, $niv+2); - $apres = calculer_liste($p->cond_apres, + $apres = calculer_liste($p->apres, $newdescr, $boucles, $id_boucle, $niv+2); - $altern = calculer_liste($p->cond_altern, + $altern = calculer_liste($p->altern, $newdescr, $boucles, $id_boucle, $niv+1); break; @@ -454,9 +454,9 @@ function calculer_liste($tableau, $descr, &$boucles, $id_boucle='', $niv=1) { $code = calculer_champ($p); $commentaire = '#' . $p->nom_champ . $p->etoile; - $avant = calculer_liste($p->cond_avant, + $avant = calculer_liste($p->avant, $descr, $boucles, $id_boucle, $niv+1); - $apres = calculer_liste($p->cond_apres, + $apres = calculer_liste($p->apres, $descr, $boucles, $id_boucle, $niv+1); $altern = "''"; break; diff --git a/inc-html-squel.php3 b/inc-html-squel.php3 index 0f29061aa5..f1e01366bb 100644 --- a/inc-html-squel.php3 +++ b/inc-html-squel.php3 @@ -64,8 +64,8 @@ function phraser_inclure($texte, $result) { $champ->args[$k] = array($m[1]); } } - $texte = $champ->cond_apres; - $champ->cond_apres = ""; + $texte = $champ->apres; + $champ->apres = ""; $result[] = $champ; } return (($texte==="") ? $result : phraser_idiomes($texte, $result)); @@ -178,7 +178,7 @@ function phraser_args($texte, $fin, $sep, $result, &$pointeur_champ) { else if ($args[0] == "'") ereg ("^(')([^']*)(')(.*)$", $args, $regs); else - ereg("^( *)([^,{}]*(\{[^{}]*\}[^,{}]*)*[^,\}]*)([,}$fin].*)$", $args, $regs); + ereg("^( *)([^,{}]*({[^{}]*\}[^,{}]*)*[^,}]*)([,}$fin].*)$", $args, $regs); $args = ltrim($regs[count($regs)-1]); $arg = $regs[2]; @@ -218,7 +218,7 @@ function phraser_args($texte, $fin, $sep, $result, &$pointeur_champ) { $texte = ltrim($args); } # virer la parenthese fermante ou le chevron fermant - $pointeur_champ->cond_apres = substr($texte,1); + $pointeur_champ->apres = substr($texte,1); return $result; } @@ -241,10 +241,10 @@ function phraser_champs_interieurs($texte, $sep, $result) { $champ->nom_boucle = $regs[3]; $champ->nom_champ = $regs[4]; $champ->etoile = $regs[5]; - // phraser_args indiquera ou commence cond_apres + // phraser_args indiquera ou commence apres $result = phraser_args($regs[6], ")", $sep, $result, $champ); - $champ->cond_avant = phraser_champs_exterieurs($regs[1],$sep,$result); - $champ->cond_apres = phraser_champs_exterieurs($champ->cond_apres,$sep,$result); + $champ->avant = phraser_champs_exterieurs($regs[1],$sep,$result); + $champ->apres = phraser_champs_exterieurs($champ->apres,$sep,$result); $p = strpos($texte, $regs[0]); @@ -366,7 +366,7 @@ function phraser($texte, $id_parent, &$boucles, $nom) { $s = "<B$id_boucle>"; $p = strpos($debut, $s); if ($p !== false) { - $result->cond_avant = substr($debut, $p + strlen($s)); + $result->avant = substr($debut, $p + strlen($s)); $debut = substr($debut, 0, $p); } $milieu = substr($milieu, strlen($match[0])); @@ -395,7 +395,7 @@ function phraser($texte, $id_parent, &$boucles, $nom) { $s = "</B$id_boucle>"; $p = strpos($texte, $s); if ($p !== false) { - $result->cond_fin = substr($texte, 0, $p); + $result->apres = substr($texte, 0, $p); $texte = substr($texte, $p + strlen($s)); } @@ -405,13 +405,13 @@ function phraser($texte, $id_parent, &$boucles, $nom) { $s = "<//B$id_boucle>"; $p = strpos($texte, $s); if ($p !== false) { - $result->cond_altern = substr($texte, 0, $p); + $result->altern = substr($texte, 0, $p); $texte = substr($texte, $p + strlen($s)); } - $result->cond_avant = phraser($result->cond_avant, $id_parent,$boucles, $nom); - $result->cond_apres = phraser($result->cond_fin, $id_parent,$boucles, $nom); - $result->cond_altern = phraser($result->cond_altern,$id_parent,$boucles, $nom); + $result->avant = phraser($result->avant, $id_parent,$boucles, $nom); + $result->apres = phraser($result->apres, $id_parent,$boucles, $nom); + $result->altern = phraser($result->altern,$id_parent,$boucles, $nom); $result->milieu = phraser($milieu, $id_boucle,$boucles, $nom); $all_res = phraser_champs_etendus($debut, $all_res); -- GitLab