diff --git a/ecrire/base/abstract_sql.php b/ecrire/base/abstract_sql.php index f12c0fe4b8ee4db335c881c80271dfe2071dbabd..6f245906dda6659216e2193a88304db267aa5a02 100644 --- a/ecrire/base/abstract_sql.php +++ b/ecrire/base/abstract_sql.php @@ -95,7 +95,6 @@ function sql_select ( if (!is_array($res)) return $res; list($query, $num, $msg) = $res; - include_spip('public/debug'); erreur_squelette($msg, $num, $query); return false; } diff --git a/ecrire/base/connect_sql.php b/ecrire/base/connect_sql.php index a9636abe777391c69939a98d515f1c4277e511a0..ba2001850421f62488d433fdcff3afcfd5e57275 100644 --- a/ecrire/base/connect_sql.php +++ b/ecrire/base/connect_sql.php @@ -32,7 +32,6 @@ function spip_connect($serveur='', $version='') { if (isset($connexions[$index][$version])) return $connexions[$index]; include_spip('base/abstract_sql'); - if (isset($_GET['var_profile'])) include_spip('public/debug'); $install = (_request('exec') == 'install'); // Premiere connexion ? diff --git a/ecrire/exec/valider_xml.php b/ecrire/exec/valider_xml.php index 3a8079dc0be4d279d938e69078597ad1803b3e95..33acc1a580b20856c0e9f54fb2bfa2872bd5612e 100644 --- a/ecrire/exec/valider_xml.php +++ b/ecrire/exec/valider_xml.php @@ -12,7 +12,6 @@ if (!defined("_ECRIRE_INC_VERSION")) return; include_spip('inc/presentation'); -include_spip('public/debug'); // http://doc.spip.org/@exec_valider_xml_dist function exec_valider_xml_dist() @@ -33,7 +32,6 @@ function valider_xml_ok($url, $req_ext) $onfocus = "this.value='';"; $texte = $bandeau = $err = ''; } else { - include_spip('public/debug'); include_spip('inc/distant'); if (is_dir($url)) { $dir = (substr($url,-1,1) === '/') ? $url : "$url/"; diff --git a/ecrire/inc/actions.php b/ecrire/inc/actions.php index 0b7d19a6c6996a785a4436e393c6c6efbd0962c2..963b9be1e7f8950d9d9f542f47e4e5b79a309ab1 100644 --- a/ecrire/inc/actions.php +++ b/ecrire/inc/actions.php @@ -215,7 +215,7 @@ function ajax_retour($corps,$xml = true) $debut = $xml?'<' . "?xml version='1.0' encoding='" . $c . "'?" . ">\n":''; } if (count($GLOBALS['tableau_des_erreurs']) AND isset($_COOKIE['spip_admin'])) { - find_in_path('debug.php','public/',true); + include_spip('public/debusquer'); $corps = affiche_erreurs_page($GLOBALS['tableau_des_erreurs']) . $corps; } diff --git a/ecrire/inc/filtres.php b/ecrire/inc/filtres.php index 57830a11fea34d682b00db5c90f0ec84206388fc..d085b93396a07dd8d17c6defeda9e7d8f0dbc436 100644 --- a/ecrire/inc/filtres.php +++ b/ecrire/inc/filtres.php @@ -2090,7 +2090,7 @@ function env_to_attributs ($texte, $ignore_params=array()) { function f_jQuery ($texte) { static $doublon=0; if ($doublon++) { - include_spip('public/debug'); + include_spip('public/debusquer'); $texte = affiche_erreurs_page(array( array("#INSERT_HEAD",_T('double_occurrence'))) ) . $texte; diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php index b1bbfefa8477048855115f4a2ca4476b4377d55a..a22cb1e58aa42ffef79ee509f226c0fb30159ad8 100644 --- a/ecrire/inc/utils.php +++ b/ecrire/inc/utils.php @@ -1644,6 +1644,10 @@ function exec_info_dist() { echo "pas admin"; } +function erreur_squelette($message='', $lieu='', $quoi='') { + $debusquer = charger_fonction('debusquer', 'public'); + return $debusquer($message, $lieu, $quoi); +} /** * La fonction de base de SPIP : un squelette + un contexte => une page. diff --git a/ecrire/index.php b/ecrire/index.php index 0392e002a2de92cd3856031e12d6b465cd042e36..186bda9a2bc12cf90a5edf0ce83efd55b727c4dd 100644 --- a/ecrire/index.php +++ b/ecrire/index.php @@ -154,11 +154,11 @@ $var_f = charger_fonction($exec); $var_f(); if ($GLOBALS['var_mode'] == 'debug') { - include_spip('public/debug'); $var_mode_objet = _request('var_mode_objet'); erreur_squelette("", "", $var_mode_objet); } if (isset($tableau_des_erreurs) AND count($tableau_des_erreurs) AND $affiche_boutons_admin) + include_spip('public/debusquer'); echo affiche_erreurs_page($tableau_des_erreurs); ?> diff --git a/ecrire/public.php b/ecrire/public.php index 0ae5a135af28f5dcf081c9930209bef923840895..5297076eba3fc193beeb04cb23adb0ed5ef7a7e1 100644 --- a/ecrire/public.php +++ b/ecrire/public.php @@ -181,7 +181,6 @@ if (isset($GLOBALS['_INC_PUBLIC'])) { // la memoriser dans le tableau des erreurs // On ne revient pas ici si le nb d'erreurs > 4 if ($res === false AND $affiche_boutons_admin) { - include_spip('public/debug'); erreur_squelette(_T('zbug_erreur_execution_page')); } } @@ -192,7 +191,6 @@ if (isset($GLOBALS['_INC_PUBLIC'])) { $var_mode_affiche = _request('var_mode_affiche'); $var_mode_objet = _request('var_mode_objet'); $GLOBALS['debug_objets'][$var_mode_affiche][$var_mode_objet . 'tout'] = ($var_mode_affiche== 'validation' ? $page['texte'] :""); - include_spip('public/debug'); if ($GLOBALS['debug_objets']['sourcefile']) { erreur_squelette('', '', $var_mode_objet); } @@ -207,12 +205,12 @@ if (isset($GLOBALS['_INC_PUBLIC'])) { // page_base_href($page['texte']); - // (c'est ici qu'on fait var_recherche, tidy, boutons d'admin, + // (c'est ici qu'on fait var_recherche, validation, boutons d'admin, // cf. public/assembler.php) echo pipeline('affichage_final', $page['texte']); if (count($tableau_des_temps) AND $affiche_boutons_admin) { - include_spip('public/debug'); + include_spip('public/tracer'); echo chrono_requete($tableau_des_temps); } diff --git a/ecrire/public/compiler.php b/ecrire/public/compiler.php index bf241503084e13fd8173a1f1d100ea1654902ca6..957c37cff66c1497eb9e15d778ccea746f124021 100644 --- a/ecrire/public/compiler.php +++ b/ecrire/public/compiler.php @@ -140,8 +140,7 @@ function calculer_inclure($p, $descr, &$boucles, $id_boucle) { else $path = "find_in_path(\"$fichier\")"; $code = "if (is_readable(\$path = $path)) include \$path; - else { include_spip(\"public/debug\"); - erreur_squelette(_T(\"zbug_info_erreur_squelette\"), + else { erreur_squelette(_T(\"zbug_info_erreur_squelette\"), _T(\"fichier_introuvable\", array(\"fichier\" => \"$fichier\")));}"; } else { $_contexte['fond'] = "\'fond\' => ' . argumenter_squelette(" . $code . ") . '"; @@ -592,12 +591,10 @@ function calculer_liste($tableau, $descr, &$boucles, $id_boucle='') { } return '(' . substr($res,2+$descr['niv']) . ')'; } - } else return "@debug_sequence('$id_boucle', '" . - ($descr['nom']) . - "', " . - $descr['niv'] . - ", array(" . - join(" ,\n$tab", $codes) . "))"; + } else { + $nom = $descr['nom'] . $id_boucle . ($descr['niv']?$descr['niv']:''); + return "join('', array_map('array_shift', \$GLOBALS['debug_objets']['sequence']['$nom'] = array(" . join(" ,\n$tab", $codes) . ")))"; + } } define('_REGEXP_COND_VIDE_NONVIDE',"/^[(](.*)[?]\s*''\s*:\s*('[^']+')\s*[)]$/"); @@ -736,7 +733,7 @@ function compile_cas($tableau, $descr, &$boucles, $id_boucle) { if ($code != "''") { $code = compile_retour($code, $avant, $apres, $altern, $tab, $descr['niv']); $codes[]= (($mode == 'validation') ? - "array(" . $p->ligne . ", '$commentaire', $code)" + "array($code, '$commentaire', " . $p->ligne . ")" : (($mode == 'code') ? "\n// $commentaire\n$code" : $code)); @@ -975,7 +972,9 @@ function compiler_squelette($squelette, $boucles, $nom, $descr, $sourcefile, $co } if ($debug) - $code = "\n\n/*\n" . public_decompiler($squelette) . "\n*/\n"; + $code = "\n\n/*\n" . + str_replace('*/', '* /', public_decompiler($squelette)) + . "\n*/\n"; else $code = ""; foreach($boucles as $id => $boucle) { @@ -983,7 +982,8 @@ function compiler_squelette($squelette, $boucles, $nom, $descr, $sourcefile, $co $boucle->type_requete . " " . (!$debug ? '' : - decompiler_criteres($boucle->param, $boucle->criteres)) . + str_replace('*/', '* /', + decompiler_criteres($boucle->param, $boucle->criteres))) . " */\n\n" . $boucle->return; } diff --git a/ecrire/public/debug.php b/ecrire/public/debusquer.php similarity index 96% rename from ecrire/public/debug.php rename to ecrire/public/debusquer.php index e4a10966fed3066ee439e4763044f3c8025fdf42..9a4d6ea647e7cd494a8bb266d28caec40d735adf 100644 --- a/ecrire/public/debug.php +++ b/ecrire/public/debusquer.php @@ -133,8 +133,8 @@ define('_DEBUG_MAX_SQUELETTE_ERREURS', 4); // pour les appels involontaires ($message non vide => erreur) // et volontaires. // -// http://doc.spip.org/@erreur_squelette -function erreur_squelette($message='', $lieu='', $quoi='') { + +function public_debusquer_dist($message='', $lieu='', $quoi='') { global $tableau_des_erreurs; if ($message) { @@ -155,20 +155,6 @@ function erreur_squelette($message='', $lieu='', $quoi='') { } } -// appelee a chaque sortie de sequence (compilo.php) -// http://doc.spip.org/@debug_sequence -function debug_sequence($id, $nom, $niv, $sequence) { - global $debug_objets; - - if (!$niv) - { - $debug_objets['sequence'][$nom.$id] = $sequence; - } - $res = ""; - foreach($sequence as $v) if (is_array($v)) $res .= $v[2]; - return $res; -} - // http://doc.spip.org/@trouve_boucle_debug function trouve_boucle_debug($n, $nom, $debut=0, $boucle = "") { @@ -178,15 +164,15 @@ function trouve_boucle_debug($n, $nom, $debut=0, $boucle = "") if (is_array($debug_objets['sequence'][$id])) { foreach($debug_objets['sequence'][$id] as $v) { - if (!preg_match('/^(.*)(<\?.*\?>)(.*)$/s', $v[2],$r)) - $y = substr_count($v[2], "\n"); + if (!preg_match('/^(.*)(<\?.*\?>)(.*)$/s', $v[0],$r)) + $y = substr_count($v[0], "\n"); else { if ($v[1][0] == '#') // balise dynamique - $incl = $debug_objets['resultat'][$v[0]]; + $incl = $debug_objets['resultat'][$v[2]]; else // inclusion - $incl = $debug_objets['squelette'][trouve_squelette_inclus($v[2])]; + $incl = $debug_objets['squelette'][trouve_squelette_inclus($v[0])]; $y = substr_count($incl, "\n") + substr_count($r[1], "\n") + substr_count($r[3], "\n"); @@ -198,7 +184,7 @@ function trouve_boucle_debug($n, $nom, $debut=0, $boucle = "") if ($incl = trouve_squelette_inclus($v[1])) return trouve_boucle_debug($n, $incl, $debut); } - return array($nom, $boucle, $v[0] -1 + $n - $debut ); + return array($nom, $boucle, $v[2] -1 + $n - $debut ); } $debut += $y; } @@ -357,7 +343,7 @@ function debug_dumpfile ($texte, $fonc) { _T($titre), ' ', $err, - "</legend>"; + "</legend>"; echo $texte; echo "</fieldset></div>"; echo "\n</div>"; diff --git a/ecrire/public/styliser.php b/ecrire/public/styliser.php index e731a9d8425491c1081b1cbcd855c28f7bf3df9d..1dbef1105c04b999219a2e2fc07345545b20d45b 100644 --- a/ecrire/public/styliser.php +++ b/ecrire/public/styliser.php @@ -49,8 +49,6 @@ function public_styliser_dist($fond, $contexte, $lang='', $connect='', $ext='htm // pas de squelette : erreur ! if (!$squelette) { - // Indiquer une erreur squelette - include_spip('public/debug'); erreur_squelette(_T('info_erreur_squelette2', array('fichier'=>"'$fond.$ext'")), $GLOBALS['dossier_squelettes']); diff --git a/ecrire/public/tracer.php b/ecrire/public/tracer.php index f7d547467ffc97d7845ce0095a84572a36afd80e..3b27d08ef5487eb9a77c304314f1b8b0dabed804 100644 --- a/ecrire/public/tracer.php +++ b/ecrire/public/tracer.php @@ -33,12 +33,9 @@ function trace_query_end($query, $start, $result, $err, $serveur='') trace_query_chrono($start, microtime(), $query, $result, $serveur); if (!($err = sql_errno())) return $result; $err .= ' '.sql_error(); - if (autoriser('debug')) { - include_spip('public/debug'); - $tableau_des_erreurs[] = array( + $tableau_des_erreurs[] = array( _T('info_erreur_requete'). " " . htmlentities($query), "« " . htmlentities($err)," »"); - } return $result; } @@ -139,6 +136,7 @@ function chrono_requete($temps) ("<tr><td>" . count($temps) . " </td><td> " . _T('info_total') . '</td><td>' . $total . "</td></td><td></td></tr>")) . "</table>"; + include_spip('public/debusquer'); return (_DIR_RESTREINT ? '' : affiche_erreurs_page($GLOBALS['tableau_des_erreurs'])) . affiche_erreurs_page($temps, $titre); } diff --git a/ecrire/xml/valider.php b/ecrire/xml/valider.php index f72fff38e76159ec2840507492a94ae279741182..3b8851b0251013c8fbd257f9ea09e949f36ff534 100644 --- a/ecrire/xml/valider.php +++ b/ecrire/xml/valider.php @@ -310,6 +310,8 @@ function phraserTout($phraseur, $data) // http://doc.spip.org/@emboite_texte function emboite_texte($res, $fonc='',$self='') { + include_spip('public/debusquer'); + list($texte, $errs) = $res; if (!$texte) return array(ancre_texte('', array('','')), false);