[90] | 1 | <?php |
---|
| 2 | if (!defined("_ECRIRE_INC_VERSION")) return; |
---|
| 3 | |
---|
| 4 | include_spip('inc/autoriser'); |
---|
| 5 | |
---|
| 6 | function action_spiplistes_changer_statut_abonne_dist() |
---|
| 7 | { |
---|
| 8 | $securiser_action = charger_fonction('securiser_action', 'inc'); |
---|
| 9 | $arg = $securiser_action(); |
---|
| 10 | $redirect = urldecode(_request('redirect')); |
---|
| 11 | |
---|
| 12 | $arg = explode('-',$arg); |
---|
| 13 | $id_auteur = $arg[0]; |
---|
| 14 | $action = $arg[1]; |
---|
| 15 | |
---|
| 16 | if ($action=='format'){ |
---|
| 17 | //changer de statut |
---|
| 18 | $statut = _request('statut'); |
---|
| 19 | if (autoriser('statutabonement','auteur',$id_auteur)) |
---|
| 20 | if(($statut=='html') OR ($statut=='texte') OR ($statut=='non')){ |
---|
| 21 | $res = spip_query("SELECT id_auteur FROM spip_auteurs_elargis WHERE id_auteur="._q($id_auteur)); |
---|
| 22 | if (spip_num_rows($res)) |
---|
| 23 | spip_query("UPDATE spip_auteurs_elargis SET `spip_listes_format`="._q($statut)." WHERE id_auteur="._q($id_auteur)); |
---|
| 24 | else |
---|
| 25 | spip_query("INSERT INTO spip_auteurs_elargis (id_auteur,`spip_listes_format`) VALUES ("._q($id_auteur).","._q($statut).")"); |
---|
| 26 | } |
---|
| 27 | } |
---|
| 28 | if ($action=='listeabo'){ |
---|
| 29 | //changer de statut |
---|
| 30 | $id_auteur = _request('id_auteur'); |
---|
| 31 | if ($id_auteur && ($id_liste = $arg[2]) |
---|
| 32 | && autoriser('abonnerauteur','liste',$id_liste,NULL,array('id_auteur'=>$id_auteur))) { |
---|
| 33 | $result=spip_query("DELETE FROM spip_auteurs_listes WHERE id_auteur="._q($id_auteur)." AND id_liste="._q($id_liste)); |
---|
| 34 | $result=spip_query("INSERT INTO spip_auteurs_listes (id_auteur,id_liste) VALUES ("._q($id_auteur).","._q($id_liste).")"); |
---|
| 35 | //attribuer un format de reception si besoin (ancien auteur) |
---|
| 36 | $abo = spip_fetch_array(spip_query("SELECT `spip_listes_format` FROM `spip_auteurs_elargis` WHERE `id_auteur`='$id_auteur'")) ; |
---|
| 37 | if(!$abo){ |
---|
| 38 | $ok = spip_query("UPDATE `spip_auteurs_elargis` SET `spip_listes_format`='html' WHERE id_auteur="._q($id_auteur)); |
---|
| 39 | } |
---|
| 40 | |
---|
| 41 | } |
---|
| 42 | } |
---|
| 43 | if ($action=='listedesabo'){ |
---|
| 44 | if ($id_liste = $arg[2]) |
---|
| 45 | //if (autoriser()) |
---|
| 46 | if (autoriser('desabonnerauteur','liste',$id_liste,NULL,array('id_auteur'=>$id_auteur))) |
---|
| 47 | spip_query("DELETE FROM spip_auteurs_listes WHERE id_auteur="._q($id_auteur)." AND id_liste="._q($id_liste)); |
---|
| 48 | } |
---|
| 49 | |
---|
| 50 | if ($redirect){ |
---|
| 51 | redirige_par_entete(str_replace("&","&",$redirect)."#abo$id_auteur"); |
---|
| 52 | } |
---|
| 53 | } |
---|
| 54 | |
---|
| 55 | ?> |
---|