diff --git a/dist/inc-petition.html b/dist/inc-petition.html
index c9719ca259c772c56b1bdf56012afa241f22e186..e46348b7f4bb3c0e8a9e142af9c0ffb8df7e9b12 100644
--- a/dist/inc-petition.html
+++ b/dist/inc-petition.html
@@ -23,7 +23,7 @@
 	{recherche ?#ENV{cherche_signature}}
 	{!par #ENV{tri}}{par #ENV{tri_inverse}}
 	{!par #ENV{tri,#ENV{tri_inverse}}|?{'',date_time}}>
-		<tr>
+		<tr id='id_signature#ID_SIGNATURE'>
 		<td class="signature-date">[(#DATE|affdate_jourcourt)]</td>
 		<td class="signature-nom"><div class="#EDIT{qui}">#NOM</div>[
 		<div class="#EDIT{hyperlien}"><a href="(#URL_SITE)" class="spip_out" style="font-size: small;">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></div>]</td>
diff --git a/ecrire/exec/controle_petition.php b/ecrire/exec/controle_petition.php
index d7e42cfad154efeb015daf5362b5c6a420a1187b..a4cb241978e3f7d4c9a5a2854f5c09fca2c27f7a 100644
--- a/ecrire/exec/controle_petition.php
+++ b/ecrire/exec/controle_petition.php
@@ -17,15 +17,22 @@ function exec_controle_petition_dist()
 {
 	exec_controle_petition_args(intval(_request('id_article')),
 				    _request('type'),
-				    intval(_request('debut')));
+				    intval(_request('debut')),
+				    intval(_request('id_signature')));
 }
 
-function exec_controle_petition_args($id_article, $type, $debut)
+function exec_controle_petition_args($id_article, $type, $debut, $id_signature)
 {
 	include_spip('inc/presentation');
 
 	$titre =' ';
 	$statut='new';
+	$where = '';
+	if ($id_signature) {
+		$id_article = sql_getfetsel("id_article", "spip_signatures", "id_signature=$id_signature");
+		if ($id_article)
+			$where = '(id_signature=' . sql_quote($id_signature) . ') AND ';
+	}
 	if ($id_article) {
 		if ($row = sql_fetsel("titre,statut", "spip_articles", "id_article=$id_article"));
 		if (!$row)
@@ -50,7 +57,7 @@ function exec_controle_petition_args($id_article, $type, $debut)
 		$r = $signatures('controle_petition',
 			$id_article,
 			$debut, 
-			"(statut='publie' OR statut='poubelle')",
+			$where . "(statut='publie' OR statut='poubelle')",
 			"date_time DESC",
 			 10,
 			 $type);
diff --git a/ecrire/inc/afficher_objets.php b/ecrire/inc/afficher_objets.php
index acce2034e20291d8d4fd701c71b38217b8e3dbd0..79183d62cd913e2991bc0a6701ddf347cd39f85d 100644
--- a/ecrire/inc/afficher_objets.php
+++ b/ecrire/inc/afficher_objets.php
@@ -28,7 +28,7 @@ function lien_editer_objet($type,$key,$id){
 // http://doc.spip.org/@lien_voir_objet
 function lien_voir_objet($type,$key,$id){
 	if ($type == 'document') return generer_url_document($id);
-	$exec = array('article'=>'articles','breve'=>'breves_voir','rubrique'=>'naviguer','mot'=>'mots_edit');
+	$exec = array('article'=>'articles','breve'=>'breves_voir','rubrique'=>'naviguer','mot'=>'mots_edit', 'signature'=>'controle_petition');
 	$exec = isset($exec[$type])?$exec[$type]:$type . "s";
 	return generer_url_ecrire($exec,"$key=$id");
 }
@@ -89,8 +89,11 @@ function afficher_numero_edit($id, $key, $type,$row=NULL) {
 function afficher_titre_objet($type,$row){
 	if (function_exists($f = "afficher_titre_$type"))
 		return $f($row);
+
 	$titre = isset($row['titre'])?sinon($row['titre'], _T('ecrire:info_sans_titre')):
-	  (isset($row['nom'])?sinon($row['nom'], _T('ecrire:info_sans_titre')):"");
+	(isset($row['nom'])?sinon($row['nom'], _T('ecrire:info_sans_titre')):
+	 (isset($row['nom_email'])?sinon($row['nom_email'], _T('ecrire:info_sans_titre')):
+	  ""));
 	return array(typo(supprime_img($titre,'')),'');
 }
 // http://doc.spip.org/@afficher_titre_site