Valider ad22a825 rédigé par esj's avatar esj
Parcourir les fichiers

Poursuite de l'autonomisation des formulaires présents dans exec/articles (cf...

Poursuite de l'autonomisation des formulaires présents dans exec/articles (cf [6934] et [6931]): le retrait, l'ajout et la recherche d'auteurs.

Deux suites à donner:

- ce code n'est pas loin d'etre partageable avec la recherche de participants dans le script source:spip/ecrire/exec/message.php (mais y en a-t-il vraiment
qui utilise la messagerie interne ?)

- il faudrait passer à Ajax, surtout pour la recherche dans des bases à beaucoup d'auteurs, ça permettrait d'avoir un réaffichage apparamment instantané, et de lancer  plusieurs ajouts d'auteurs en parallèle.

Quant à la non validation XHTML, elle atteint ici des sommets ;-).
parent 8f452d93
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+1 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -17,6 +17,7 @@ dist/puce_rtl.gif -text
dist/spip.png -text
dist/style_prive.html -text
dist/win_width.htc -text
ecrire/action/ajouter.php -text
ecrire/action/autoriser.php -text
ecrire/action/ical.php -text
ecrire/action/iconifier.php -text
+82 −0
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
<?php

/***************************************************************************\
 *  SPIP, Systeme de publication pour l'internet                           *
 *                                                                         *
 *  Copyright (c) 2001-2006                                                *
 *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
 *                                                                         *
 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
 *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
\***************************************************************************/

if (!defined("_ECRIRE_INC_VERSION")) return;

include_spip('base/abstract_sql');

function action_ajouter_dist() {
	
	global $action, $arg, $hash, $id_auteur, $redirect;
	include_spip('inc/actions');
	if (!verifier_action_auteur("$action-$arg", $hash, $id_auteur)) {
		include_spip('inc/minipres');
		minipres(_T('info_acces_interdit'));
	}

	if (preg_match(",^\W*(\d+)\W+(\d+)$,", $arg, $r)) {
		ajouter_auteur_et_rediriger($r[1], $r[2], $redirect);
	}
	if (preg_match(",^\W*(\d+)$,", $arg, $r)) {
		if  ($nouv_auteur = intval($_POST['nouv_auteur'])) {
		  ajouter_auteur_et_rediriger($r[1], $nouv_auteur, $redirect);
		} else if ($cherche = $_POST['cherche_auteur']) {
			$res = rechercher_auteurs($cherche);
			$n = count($res);
			if ($n == 1)
			# Bingo. Signaler le choix fait.
				ajouter_auteur_et_rediriger($r[1], $res[0], "$redirect&ids=$nouv_auteur=&cherche_auteur=" . $res[0]);
			# Trop vague. Le signaler.
			elseif ($n > 16)
				redirige_par_entete("$redirect&cherche_auteur=$cherche&ids=-1");
			elseif (!$n)
			# Recherche vide (mais faite). Le signaler 
				redirige_par_entete("$redirect&cherche_auteur=$cherche&ids=" );
			else
			# renvoyer un formulaire de choix
				redirige_par_entete("$redirect&cherche_auteur=$cherche&ids=" . join(',',$res));

		}
	} else spip_log("ajouter $arg pas compris");
}

function ajouter_auteur_et_rediriger($id_article, $id_auteur, $redirect)
{
	$res = spip_query("SELECT id_article FROM spip_auteurs_articles WHERE id_auteur=" . $id_auteur . " AND id_article=" . $id_article);
	if (!spip_num_rows($res))
		spip_abstract_insert('spip_auteurs_articles', "(id_auteur,id_article)", "($id_auteur,$id_article)");


	if ($GLOBALS['meta']['activer_moteur'] == 'oui') {
		include_spip("inc/indexation");
		marquer_indexer('article', $id_article);
	}

	if ($redirect) redirige_par_entete($redirect);
	exit;
}

function rechercher_auteurs($cherche_auteur)
{
	include_spip('inc/mots');
	include_spip('inc/charsets'); // pour tranlitteration
	$result = spip_query("SELECT id_auteur, nom FROM spip_auteurs");
	$table_auteurs = array();
	$table_ids = array();
	while ($row = spip_fetch_array($result)) {
		$table_auteurs[] = $row["nom"];
		$table_ids[] = $row["id_auteur"];
	}
	return mots_ressemblants($cherche_auteur, $table_auteurs, $table_ids);
}

