diff --git a/ecrire/exec/valider_xml.php b/ecrire/exec/valider_xml.php index b42647357780030f3bfc0522214c037fa7852242..ee80f1c18b04026ace2798510349197d7e7859ba 100644 --- a/ecrire/exec/valider_xml.php +++ b/ecrire/exec/valider_xml.php @@ -12,6 +12,7 @@ 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() @@ -37,7 +38,8 @@ function valider_xml_ok($url) $transformer_xml = charger_fonction('valider_xml', 'inc'); if (is_dir($url)) { - foreach(preg_files($url, '.php$') as $f) { + $res = array(); + foreach(preg_files($url, 'articles.php$') as $f) { $res[]= controle_une_url($transformer_xml, basename($f, '.php'), $url); } $res = valider_resultats($res); @@ -87,20 +89,36 @@ function valider_xml_ok($url) // http://doc.spip.org/@valider_resultats function valider_resultats($res) { + foreach($res as $k => $l) { + $n = preg_match_all(",(.*?)(\d+)(\D+(\d+)<br />),", + $l[0], + $regs, + PREG_SET_ORDER); + if ($n = intval($n)) { + $x.= count_occ($regs); + if (count($x) > 1) + $x = join('+',$x); + else $x = trim(substr(textebrut($l[0]),0,16)) .' ...'; + $x = ' (' . $x . ')'; + } else $x = ''; + $res[$k][0] = $n; + $res[$k][4] = $x; + } $i = 0; $table = ''; rsort($res); foreach($res as $l) { $i++; $class = 'row_'.alterner($i, 'even', 'odd'); - list($erreurs, $texte, $script, $args) = $l; + list($nb, $texte, $script, $args,$erreurs) = $l; if ($texte < 0) { $texte = (0- $texte); $color = ";color: red"; } else {$color = '';} $h = generer_url_ecrire('valider_xml', "var_url=$script"); $table .= "<tr class='$class'>" - . "<td style='text-align: right'>$erreurs</td>" + . "<td style='text-align: right'>$nb</td>" + . "<td style='text-align: left'>$erreurs</td>" . "<td><a href='$h'>$script</a></td>" . "<td>$args</td>" . "<td style='text-align: right$color'>$texte</td>"; @@ -108,6 +126,8 @@ function valider_resultats($res) return "<table class='spip'>" . "<tr><th>" . _T('erreur_texte') + . "</th><th>" + . _T('message') . "</th><th>script</th><th>args</th><th>" . _T('taille_octets', array('taille' => ' ')) . "</th></tr>" @@ -154,14 +174,8 @@ function controle_une_url($transformer_xml, $script, $dir) } else $res = strlen($page2); } } - spip_log("validation de $script en appelant $f"); - if (isset($GLOBALS['xhtml_error'])) { - preg_match_all(",(.*?)(\d+)(\D+(\d+)<br />),", - $GLOBALS['xhtml_error'], - $regs, - PREG_SET_ORDER); - $n = count($regs); - } else $n = 0; + $n = isset($GLOBALS['xhtml_error']) ? $GLOBALS['xhtml_error'] : ''; + spip_log("validation de $script en appelant $f : " . count($n) . " erreurs."); return array($n, $res, $script, $appel); } ?> diff --git a/ecrire/inc/editer_article.php b/ecrire/inc/editer_article.php index ad895ef38eb0c84e818ff0b45a0a019e3ea05a1c..967e747695c6a0964f956cff5deab47733bdd240 100644 --- a/ecrire/inc/editer_article.php +++ b/ecrire/inc/editer_article.php @@ -78,7 +78,7 @@ function editer_article_texte($texte, $config, $aider, $lang='') if ($config['afficher_barre']) { include_spip('inc/barre'); $afficher_barre = '<div>' - . afficher_barre('document.formulaire.texte',false,$lang) + . afficher_barre("document.getElementById('text_area')",false,$lang) . '</div>'; } else $afficher_barre = ''; diff --git a/ecrire/public/debug.php b/ecrire/public/debug.php index c7eda1b71c95488b5ad0d728b57c6ad1c8da835c..53545f697f96c570d1cb2a3b7d230cf8089ce9a2 100644 --- a/ecrire/public/debug.php +++ b/ecrire/public/debug.php @@ -559,6 +559,11 @@ function emboite_texte($texte, $fonc='',$self='') $regs, PREG_SET_ORDER); + $colors = array('#e0e0f0', '#f8f8ff'); + $encore = count_occ($regs); + $encore2 = array(); + $fautifs = array(); + $err = '<tr><th>' . _T('numero') . "</th><th>" @@ -571,17 +576,7 @@ function emboite_texte($texte, $fonc='',$self='') . _T('erreur') . "</th></tr>"; - $fautifs = array(); $i = 0; - $encore = array(); - foreach($regs as $r) { - if (isset($encore[$r[1]])) - $encore[$r[1]]++; - else $encore[$r[1]] = 1; - } - $encore2 = array(); - $colors = array('#e0e0f0', '#f8f8ff'); - foreach($regs as $r) { $i++; list(,$msg, $ligne, $fin, $col) = $r; @@ -626,6 +621,16 @@ function emboite_texte($texte, $fonc='',$self='') } } +function count_occ($regs) +{ + $encore = array(); + foreach($regs as $r) { + if (isset($encore[$r[1]])) + $encore[$r[1]]++; + else $encore[$r[1]] = 1; + } + return $encore; +} // http://doc.spip.org/@trace_query_start function trace_query_start()