source: spip-zone/_plugins_/_dev_/squeezecrire/squeeze_zone/action/zone_del_people.php @ 19192

Last change on this file since 19192 was 19192, checked in by kent1@…, 11 years ago

hop...

File size: 2.6 KB
Line 
1<?php
2/*
3
4 *
5 * Auteurs :
6 * kent1
7 * © 2007 - Distribue sous licence GNU/GPL
8 *
9 */
10
11function action_zone_del_people(){
12        global $auteur_session;
13       
14        // Qui est on?
15        $id_auteur = $auteur_session['id_auteur'];
16       
17                include_spip("inc/actions");
18               
19                // La personne a virer
20                $newauteur = _request('id_auteur');
21               
22                // La zone concernee
23                $id = _request('id_rubrique');
24               
25                // URL de retour
26                $redirect = urldecode(_request('redirect_del_auteur'));
27                $delete = _request('supprimer_people');
28               
29                // supprimer le mot ?
30                if ($delete
31                AND $s = sql_select("*","spip_zones_auteurs","id_zone=".$id." AND id_auteur=".$delete)
32                AND $t = sql_fetch($s)) {
33                        $zone_rub = sql_select("id_rubrique","spip_zones_rubriques","id_zone=".$id);
34                        $rub = sql_fetch($zone_rub);
35                        $liste_articles = sql_select("id_article","spip_articles","id_rubrique=".$rub['id_rubrique']);
36                        spip_log("rubrique = ".$rub['id_rubrique'], 'squeeze_zone');// On logue tout cela
37                        while($articles = sql_fetch($liste_articles)){
38                                $tous_auteurs = sql_select("id_auteur","spip_auteurs_articles","id_article=".$articles['id_article']);
39                                spip_log("article = ".$articles['id_article'], 'squeeze_zone');// On logue tout cela
40                                $nb_auteur = sql_count($tous_auteurs);
41                                while($auteur = sql_fetch($tous_auteurs)){
42                                        spip_log("auteur = ".$auteur['id_auteur'], 'squeeze_zone');// On logue tout cela
43                                        if (($nb_auteur < 2 ) && ($delete == $auteur['id_auteur'])){
44                                                spip_log("Nombre d'auteurs : ".$nb_auteur." : id_auteur = ".$auteur['id_auteur'], 'squeeze_zone');// On logue tout cela
45                                                $erreur = _T('vous_plus_auteur');
46                                                $supprimer_auteur = 1;
47                                                spip_log("erreur : il n'y a qu'un seul auteur pour l'article".$articles['id_article'], 'squeeze_zone');// On logue tout cela
48                                        }
49                                        else if($auteur['id_auteur'] == $delete){
50                                                sql_delete("spip_auteurs_articles","id_article =".$articles['id_article']." AND id_auteur = ".$delete);
51                                                $supprimer_auteur = 1;
52                                                spip_log("suppression auteur (id_auteur = $delete) de l'article".$articles['id_article'], 'squeeze_zone');// On logue tout cela
53                                        }
54                                }
55                        }
56                        if ($supprimer_auteur != 1){
57                                sql_delete("spip_zones_auteurs","id_auteur=".$delete." AND id_zone=".$id); // on efface l'auteur associé a la rubrique
58                                spip_log("suppression personne (id_auteur = $delete) de la zone $id", 'squeeze_zone');// On logue tout cela
59                        }
60                        else{
61                                $redirect = parametre_url($redirect, 'erreur', $erreur);       
62                        }
63                        $invalider = true;
64                }
65        if ($invalider) {
66                include_spip('inc/invalideur');
67                suivre_invalideur("0",true);
68                spip_log('invalider', 'squeeze_zone');
69        }
70        redirige_par_entete(str_replace("&amp;","&",$redirect));
71}
72?>
Note: See TracBrowser for help on using the repository browser.