diff --git a/.gitattributes b/.gitattributes
index 8a58abc576c285e92be33e80d34727ebe64d9357..61e78f8623e944967e389341fb67eb6e1b0ec0e0 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -129,6 +129,7 @@ ecrire/img_pack/documents-48_rtl.png -text
 ecrire/img_pack/edit.gif -text
 ecrire/img_pack/effacer-cache-24.gif -text
 ecrire/img_pack/favicon.ico -text
+ecrire/img_pack/feed.png -text
 ecrire/img_pack/fiche-perso-24.gif -text
 ecrire/img_pack/fiche-perso.png -text
 ecrire/img_pack/fleche-left.png -text
diff --git a/ecrire/exec_spip_action_joindre.php b/ecrire/exec_spip_action_joindre.php
index 66ff61566b5d4775288a73caf083c0c0bfd07d08..194c4ed95b3aad087084e59781ba98998c6ef6e9 100644
--- a/ecrire/exec_spip_action_joindre.php
+++ b/ecrire/exec_spip_action_joindre.php
@@ -22,7 +22,7 @@ function spip_action_joindre_dist()
     $sousaction1,
     $sousaction2,
     $sousaction3,
-    $sousaction4,
+#    $sousaction4,  # sousaction4 = code mort a supprimer
     $sousaction5,
     $url, $chemin, $ancre, $type, $id, $id_document,
     $_FILES,  $HTTP_POST_FILES;
@@ -119,6 +119,7 @@ function spip_action_joindre3($arg, $mode, $type, $id, $id_document,$hash, $id_a
 			     $hash, $id_auteur, $redirect, $actifs);
 }
 
+/* code mort cf. sousaction4
 //  identifie les repertoires de upload aux rubriques Spip
 
 function spip_action_joindre4($arg, $mode, $type, $id, $id_document, $hash, $id_auteur, $redirect, &$documents_actifs)
@@ -128,7 +129,7 @@ function spip_action_joindre4($arg, $mode, $type, $id, $id_document, $hash, $id_
 	identifie_repertoire_et_rubrique($upload, $id, $id_auteur);
 	include_ecrire("inc_rubriques");
 	calculer_rubriques();
-}
+} */
 
 //  Zip avec confirmation "tel quel"
 
diff --git a/ecrire/img_pack/feed.png b/ecrire/img_pack/feed.png
new file mode 100644
index 0000000000000000000000000000000000000000..eb47e1902070416f2c700bf7dd4e58d1c0f318ed
Binary files /dev/null and b/ecrire/img_pack/feed.png differ
diff --git a/ecrire/inc_documents.php b/ecrire/inc_documents.php
index 16aa2e04f067a561e3606cec7978b7d1a752e5a0..9f46dd162fdccb889015f8a5a188c5bdf7e5b707 100644
--- a/ecrire/inc_documents.php
+++ b/ecrire/inc_documents.php
@@ -439,7 +439,7 @@ function texte_upload_manuel($dir, $inclus = '') {
 	$exts = array();
 	$dirs = array();
 	foreach ($fichiers as $f) {
-		$f = ereg_replace("^$dir/","",$f);
+		$f = preg_replace(",^$dir,",'',$f);
 		if (ereg("\.([^.]+)$", $f, $match)) {
 			$ext = strtolower($match[1]);
 			if (!$exts[$ext]) {
@@ -615,24 +615,17 @@ function afficher_transferer_upload($type, $texte_upload)
 	else {  return
 		"<p><div style='color: #505050;'>\n"
 		._T('info_selectionner_fichier',
-			  array('upload' => '<b>' . _DIR_TRANSFERT . '</b>'))
+			array('upload' => '<b>' . _DIR_TRANSFERT . '</b>'))
 		."&nbsp;:<br />" .
 		"\n<select name='chemin' size='1' class='fondl'>" .
 		$texte_upload .
-	  	"\n</select>" .
-		(($type != 'rubrique') ? "" :  ("<br />". _L("et choisir le mode de transfert:"))) .
+		"\n</select>" .
 		"\n<div align='".
 		$GLOBALS['spip_lang_right'] .
 		"'><input name='sousaction3' type='Submit' value='" .
-		_L('recopier').
+		_T('bouton_choisir').
 		"' class='fondo'></div>" .
-		(($type != 'rubrique') ? "" :
-		    ("\n<div align='".
-				$GLOBALS['spip_lang_right'] .
-				"'><input name='sousaction4' type='Submit' value='" .
-				_L('identifier repertoires et rubriques').
-		     "' class='fondo'></div>")) .
-	    	"</div>\n";
+		"</div>\n";
 	}
 }
 
diff --git a/ecrire/inc_getdocument.php b/ecrire/inc_getdocument.php
index e354dcc28935e338655998ac9d37b425c1b814ec..cc0f99dc2ebb9ab1d17de0328c31d8368a4ff077 100644
--- a/ecrire/inc_getdocument.php
+++ b/ecrire/inc_getdocument.php
@@ -452,7 +452,7 @@ function examiner_les_fichiers($files, $mode, $type, $id, $id_document, $hash, $
 	}
 }
 
-
+/* code mort cf sousaction4
 function identifie_repertoire_et_rubrique($DIR, $id_rubrique, $id_auteur, $art=0)
 {
   static $exts = array();
@@ -564,7 +564,7 @@ WHERE id_rubrique=$id_rubrique");
   return $collecte;
  
 }
-
+*/
 
 //
 // Convertit le type numerique retourne par getimagesize() en extension fichier
diff --git a/ecrire/inc_utils.php b/ecrire/inc_utils.php
index 4d0b480aa8476047579e2e62ce48e9bca27fde45..ffddbe198478d63c20bd167cefc80bcf3dab929d 100644
--- a/ecrire/inc_utils.php
+++ b/ecrire/inc_utils.php
@@ -653,6 +653,13 @@ function charger_generer_url() {
 		// sinon fichier inc-urls-xxx
 		OR include_local(_DIR_RACINE."inc-urls-".$GLOBALS['type_urls']);
 	}
+
+	if (!function_exists('generer_url_special')) {
+		function generer_url_special($special, $args='') {
+			return _DIR_RACINE . "page.php3?fond=$special".
+				($args ? '&'.$args : '');
+		}
+	}
 }