?>
+13 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -89,6 +89,18 @@ function action_supprimer_auteur_rubrique($arg)
{
	if (preg_match(",^\W*(\d+)\W+(\d+)$,", $arg, $r))
		spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_auteur=".$r[1]." AND id_rubrique=" . $r[2]);
	else spip_log("$arg pas compris");
	else spip_log("action_supprimer_auteur_rubrique $arg pas compris");
}

function action_supprimer_auteur_article($arg)
{
	if (preg_match(",^\W*(\d+)\W+(\d+)$,", $arg, $r)) {
		spip_query("DELETE FROM spip_auteurs_articles WHERE id_auteur=".$r[1]." AND id_article=" . $r[2]);
		if ($GLOBALS['meta']['activer_moteur'] == 'oui') {
			include_spip("inc/indexation");
			marquer_indexer('article', $r[2]);
		}
	}
	else spip_log("action_supprimer_auteur_article $arg pas compris");
}
?>
+110 −180
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -12,7 +12,6 @@

if (!defined("_ECRIRE_INC_VERSION")) return;


include_spip('inc/presentation');
include_spip('inc/texte');
include_spip('inc/rubriques');
@@ -23,7 +22,7 @@ include_spip('inc/forum');
include_spip('base/abstract_sql');


function exec_affiche_articles_dist($id_article, $ajout_auteur, $change_accepter_forum, $change_petition, $changer_virtuel, $cherche_auteur, $cherche_mot, $debut, $flag_auteur, $flag_editable, $langue_article, $nom_select, $nouv_auteur, $nouv_mot, $rubrique_article, $supp_auteur, $supp_mot, $titre_article, $lier_trad,  $id_trad_new)
function exec_affiche_articles_dist($id_article, $change_accepter_forum, $change_petition, $changer_virtuel, $cherche_auteur, $ids,  $cherche_mot, $debut, $flag_auteur, $flag_editable, $langue_article, $nom_select, $nouv_mot, $rubrique_article, $supp_mot, $titre_article, $lier_trad,  $id_trad_new)
{
	global $connect_statut, $options, $spip_display, $spip_lang_left, $spip_lang_right, $dir_lang;

@@ -141,10 +140,30 @@ if ($flag_editable AND $options == 'avancees') {
debut_cadre_enfonce("auteur-24.gif", false, "", $bouton._T('texte_auteurs').aide ("artauteurs"));

//
// Recherche d'auteur
// complement de action/ajouter.php pour notifier la recherche d'auteur
//

 $supprimer_bouton_creer_auteur = rechercher_auteurs_articles($cherche_auteur, $id_article, $id_rubrique, $ajout_auteur, $flag_editable, $nouv_auteur, $supp_auteur);
 $bouton_creer_auteur =  ($GLOBALS['connect_statut'] == '0minirezo' 
			  AND $GLOBALS['connect_toutes_rubriques']);

 if ($cherche_auteur) {

	echo "<p align='$spip_lang_left'>";
	debut_boite_info();
	rechercher_auteurs_articles($cherche_auteur, $ids,  $id_article);

	if ($bouton_creer_auteur) {

		echo "<div style='width: 200px;'>";
		$titre = rawurlencode($cherche_auteur);
		icone_horizontale(_T('icone_creer_auteur'), generer_url_ecrire("auteur_infos","ajouter_id_article=$id_article&nom=$titre&redirect=" . generer_url_retour("articles","id_article=$id_article")), "redacteurs-24.gif", "creer.gif");
		echo "</div> ";
		$bouton_creer_auteur = false;
	}

	fin_boite_info();
	echo '</p>';
 }

//
// Afficher les auteurs
@@ -156,9 +175,25 @@ $les_auteurs = afficher_auteurs_articles($id_article, $flag_editable);
// Ajouter un auteur
//

if ($flag_editable AND $options == 'avancees') 
	ajouter_auteurs_articles($id_article, $id_rubrique, $les_auteurs, $flag_editable, $rubrique_article, $supprimer_bouton_creer_auteur);
 if ($flag_editable AND $options == 'avancees') {
	echo debut_block_invisible("auteursarticle");
	echo "<table width='100%'><tr>";

	if ($bouton_creer_auteur) {

		echo "<td width='200'>";
		icone_horizontale(_T('icone_creer_auteur'), generer_url_ecrire("auteur_infos","ajouter_id_article=$id_article&redirect=" .generer_url_retour("articles","id_article=$id_article")), "redacteurs-24.gif", "creer.gif");
		echo "</td>";
		echo "<td width='20'>&nbsp;</td>";
	}

	echo "<td>";

	echo ajouter_auteurs_articles($id_article, $les_auteurs, $bouton_creer_auteur);
	echo "</td></tr></table>";

	echo fin_block();
 }
fin_cadre_enfonce(false);

//
@@ -868,59 +903,24 @@ function langues_articles($id_article, $langue_article, $flag_editable, $id_rubr
  }
}

function add_auteur_article($id_article, $nouv_auteur)
function rechercher_auteurs_articles($cherche_auteur, $ids, $id_article)
{
	$res = spip_query("SELECT id_article FROM spip_auteurs_articles WHERE id_auteur='$nouv_auteur' AND id_article='$id_article'");
	if (!spip_num_rows($res))
		spip_abstract_insert('spip_auteurs_articles', "(id_auteur,id_article)", "('$nouv_auteur','$id_article')");
	if (!$ids) {
		echo "<B>"._T('texte_aucun_resultat_auteur', array('cherche_auteur' => $cherche_auteur)).".</B><BR />";
	}

function rechercher_auteurs_articles($cherche_auteur, $id_article, $id_rubrique, $ajout_auteur, $flag_editable, $nouv_auteur, $supp_auteur)
{
  global $spip_lang_left;

  $supprimer_bouton_creer_auteur = false;

  if ($cherche_auteur) {
	echo "<P ALIGN='$spip_lang_left'>";
	$result = spip_query("SELECT id_auteur, nom FROM spip_auteurs");
	$table_auteurs = array();
	$table_ids = array();
	while ($row = spip_fetch_array($result)) {
		$table_auteurs[] = $row["nom"];
		$table_ids[] = $row["id_auteur"];
	elseif ($ids == -1) {
		echo "<B>"._T('texte_trop_resultats_auteurs', array('cherche_auteur' => $cherche_auteur))."</B><BR />";
	}
	$resultat = mots_ressemblants($cherche_auteur, $table_auteurs, $table_ids);
	debut_boite_info();
	if (!$resultat) {
		echo "<B>"._T('texte_aucun_resultat_auteur', array('cherche_auteur' => $cherche_auteur)).".</B><BR>";
	}
	else if (count($resultat) == 1) {
		$ajout_auteur = 'oui';
		list(, $nouv_auteur) = each($resultat);
		echo "<B>"._T('texte_ajout_auteur')."</B><BR>";
		$result = spip_query("SELECT * FROM spip_auteurs WHERE id_auteur=$nouv_auteur");
		echo "<UL>";
		while ($row = spip_fetch_array($result)) {
			$id_auteur = $row['id_auteur'];
			$nom_auteur = $row['nom'];
			$email_auteur = $row['email'];
			$bio_auteur = $row['bio'];
	elseif (!strpos($ids,',')) {

			echo "<LI><FONT FACE='Verdana,Arial,Sans,sans-serif' SIZE=2><B><FONT SIZE=3>".typo($nom_auteur)."</FONT></B>";
			echo "</FONT>\n";
		$row = spip_fetch_array(spip_query("SELECT nom FROM spip_auteurs WHERE id_auteur=$ids"));
		echo "<B>"._T('texte_ajout_auteur')."</B><BR /><UL><LI><FONT FACE='Verdana,Arial,Sans,sans-serif' SIZE=2><B><FONT SIZE=3>".typo($row['nom'])."</FONT></B></UL>";
	}
		echo "</UL>";
	}
	else if (count($resultat) < 16) {
		reset($resultat);
		$les_auteurs = array();
		while (list(, $id_auteur) = each($resultat)) $les_auteurs[] = $id_auteur;
		if ($les_auteurs) {
			$les_auteurs = join(',', $les_auteurs);
			echo "<B>"._T('texte_plusieurs_articles', array('cherche_auteur' => $cherche_auteur))."</B><BR>";
			$result = spip_query("SELECT * FROM spip_auteurs WHERE id_auteur IN ($les_auteurs) ORDER BY nom");
	else {
		$ids = preg_replace('/[^0-9,]/','',$ids); // securite
		$result = spip_query("SELECT * FROM spip_auteurs WHERE id_auteur IN ($ids) ORDER BY nom");

		echo "<B>"._T('texte_plusieurs_articles', array('cherche_auteur' => $cherche_auteur))."</B><BR />";
		echo "<UL class='verdana1'>";
		while ($row = spip_fetch_array($result)) {
				$id_auteur = $row['id_auteur'];
@@ -931,8 +931,7 @@ function rechercher_auteurs_articles($cherche_auteur, $id_article, $id_rubrique,
				echo "<li><b>".typo($nom_auteur)."</b>";

				if ($email_auteur) echo " ($email_auteur)";
				echo " | <A href='", generer_url_ecrire('articles', "id_article=$id_article&ajout_auteur=oui&nouv_auteur=$id_auteur#auteurs"),
				  "'>",_T('lien_ajouter_auteur'),"</A>";
				echo " | <A href='", redirige_action_auteur('ajouter', "$id_article-$id_auteur","articles","id_article=$id_article#auteurs") . "'>",_T('lien_ajouter_auteur'),"</A>";

				if (trim($bio_auteur)) {
					echo "<br />".couper(propre($bio_auteur), 100)."\n";
@@ -941,54 +940,7 @@ function rechercher_auteurs_articles($cherche_auteur, $id_article, $id_rubrique,
			}
		echo "</UL>";
	}
	}
	else {
		echo "<B>"._T('texte_trop_resultats_auteurs', array('cherche_auteur' => $cherche_auteur))."</B><BR>";
	}

	if ($GLOBALS['connect_statut'] == '0minirezo' 
	AND $GLOBALS['connect_toutes_rubriques']) {

		echo "<div style='width: 200px;'>";
		$titre = rawurlencode($cherche_auteur);
		icone_horizontale(_T('icone_creer_auteur'), generer_url_ecrire("auteur_infos","ajouter_id_article=$id_article&nom=$titre&redirect=" . generer_url_retour("articles","id_article=$id_article")), "redacteurs-24.gif", "creer.gif");
		echo "</div> ";

		// message pour ne pas afficher le second bouton "creer un auteur"
		$supprimer_bouton_creer_auteur = true;
	}

	fin_boite_info();
	echo "<P>";

  }

//
// Appliquer les modifications sur les auteurs
//

  if ($ajout_auteur && $flag_editable) {
	if ($nouv_auteur > 0) {
		add_auteur_article($id_article, $nouv_auteur);
	}

	if ($GLOBALS['meta']['activer_moteur'] == 'oui') {
		include_spip("inc/indexation");
		marquer_indexer('article', $id_article);
	}
  }


  if ($supp_auteur && $flag_editable) {
	spip_query("DELETE FROM spip_auteurs_articles WHERE id_auteur='$supp_auteur' AND id_article='$id_article'");

	if ($GLOBALS['meta']['activer_moteur'] == 'oui') {
		include_spip("inc/indexation");
		marquer_indexer('article', $id_article);
	}
  }

  return $supprimer_bouton_creer_auteur;
}

function afficher_auteurs_articles($id_article, $flag_editable)
@@ -1037,7 +989,7 @@ function afficher_auteurs_articles($id_article, $flag_editable)
			else $vals[] =  "&nbsp;";

			if ($flag_editable AND ($connect_id_auteur != $id_auteur OR $connect_statut == '0minirezo') AND $options == 'avancees') {
		  $vals[] =  "<A href='" . generer_url_ecrire("articles","id_article=$id_article&supp_auteur=$id_auteur#auteurs") . "'>"._T('lien_retirer_auteur')."&nbsp;". http_img_pack('croix-rouge.gif', "X", "width='7' height='7' border='0' align='middle'") . "</A>";
				$vals[] =  "<a href='" . redirige_action_auteur('supprimer', "auteur_article-$id_auteur-$id_article","articles","id_article=$id_article#auteurs") . "'>"._T('lien_retirer_auteur')."&nbsp;". http_img_pack('croix-rouge.gif', "X", "width='7' height='7' border='0' align='middle'") . "</a>";
			} else {
			  $vals[] = "";
			}
@@ -1058,40 +1010,34 @@ function afficher_auteurs_articles($id_article, $flag_editable)
}


function ajouter_auteurs_articles($id_article, $id_rubrique, $les_auteurs, $flag_editable, $rubrique_article, $supprimer_bouton_creer_auteur)
function ajouter_auteurs_articles($id_article, $les_auteurs)
{
	global $connect_toutes_rubriques, $connect_statut, $couleur_claire ;
	$result = spip_query("SELECT * FROM spip_auteurs WHERE " . (!$les_auteurs ? '' : "id_auteur NOT IN ($les_auteurs) AND ") . "statut!='5poubelle' AND statut!='6forum' AND statut!='nouveau' ORDER BY statut, nom");

	echo debut_block_invisible("auteursarticle");
	echo "<table width='100%'><tr>";
	if (!$num = spip_num_rows($result)) return '';

	if ($connect_statut == '0minirezo'
	    AND $connect_toutes_rubriques
	    AND !$supprimer_bouton_creer_auteur) {
	echo "<td width='200'>";
	icone_horizontale(_T('icone_creer_auteur'), generer_url_ecrire("auteur_infos","ajouter_id_article=$id_article&redirect=" .generer_url_retour("articles","id_article=$id_article")), "redacteurs-24.gif", "creer.gif");
	echo "</td>";
	echo "<td width='20'>&nbsp;</td>";
	}
	return redirige_action_auteur('ajouter', $id_article,'articles', "id_article=$id_article",
				      (
			"<span class='verdana1'><B>"._T('titre_cadre_ajouter_auteur')."&nbsp; </B></span>\n" .

	echo "<td>";
			($num > 200 ? 
			 ("<input type='text' name='cherche_auteur' onClick=\"setvisibility('valider_ajouter_auteur','visible');\" CLASS='fondl' VALUE='' SIZE='20' />" .
			  "<span  class='visible_au_chargement' id='valider_ajouter_auteur'>\n<input type='submit' value='"._T('bouton_chercher')."' CLASS='fondo' /></span>") :
			 ("<select name='nouv_auteur' size='1' style='width:150px;' CLASS='fondl' onChange=\"setvisibility('valider_ajouter_auteur','visible');\">" .
			   articles_auteur_select($result) .
			   "</select>" .
			   "<span  class='visible_au_chargement' id='valider_ajouter_auteur'>" .
			   " <input type='submit' value='"._T('bouton_ajouter')."' CLASS='fondo'>" .
			   "</span>"))),
					    " method='post'");
}

	$result = spip_query("SELECT * FROM spip_auteurs WHERE " . (!$les_auteurs ? '' : "id_auteur NOT IN ($les_auteurs) AND ") . "statut!='5poubelle' AND statut!='6forum' AND statut!='nouveau' ORDER BY statut, nom");
function articles_auteur_select($result)
{
	global $couleur_claire ;

	$num = spip_num_rows($result);
	if ($num) {
		echo generer_url_post_ecrire("articles", "id_article=$id_article");;
		echo "<span class='verdana1'><B>"._T('titre_cadre_ajouter_auteur')."&nbsp; </B></span>\n";
		echo "<DIV><INPUT TYPE='Hidden' NAME='id_article' VALUE=\"$id_article\">";
	$statut_old = $premiere_old = $res = '';

		if ($num > 200) {
			echo "<INPUT TYPE='text' NAME='cherche_auteur' onClick=\"setvisibility('valider_ajouter_auteur','visible');\" CLASS='fondl' VALUE='' SIZE='20'>";
			echo "<span  class='visible_au_chargement' id='valider_ajouter_auteur'>";
			echo " <INPUT TYPE='submit' NAME='Chercher' VALUE='"._T('bouton_chercher')."' CLASS='fondo'>";
			echo "</span>";
		} else {
			echo "<INPUT TYPE='Hidden' NAME='ajout_auteur' VALUE='oui'>";
			echo "<SELECT NAME='nouv_auteur' SIZE='1' STYLE='width:150px;' CLASS='fondl' onChange=\"setvisibility('valider_ajouter_auteur','visible');\">";
	while ($row = spip_fetch_array($result)) {
		$id_auteur = $row["id_auteur"];
		$nom = $row["nom"];
@@ -1111,31 +1057,18 @@ function ajouter_auteurs_articles($id_article, $id_rubrique, $les_auteurs, $flag
			$email = " ($email)";

		if ($statut != $statut_old) {
					echo "\n<OPTION VALUE=\"x\">";
					echo "\n<OPTION VALUE=\"x\" style='background-color: $couleur_claire;'> $statut";
			$res .= "\n<OPTION VALUE=\"x\">";
			$res .= "\n<OPTION VALUE=\"x\" style='background-color: $couleur_claire;'> $statut";
		}

				if ($premiere != $premiere_old AND ($statut != _T('info_administrateurs') OR !$premiere_old)) {
				  echo "\n<OPTION VALUE=\"x\">";
				}
		if ($premiere != $premiere_old AND ($statut != _T('info_administrateurs') OR !$premiere_old))
			$res .= "\n<OPTION VALUE=\"x\">";
				
				
				echo "\n<OPTION VALUE=\"$id_auteur\">&nbsp;&nbsp;&nbsp;&nbsp;", supprimer_tags(couper(typo("$nom$email"), 40));
		$res .= "\n<OPTION VALUE=\"$id_auteur\">&nbsp;&nbsp;&nbsp;&nbsp;" . supprimer_tags(couper(typo("$nom$email"), 40));
		$statut_old = $statut;
		$premiere_old = $premiere;
	}
			
			echo "</SELECT>",
				"<span  class='visible_au_chargement' id='valider_ajouter_auteur'>",
				" <input type='submit' value="._T('bouton_ajouter')." CLASS='fondo'>",
				"</span>";
		}
		echo "</div></FORM>";
	}
	
	echo "</td></tr></table>";

	echo fin_block();
	return $res;
}

function afficher_corps_articles($virtuel, $chapo, $texte, $ps,  $extra)
@@ -1406,18 +1339,15 @@ function insert_article($id_parent)

function exec_articles_dist()
{
  global $ajout_auteur, $annee, $annee_redac, $avec_redac, $change_accepter_forum, $change_petition, $changer_virtuel, $chapo, $cherche_auteur, $cherche_mot, $connect_id_auteur, $date, $date_redac, $debut, $heure, $heure_redac, $id_article, $id_article_bloque, $id_parent, $id_rubrique_old, $id_secteur, $id_trad_new, $jour, $jour_redac, $langue_article, $lier_trad, $minute, $minute_redac, $mois, $mois_redac, $new, $nom_select, $nouv_auteur, $nouv_mot, $supp_auteur, $supp_mot, $titre, $titre_article, $virtuel; 

  global $annee, $annee_redac, $avec_redac, $change_accepter_forum, $change_petition, $changer_virtuel, $chapo, $cherche_auteur, $ids, $cherche_mot, $connect_id_auteur, $date, $date_redac, $debut, $heure, $heure_redac, $id_article, $id_article_bloque, $id_parent, $id_rubrique_old, $id_secteur, $id_trad_new, $jour, $jour_redac, $langue_article, $lier_trad, $minute, $minute_redac, $mois, $mois_redac, $new, $nom_select, $nouv_mot, $supp_mot, $titre, $titre_article, $virtuel; 

 $id_parent = intval($id_parent);
 $lier_trad = intval($lier_trad);
 $nouv_auteur = intval($nouv_auteur);
 $supp_mot = intval($supp_mot);
 $supp_auteur = intval($supp_auteur);
 if (!($id_article=intval($id_article))) {
	if ($new!='oui')  redirige_par_entete("./");
	$id_article = insert_article($id_parent);
	add_auteur_article($id_article, $connect_id_auteur);
	spip_abstract_insert('spip_auteurs_articles', "(id_auteur,id_article)", "('$connect_id_auteur','$id_article')");
 }

 pipeline('exec_init',array('args'=>array('exec'=>'articles','id_article'=>$id_article),'data'=>''));
@@ -1497,7 +1427,7 @@ if (isset($_POST['titre'])) {
		redirige_par_entete(
			generer_url_ecrire('articles', 'id_article='.$id_article, '&'));

	exec_affiche_articles_dist($id_article, $ajout_auteur, $change_accepter_forum, $change_petition, $changer_virtuel, $cherche_auteur, $cherche_mot, $debut, $flag_auteur, $flag_editable, $langue_article, $nom_select, $nouv_auteur, $nouv_mot, $id_rubrique, $supp_auteur, $supp_mot, $titre_article, $lier_trad, $id_trad_new);
	exec_affiche_articles_dist($id_article, $change_accepter_forum, $change_petition, $changer_virtuel, $cherche_auteur, $ids, $cherche_mot, $debut, $flag_auteur, $flag_editable, $langue_article, $nom_select, $nouv_mot, $id_rubrique, $supp_mot, $titre_article, $lier_trad, $id_trad_new);

}
?>