From 6fafc09b12aa40a0b06561cd932c665c2e5f8fdc Mon Sep 17 00:00:00 2001
From: "Committo,Ergo:sum" <esj@rezo.net>
Date: Mon, 25 Dec 2006 18:44:23 +0000
Subject: [PATCH] Scories xhmtl non strictes plus remplacement width -> style
 automatique quand c'est possible: {{{ for i in $(grep -l "<td width='.*%.*>"
 */*p) do 	sed "s/<td width='/<td style='width: /" $i > x; 	mv x
 $i; done }}}

---
 ecrire/exec/accueil.php                  |  6 +++---
 ecrire/exec/aide_index.php               |  4 ++--
 ecrire/exec/articles_edit.php            |  2 +-
 ecrire/exec/articles_forum.php           | 10 ++++------
 ecrire/exec/articles_versions.php        |  2 +-
 ecrire/exec/auteurs.php                  |  8 ++++----
 ecrire/exec/breves_edit.php              |  2 +-
 ecrire/exec/breves_voir.php              |  2 +-
 ecrire/exec/config_multilang.php         |  6 +++---
 ecrire/exec/controle_forum.php           |  2 +-
 ecrire/exec/forum_envoi.php              |  6 +++---
 ecrire/exec/mots_edit.php                |  2 +-
 ecrire/exec/mots_type.php                |  2 +-
 ecrire/exec/naviguer.php                 |  2 +-
 ecrire/exec/recherche.php                |  4 ++--
 ecrire/exec/rubriques_edit.php           |  8 ++------
 ecrire/exec/sites.php                    |  2 +-
 ecrire/exec/sites_edit.php               |  4 ++--
 ecrire/exec/statistiques_lang.php        |  4 ++--
 ecrire/exec/statistiques_repartition.php |  6 +++---
 ecrire/inc/editer_article.php            |  4 ++--
 ecrire/inc/referencer_traduction.php     | 12 ++++++------
 ecrire/inc/valider_xml.php               | 17 ++++++++++-------
 23 files changed, 57 insertions(+), 60 deletions(-)

diff --git a/ecrire/exec/accueil.php b/ecrire/exec/accueil.php
index de9064d31b..8b070209bb 100644
--- a/ecrire/exec/accueil.php
+++ b/ecrire/exec/accueil.php
@@ -200,14 +200,14 @@ if (/* $connect_statut == "0minirezo" AND */ $spip_display != 4) {
 		$cookie = rawurlencode("@$connect_login");
 		$gadget .= "<div>&nbsp;</div>".
 			"<table width='95%'><tr>".
-			"<td width='100%'>".
+			"<td style='width: 100%'>".
 			_T('info_activer_cookie').
 			aide ("cookie").
 			"</td>".
-			"<td width='10'>".
+			"<td style='width: 10px'>".
 			http_img_pack("rien.gif", ' ', "width='10'") .
 			"</td>".
-			"<td width='250'>".
+			"<td style='width: 250px'>".
 			icone_horizontale(_T('icone_activer_cookie'), generer_url_public('spip_cookie', "cookie_admin=$cookie&url=".rawurlencode(_DIR_RESTREINT_ABS)), "cookie-24.gif", "", false).
 			"</td></tr></table>";
 	}
