$id)));
// syntaxe : ajax_action_auteur($action, $id, $script, $args='', $corps=false, $args_ajax='', $fct_ajax='')
if(strlen($texte))
// un clic sur 'monter' ou 'descendre' va permettre une redirection vers
// les fonctions : boites_privees_URL_objet_exec(), puis action_rapide_tri_auteurs()
$texte = ajax_action_auteur('action_rapide', 'tri_auteurs', 'articles', "arg=boites_privees|URL_objet&fct=tri_auteurs&id_article=$id#bp_tri_auteurs_corps", $texte);
// si appel exec, l'id article est nul...
if(!$id_article) return $texte;
// ici, 1er affichage !
if(!strlen($texte)) return '';
// SPIP 1.92
if(!defined('_SPIP19300')) return debut_cadre_relief(find_in_path('img/couteau-24.gif'), true)
. cs_div_configuration()
. "
"
. block_parfois_visible('bp_ta', '
'._T('couteau:tri_auteurs').'', "
$texte
", 'text-align: center;')
. "
"
. fin_cadre_relief(true);
// SPIP >= 2.0
return cadre_depliable(find_in_path('img/couteau-24.gif'),
cs_div_configuration().''._T('couteau:tri_auteurs').'',
false, // true = deplie
"$texte
",
'bp_tri_auteurs');
}
// fonction {$outil}_{$arg}_action() appelee par action/action_rapide.php
function boites_privees_tri_auteurs_action() {
// boite privee : tri les auteurs d'un article
$id_article = _request('bp_article');
$id_auteur = abs(_request('bp_auteur'));
$monter = _request('bp_auteur')>0;
if(!defined('_SPIP19300')) include_spip('outils/boites_privees'); // pour les fonctions SQL
$s = defined('_SPIP30000')
?sql_select('id_auteur', 'spip_auteurs_liens', "objet='article' AND id_objet=$id_article")
:sql_select('id_auteur', 'spip_auteurs_articles', "id_article=$id_article");
$i=0; $j=0;
while ($a = sql_fetch($s)) {
if($a['id_auteur']==$id_auteur) { $i = $a['id_auteur']; break; }
$j = $a['id_auteur'];
}
if(!$monter && $i && ($a = sql_fetch($s))) $j = $a['id_auteur'];
spip_log("action_rapide_tri_auteurs, article $id_article : echange entre l'auteur $i et l'auteur $j");
if($i && $j) {
if(defined('_SPIP30000')) {
// SPIP >= 3.0
sql_update('spip_auteurs_liens', array('id_auteur'=>-99), "objet='article' AND id_objet=$id_article AND id_auteur=$i");
sql_update('spip_auteurs_liens', array('id_auteur'=>$i), "objet='article' AND id_objet=$id_article AND id_auteur=$j");
sql_update('spip_auteurs_liens', array('id_auteur'=>$j), "objet='article' AND id_objet=$id_article AND id_auteur=-99");
} else {
sql_update('spip_auteurs_articles', array('id_auteur'=>-99), "id_article=$id_article AND id_auteur=$i");
sql_update('spip_auteurs_articles', array('id_auteur'=>$i), "id_article=$id_article AND id_auteur=$j");
sql_update('spip_auteurs_articles', array('id_auteur'=>$j), "id_article=$id_article AND id_auteur=-99");
}
}
// action terminee, pret pour la redirection exec !
return;
}
?>