diff --git a/ecrire/exec/aide_index.php b/ecrire/exec/aide_index.php
index 3e71d75032..fb34eea1b1 100644
--- a/ecrire/exec/aide_index.php
+++ b/ecrire/exec/aide_index.php
@@ -184,8 +184,8 @@ function help_body($aide, $html, $lang_aide='') {
 
 	if ($aide == 'spip') {
 		echo '<table border="0" width="100%" height="60%">
-<tr width="100%" height="60%">
-<td width="100%" height="60%" align="center" valign="middle">
+<tr style="width: 100%" height="60%">
+<td style="width: 100%" height="60%" align="center" valign="middle">
 <center>
 <img src="', generer_url_ecrire("aide_index", "img=AIDE--logo-spip.gif", false, true),
 		  '" alt="SPIP" width="300" height="170" border="0" />
diff --git a/ecrire/exec/articles_edit.php b/ecrire/exec/articles_edit.php
index 24ff95f421..ba20c3298a 100644
--- a/ecrire/exec/articles_edit.php
+++ b/ecrire/exec/articles_edit.php
@@ -122,7 +122,7 @@ function articles_edit_presentation($new, $id_rubrique, $lier_trad, $id_article,
 		"<img src='" .
 	  	_DIR_IMG_PACK .	"rien.gif' width='10' alt='' />" .
 		"</td>\n" .
-		"<td width='100%'>" .
+		"<td style='width: 100%'>" .
 	 	_T('texte_modifier_article') .
 		gros_titre($titre,'',false) . 
 		"</td></tr></table><hr />\n";
diff --git a/ecrire/exec/articles_forum.php b/ecrire/exec/articles_forum.php
index 213c2b0b9d..e8a7561229 100644
--- a/ecrire/exec/articles_forum.php
+++ b/ecrire/exec/articles_forum.php
@@ -80,11 +80,10 @@ function articles_forum_cadres($id_rubrique, $id_article, $titre, $script, $args
 
 	debut_boite_info();
 
-	echo "<p align='left'>",
-	  "<font FACE='Verdana,Arial,Sans,sans-serif' SIZE='2'>",
+	echo "<p style='text-align: left: font-family: Verdana,Arial,Sans,sans-serif; font-size: 11px'>",
 	  _T('info_gauche_suivi_forum'),
 	  aide ("suiviforum"),
-	  "</font></p>";
+	  "</p>";
 
 	echo "<div style='text-align: "
 	  . $GLOBALS['spip_lang_right']
@@ -100,17 +99,16 @@ function articles_forum_cadres($id_rubrique, $id_article, $titre, $script, $args
 	debut_droite();
 
 	echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
-	echo "<tr width='100%'>";
+	echo "<tr>";
 	echo "<td>";
 	icone(_T('icone_retour'),
 		generer_url_ecrire($script, $args),
 		"article-24.gif", "rien.gif");
 	echo "</td>";
 	echo "<td>" . http_img_pack('rien.gif', " ", "width='10'") ."</td>\n";
-	echo "<td width='100%'>";
+	echo "<td style='width: 100%'>";
 	echo _T('texte_messages_publics');
 	gros_titre($titre);
 	echo "</td></tr></table>";
-	echo "<p>";
 }
 ?>
diff --git a/ecrire/exec/articles_versions.php b/ecrire/exec/articles_versions.php
index 693ec02ea6..5868c65b57 100644
--- a/ecrire/exec/articles_versions.php
+++ b/ecrire/exec/articles_versions.php
@@ -165,7 +165,7 @@ else if ($statut_article == 'poubelle') {
 
 
 echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
-echo "<tr><td width='100%' valign='top'>";
+echo "<tr><td style='width: 100%' valign='top'>";
 if ($surtitre) {
 	echo "<span $dir_lang><font face='arial,helvetica' size='3'><b>";
 	echo propre_diff($surtitre);
diff --git a/ecrire/exec/auteurs.php b/ecrire/exec/auteurs.php
index 11571213bf..0265e3de0d 100644
--- a/ecrire/exec/auteurs.php
+++ b/ecrire/exec/auteurs.php
@@ -138,7 +138,7 @@ function auteurs_tranches($auteurs, $debut, $lettre, $tri, $statut, $max_par_pag
 	global $options, $spip_lang_right;
 
 	$res ="\n<tr bgcolor='#DBE1C5'>"
-	. "\n<td width='20'>";
+	. "\n<td style='width: 20px'>";
 
 	if ($tri=='statut')
   		$res .= http_img_pack('admin-12.gif','', "border='0'");
@@ -147,7 +147,7 @@ function auteurs_tranches($auteurs, $debut, $lettre, $tri, $statut, $max_par_pag
 	  $res .= auteurs_href(http_img_pack('admin-12.gif', $t, "border='0'"),'tri=statut', " title=\"$t\"");
 	}
 
-	$res .= "</td><td width='20'></td><td colspan='2'>";
+	$res .= "</td><td style='width: 20px'></td><td colspan='2'>";
 
 	if ($tri == '' OR $tri=='nom')
 		$res .= '<b>'._T('info_nom').'</b>';
@@ -199,7 +199,7 @@ function auteurs_tranches($auteurs, $debut, $lettre, $tri, $statut, $max_par_pag
 	$nav = '';
 	$debut_suivant = $debut + $max_par_page;
 	if ($debut_suivant < $nombre_auteurs OR $debut > 0) {
-		$nav = "\n<table id='bas' width='100%' border='0'>"
+		$nav = "\n<table id='bas' style='width: 100%' border='0'>"
 		. "\n<tr bgcolor='white'><td align='left'>";
 
 		if ($debut > 0) {
@@ -214,7 +214,7 @@ function auteurs_tranches($auteurs, $debut, $lettre, $tri, $statut, $max_par_pag
 	}
 
 	return 	debut_cadre_relief('auteur-24.gif',true)
-	. "\n<table border='0' cellpadding='2' cellspacing='0' width='100%' class='arial2' style='border: 1px solid #aaaaaa;'>\n"
+	. "\n<table  class='arial2' border='0' cellpadding='2' cellspacing='0' style='width: 100%; border: 1px solid #aaaaaa;'>\n"
 	. $res
 	. $auteurs
 	. "</table>\n<br />"
diff --git a/ecrire/exec/breves_edit.php b/ecrire/exec/breves_edit.php
index db0e54ab68..da0d4d14ba 100644
--- a/ecrire/exec/breves_edit.php
+++ b/ecrire/exec/breves_edit.php
@@ -89,7 +89,7 @@ if ($new != "oui") {
 	
 	echo "</td>";
 	echo "\n<td>", http_img_pack("rien.gif", ' ', "width='10'"), "</td>\n";
-	echo "<td width='100%'>";
+	echo "<td style='width: 100%'>";
 	echo _T('info_modifier_breve');
 	gros_titre($titre);
 	echo "</td></tr></table><br />";
diff --git a/ecrire/exec/breves_voir.php b/ecrire/exec/breves_voir.php
index 37a54df684..76f863c4da 100644
--- a/ecrire/exec/breves_voir.php
+++ b/ecrire/exec/breves_voir.php
@@ -118,7 +118,7 @@ function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe)
 	echo "<tr><td class='serif'>";
 
 	echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
-	echo "<tr><td width='100%' valign='top'>";
+	echo "<tr><td style='width: 100%' valign='top'>";
 	gros_titre($titre);
 	echo "</td>";
 
diff --git a/ecrire/exec/config_multilang.php b/ecrire/exec/config_multilang.php
index 317dd18c01..1abcc3d57c 100644
--- a/ecrire/exec/config_multilang.php
+++ b/ecrire/exec/config_multilang.php
@@ -136,7 +136,7 @@ fin_cadre_couleur();
 			$langues_bloquees[$l] = true;
 		}
 
-		echo "\n<table width='100%' cellspacing='10'><tr><td width='50%'  class='verdana1'>";
+		echo "\n<table width='100%' cellspacing='10'><tr><td style='width: 50%'  class='verdana1'>";
 
 		while (list($code_langue) = each($langues_bloquees)) {
 			$i++;
@@ -149,7 +149,7 @@ fin_cadre_couleur();
 			echo  "\n$nom_langue\n&nbsp; &nbsp;<font color='#777777'>[$code_langue]</font>";
 			echo "</div>";
 
-			if ($i == $cesure) echo "\n</td><td width='50%' class='verdana1'>";
+			if ($i == $cesure) echo "\n</td><td style='width: 50%' class='verdana1'>";
 		}
 
 		echo "\n<div>&nbsp;</div>";
@@ -171,7 +171,7 @@ fin_cadre_couleur();
 
 			echo "</div>";
 
-			if ($i == $cesure) echo "</td><td width='50%' class='verdana1'>";
+			if ($i == $cesure) echo "</td><td style='width: 50%' class='verdana1'>";
 		}
 
 		echo "</td></tr>";
diff --git a/ecrire/exec/controle_forum.php b/ecrire/exec/controle_forum.php
index 3bdad3b68d..85622280e1 100644
--- a/ecrire/exec/controle_forum.php
+++ b/ecrire/exec/controle_forum.php
@@ -148,7 +148,7 @@ function controle_un_forum($row) {
 		$controle .= "<div>";
 	}
 	
-	$controle .= "<table width='100%' cellpadding='0' cellspacing='0' border='0'>\n<tr><td width='100%' valign='top'><table width='100%' cellpadding='5' cellspacing='0'>\n<tr><td class='serif'><span class='arial2'>" .
+	$controle .= "<table width='100%' cellpadding='0' cellspacing='0' border='0'>\n<tr><td style='width: 100%' valign='top'><table width='100%' cellpadding='5' cellspacing='0'>\n<tr><td class='serif'><span class='arial2'>" .
 	  date_interface($forum_date_heure) .
 	  "</span>";
 	if ($forum_email_auteur) {
diff --git a/ecrire/exec/forum_envoi.php b/ecrire/exec/forum_envoi.php
index ccded7b42e..c88344c086 100644
--- a/ecrire/exec/forum_envoi.php
+++ b/ecrire/exec/forum_envoi.php
@@ -183,7 +183,7 @@ function forum_envoi_formulaire($id, $objet, $script, $statut, $texte, $titre_pa
 	  ."</td>"
 	  ."\n<td><img src='"
 	  . _DIR_IMG_PACK
-	  . "rien.gif' width='10' border='0' alt=''/></td><td width=\"100%\">"
+	  . "rien.gif' width='10' border='0' alt=''/></td><td style='width: 100%'>"
 	  ."<b><label for='titre_message'>"
 	  . _T('info_titre')
 	  ."</label></b><br />\n"
@@ -231,7 +231,7 @@ function forum_envoi_entete($parent, $titre_parent, $texte, $titre_texte, $nom_s
 		. (!$parent ? '' : "<tr><td colspan='2'>$parent</td></tr>")
 		. "\n<tr>"
 		. (!$parent ? "<td colsan='2'"
-			: (" <td width='10' height='13' valign='top' background='"
+			: (" <td style='width: 10px' height='13' valign='top' background='"
 			   . _DIR_IMG_PACK
 			   . "forum-vert.gif'" 
 			   . ">"
@@ -248,7 +248,7 @@ function forum_envoi_entete($parent, $titre_parent, $texte, $titre_texte, $nom_s
 		. "</td>"
 		. "</tr>\n"
 		. (!$parent ? ''
-			: ("<tr><td width='10' valign='top' background='"
+			: ("<tr><td style='width: 10px' valign='top' background='"
 			  . _DIR_IMG_PACK
 			  . "rien.gif'>"
 			  .  http_img_pack("forum-droite$spip_lang_rtl.gif", $titre_parent, "width='10' height='13' border='0'")
diff --git a/ecrire/exec/mots_edit.php b/ecrire/exec/mots_edit.php
index 0284e3baa2..f253f5c51a 100644
--- a/ecrire/exec/mots_edit.php
+++ b/ecrire/exec/mots_edit.php
@@ -135,7 +135,7 @@ global
 
 	echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
 	echo "<tr>";
-	echo "<td width='100%' valign='top'>";
+	echo "<td style='width: 100%' valign='top'>";
 	gros_titre($titre_mot);
 
 
diff --git a/ecrire/exec/mots_type.php b/ecrire/exec/mots_type.php
index b5df9bfc35..79ff4d0857 100644
--- a/ecrire/exec/mots_type.php
+++ b/ecrire/exec/mots_type.php
@@ -96,7 +96,7 @@ function exec_mots_type_dist()
 	. icone(_T('icone_retour'), generer_url_ecrire("mots_tous",""), "mot-cle-24.gif", "rien.gif",'', false)
 	. "</td>"
 	. "<td>". http_img_pack('rien.gif', " ", "width='5'") . "</td>\n"
-	. "<td width='100%' valign='top'>"
+	. "<td style='width: 100%' valign='top'>"
 	. "<font face='Verdana,Arial,Sans,sans-serif' size='1'><b>"
 	. _T('titre_groupe_mots')
 	. "</b></font><br />"
diff --git a/ecrire/exec/naviguer.php b/ecrire/exec/naviguer.php
index 722e1a19a9..319436ac50 100644
--- a/ecrire/exec/naviguer.php
+++ b/ecrire/exec/naviguer.php
@@ -411,7 +411,7 @@ function montre_naviguer($id_rubrique, $titre, $descriptif, $logo, $flag_editabl
   global $spip_lang_right, $spip_lang_left;
 
   echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
-  echo "<tr><td width='100%' valign='top'>";
+  echo "<tr><td style='width: 100%' valign='top'>";
   gros_titre((!acces_restreint_rubrique($id_rubrique) ? '' :
 		http_img_pack("admin-12.gif",'', "width='12' height='12'",
 			      _T('info_administrer_rubrique'))) .
diff --git a/ecrire/exec/recherche.php b/ecrire/exec/recherche.php
index 9dfc3fa7f4..2bd3289847 100644
--- a/ecrire/exec/recherche.php
+++ b/ecrire/exec/recherche.php
@@ -157,9 +157,9 @@ function afficher_auteurs ($titre_table, $requete) {
 
 	if ($titre_table) {
 			echo "<p><table width='100%' cellpadding='0' cellspacing='0' border='0'>";
-			echo "<tr><td width='100%'>";
+			echo "<tr><td style='width: 100%'>";
 			echo "<table width='100%' cellpadding='3' cellspacing='0' border='0'>";
-			echo "<tr bgcolor='#333333'><td width='100%' colspan='5'><font face='Verdana,Arial,Sans,sans-serif' size='3' color='#FFFFFF'>";
+			echo "<tr bgcolor='#333333'><td style='width: 100%' colspan='5'><font face='Verdana,Arial,Sans,sans-serif' size='3' color='#FFFFFF'>";
 			echo "<b>$titre_table</b></font></td></tr>";
 		}
 	else {
diff --git a/ecrire/exec/rubriques_edit.php b/ecrire/exec/rubriques_edit.php
index 480dfbeac6..3f94120d6c 100644
--- a/ecrire/exec/rubriques_edit.php
+++ b/ecrire/exec/rubriques_edit.php
@@ -120,7 +120,7 @@ function exec_rubriques_edit_dist()
 
 	echo "</td>";
 	echo "<td>". http_img_pack('rien.gif', " ", "width='10'") . "</td>\n";
-	echo "<td width='100%'>";
+	echo "<td style='width: 100%'>";
 	echo _T('info_modifier_rubrique');
 	gros_titre($titre);
 	echo "</td></tr></table>";
@@ -176,11 +176,7 @@ function exec_rubriques_edit_dist()
 	. _T('bouton_enregistrer')
 	. "' class='fondo' />\n</p>";
 
-	$retour = generer_url_ecrire("naviguer");
-
-	if (!$arg = intval($id_rubrique)) $arg='oui';
-
-	echo generer_action_auteur("editer_rubrique", $arg, $retour, $form, " method='post'");
+	echo redirige_action_auteur("editer_rubrique", $arg ? $arg : 'oui', 'naviguer', '', $form, " method='post'");
 
 	fin_cadre_formulaire();
 
diff --git a/ecrire/exec/sites.php b/ecrire/exec/sites.php
index 271fc47021..368281dad8 100644
--- a/ecrire/exec/sites.php
+++ b/ecrire/exec/sites.php
@@ -176,7 +176,7 @@ else if ($statut == 'refuse') {
 }
 
 echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
-echo "<tr><td width='100%' valign='top'>";
+echo "<tr><td style='width: 100%' valign='top'>";
 	gros_titre($nom_site, $logo_statut);
 
 $url_affichee = $url_site;
diff --git a/ecrire/exec/sites_edit.php b/ecrire/exec/sites_edit.php
index d58e70176c..133a171fa7 100644
--- a/ecrire/exec/sites_edit.php
+++ b/ecrire/exec/sites_edit.php
@@ -67,7 +67,7 @@ if ($new != 'oui') {
 	echo "</td>";
 	echo "<td>". http_img_pack('rien.gif', " ", "width='10'") . "</td>\n";
 }
-echo "<td width='100%'>";
+echo "<td style='width: 100%'>";
 echo _T('titre_referencer_site');
 gros_titre($nom_site);
 echo "</td></tr></table>";
@@ -167,7 +167,7 @@ if ($activer_syndic != "non") {
 	$form .= aide("rubsyn");
 
 
-	$form .= "<table cellpadding='0' cellspacing='0' border='0' width='100%'><tr><td width='50'>&nbsp;</td><td>";
+	$form .= "<table cellpadding='0' cellspacing='0' border='0' width='100%'><tr><td style='width: 50'>&nbsp;</td><td>";
 
 	if (strlen($url_syndic) < 8) $url_syndic = "http://";
 	$form .= _T('entree_adresse_fichier_syndication');
diff --git a/ecrire/exec/statistiques_lang.php b/ecrire/exec/statistiques_lang.php
index 8c31d482c1..8bea559ee4 100644
--- a/ecrire/exec/statistiques_lang.php
+++ b/ecrire/exec/statistiques_lang.php
@@ -28,7 +28,7 @@ function exec_statistiques_lang_dist()
 		$largeur_table = 750;
 	}
 	$taille = $largeur_table - 200;	
-	echo "<center><table width='$largeur_table'><tr><td width='$largeur_table' class='verdana2'>";
+	echo "<center><table width='$largeur_table'><tr><td style='width: $largeur_table" . "px;' class='verdana2'>";
 	echo "<br /><br />";
 	echo "<center>";
 	gros_titre(_T('onglet_repartition_lang'));
@@ -90,7 +90,7 @@ function exec_statistiques_lang_dist()
 	
 				echo "\n<tr bgcolor='$couleur'>";
 				$dir=lang_dir($lang,'',' dir=rtl');
-				echo "<td width='100%' style='border-bottom: 1px solid #cccccc;'><span class='verdana2'$dir><span style='float: $spip_lang_right;'>$pourcent%</span>".traduire_nom_langue($lang)."</span></td>";
+				echo "<td style='width: 100%; border-bottom: 1px solid #cccccc;'><span class='verdana2'$dir><span style='float: $spip_lang_right;'>$pourcent%</span>".traduire_nom_langue($lang)."</span></td>";
 				
 				echo "<td style='border-bottom: 1px solid #cccccc;'>";
 				echo "\n<table cellpadding='0' cellspacing='0' border='0' width='".($taille+5)."'>";
diff --git a/ecrire/exec/statistiques_repartition.php b/ecrire/exec/statistiques_repartition.php
index e08ddeecdb..c0012d1cf8 100644
--- a/ecrire/exec/statistiques_repartition.php
+++ b/ecrire/exec/statistiques_repartition.php
@@ -95,12 +95,12 @@ function enfants_aff($id_parent,$decalage, $critere, $gauche=0) {
 				
 				
 				echo "</span>";
-				echo "</td>\n<td align='right' width='".($taille+5)."' style='border-bottom: 1px solid #aaaaaa;'>";
+				echo "</td>\n<td align='right' style='border-bottom: 1px solid #aaaaaa; width:" . ($taille+5) ."px'>";
 				
 				
 				echo "\n<table cellpadding='0' cellspacing='0' border='0' width='".($decalage+1+$gauche)."'>";
 				echo "\n<tr>";
-				if ($gauche > 0) echo "<td width='".$gauche."'></td>";
+				if ($gauche > 0) echo "<td style='width: " .$gauche."px'></td>";
 				echo "\n<td style='background-color: #eeeeee; border: 1px solid #999999; white-space: nowrap;'>";
 				if ($visites_abs > 0) echo "<img src='" . _DIR_IMG_PACK . "rien.gif' width='".$visites_abs."' height='8' border='0' alt= ' '/>";
 				if ($largeur_rouge>0) echo "<img src='" . _DIR_IMG_PACK . "rien.gif' style='background-color: $couleur_foncee;' width='$largeur_rouge' height='8' border='0' alt=' ' />";
@@ -145,7 +145,7 @@ function exec_statistiques_repartition_dist()
 		$taille = 400;
 	}
 
-	echo "\n<br /><br /><center><table width='$largeur_table'><tr><td width='$largeur_table' class='verdana2' style='text-align: center'>";
+	echo "\n<br /><br /><center><table width='$largeur_table'><tr><td class='verdana2' style='text-align: center;  width: $largeur_table" . "px;'>";
 	gros_titre(_T('titre_page_statistiques'));
 
 	if ($critere == "debut") {
diff --git a/ecrire/inc/editer_article.php b/ecrire/inc/editer_article.php
index cecacce854..503a023e17 100644
--- a/ecrire/inc/editer_article.php
+++ b/ecrire/inc/editer_article.php
@@ -270,8 +270,8 @@ function editer_article_chapo($chapo, $config, $aider)
 			$aider ("artvirt") .
 			"</font>" .
 			"</td>" .
-			"<td width='10'>&nbsp;</td>" .
-			"<td valign='top' width='50%'>" .
+			"<td style='width: 10px'>&nbsp;</td>" .
+			"<td valign='top' style='width: 50%'>" .
 			"<input type='text' name='virtuel' class='forml'
 		style='font-size:9px;' value=\"$virtuel\" size='40' />" .
 			"<input type='hidden' name='changer_virtuel' value='oui' />" .
diff --git a/ecrire/inc/referencer_traduction.php b/ecrire/inc/referencer_traduction.php
index ebe6adcc05..67a9a778af 100644
--- a/ecrire/inc/referencer_traduction.php
+++ b/ecrire/inc/referencer_traduction.php
@@ -92,9 +92,9 @@ function inc_referencer_traduction_dist($id_article, $flag, $id_rubrique, $id_tr
 				(_T('trad_lier') .
 				 "\n<input type='text' class='fondl' name='lier_trad' size='5' />\n<input type='submit' value='"._T('bouton_valider')."' class='fondl' />"))
 		. "</td>\n"
-		. "<td width='10'> &nbsp; </td>"
-		. "<td style='background: url(" . _DIR_IMG_PACK . "tirets-separation.gif)' width='2'>". http_img_pack('rien.gif', " ", "width='2' height='2'") . "</td>"
-		. "<td width='10'> &nbsp; </td>";
+		. "<td style='width: 10px'> &nbsp; </td>"
+		. "<td style='width: 2px; background: url(" . _DIR_IMG_PACK . "tirets-separation.gif)'>". http_img_pack('rien.gif', " ", "width='2' height='2'") . "</td>"
+		. "<td style='width: 10px'> &nbsp; </td>";
 	}
 
 	$form .= "<td>"
@@ -103,9 +103,9 @@ function inc_referencer_traduction_dist($id_article, $flag, $id_rubrique, $id_tr
 
 	if ($flag AND $options == "avancees" AND $table) {
 		$clic = _T('trad_delier');
-		$form .= "<td width='10'> &nbsp; </td>"
-		. "<td style='background: url(" . _DIR_IMG_PACK . "tirets-separation.gif)' width='2'>". http_img_pack('rien.gif', " ", "width='2' height='2'") . "</td>"
-		. "<td width='10'> &nbsp; </td>"
+		$form .= "<td style='width: 10px'> &nbsp; </td>"
+		. "<td style='width: 2px; background: url(" . _DIR_IMG_PACK . "tirets-separation.gif)'>". http_img_pack('rien.gif', " ", "width='2' height='2'") . "</td>"
+		. "<td style='width: 10px'> &nbsp; </td>"
 		. "<td>"
 		  // la 1ere occurrence de clic ne sert pas en Ajax
 		. icone_horizontale($clic, ajax_action_auteur("referencer_traduction","$id_article,-$id_trad",'articles', "id_article=$id_article",array($clic)), "traductions-24.gif", "supprimer.gif", false)
diff --git a/ecrire/inc/valider_xml.php b/ecrire/inc/valider_xml.php
index 808ae9d040..a2774a7b3c 100644
--- a/ecrire/inc/valider_xml.php
+++ b/ecrire/inc/valider_xml.php
@@ -61,6 +61,8 @@ function charger_dtd($data)
 function analyser_dtd($grammaire, $avail, &$dtc)
 {
 
+	static $trace = array(); // pour debug
+
 	$dtd = '';
 	if ($avail == 'SYSTEM')
 	  $file = $grammaire;
@@ -89,10 +91,12 @@ function analyser_dtd($grammaire, $avail, &$dtc)
 	if (preg_match_all('/<!ENTITY\s+(%?)\s*([.\w]+)\s+(PUBLIC|SYSTEM)?\s*"([^"]*)"\s*("([^"]*)")?\s*>/', $dtd, $r, PREG_SET_ORDER)) {
 		foreach($r as $m) {
 		  list($t, $term, $nom, $type, $val, $q, $alt) = $m;
-		  if ($type) {
-		    $dir = preg_replace(',/[^/]+$,', '/', $grammaire);
+		  if ($type AND $alt) {
+		    // valeur par defaut de $alt obscure. A etudier.
+			$dir = preg_replace(',/[^/]+$,', '/', $grammaire)
+			. ($alt ? $alt : "loose.dtd")  ;
 		    // en cas d'inclusion, l'espace de nom est le meme
-		    analyser_dtd($dir . $alt, $type, $dtc);
+		    analyser_dtd($dir, $type, $dtc);
 		  }
 		  elseif (!$term) {
 		    $dtc->entites[$nom] = $val;
@@ -123,7 +127,6 @@ function analyser_dtd($grammaire, $avail, &$dtc)
 	  } 
 	}
 
-	$res2 = array();
 
 	if (preg_match_all('/<!ATTLIST\s+(\S+)\s+([^>]*)>/', $dtd, $r, PREG_SET_ORDER)) {
 	  foreach($r as $m) {
@@ -134,7 +137,7 @@ function analyser_dtd($grammaire, $avail, &$dtc)
 		foreach($r2 as $m2) {
 			$v = preg_match('/^\w+$/', $m2[2]) ? $m2[2]
 			  : ('/^' . preg_replace('/\s+/', '', $m2[2]) . '$/');
-			$res2[$v] = 1;
+			$trace[$v] = 1;
 			$att[$m2[1]] = array($v, $m2[5]);
 		}
 	    }
@@ -143,9 +146,9 @@ function analyser_dtd($grammaire, $avail, &$dtc)
 	}
 
 	// pour voir la liste des regep d'attributs:
-#	echo join('<br />', array_keys($res2));exit;
+#	echo join('<br />', array_keys($trace));exit;
 
-	spip_log("DTD $avail $grammaire ". strlen($dtd) . ' octets ' . count($dtc->macros)  . ' macros, ' . count($dtc->elements)  . ' elements, ' . count($res2) . " types différents d'attributs " . count($dtc->entites) . " entites");
+	spip_log("DTD $avail $grammaire ". strlen($dtd) . ' octets ' . count($dtc->macros)  . ' macros, ' . count($dtc->elements)  . ' elements, ' . count($trace) . " types différents d'attributs " . count($dtc->entites) . " entites");
 }
 
 // http://doc.spip.org/@expanserEntite
-- 
GitLab