source: spip-zone/_plugins_/spipicious_jquery/trunk/action/spipicious_supprimer_tags.php @ 62523

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

Un machin truc chose qui marchote avant de tester la nouvelle API de liens

File size: 2.4 KB
Line 
1<?php
2
3/**
4 * spip.icio.us
5 * Gestion de tags lies aux auteurs
6 *
7 * Auteurs :
8 * kent1 (kent1@arscenic.info)
9 * Erational
10 *
11 * © 2007-2011 - Distribue sous licence GNU/GPL
12 *
13 */
14
15if (!defined("_ECRIRE_INC_VERSION")) return;    #securite
16
17function action_spipicious_supprimer_tags_dist(){
18        global $visiteur_session;
19
20        $id_objet = _request('spipicious_id');
21        $type = _request('spipicious_type');
22
23        include_spip('inc/autoriser');
24        if(!autoriser('tagger_spipicious',$type,$id_objet,$visiteur_session,$opt)){
25                return '';
26        }
27
28        $id_auteur = $visiteur_session['id_auteur'];
29        $id_table_objet = id_table_objet($type);
30
31        $remove_tags = _request('remove_tags');
32
33        $suppression = spipicious_supprimer_tags($remove_tags,$id_auteur,$id_objet,$type,$id_table_objet);
34        return $suppression;
35}
36
37function spipicious_supprimer_tags($remove_tags,$id_auteur,$id_objet,$type,$id_table_objet){
38        $compte = 0;
39        $tags_removed = array();
40        foreach($remove_tags as $remove_tag){
41
42                // On le vire de notre auteur dans spipicious
43                sql_delete("spip_spipicious","id_auteur=".intval($id_auteur)." AND id_objet=".intval($id_objet)." AND id_mot=".intval($remove_tag)." AND objet=".sql_quote($type)); // on efface le mot associe a l'auteur sur l'objet
44                $invalider = true;
45
46                $titre_mot = sql_getfetsel("titre","spip_mots","id_mot=".intval($remove_tag));
47
48                // Utilisation par un autre utilisateur => sinon : il n'est plus du tout utilise =>
49                // suppression du mot pure et simple dans spip_mots_$type et spip_mot
50                $newt = sql_getfetsel("id_auteur","spip_spipicious","id_mot=".intval($remove_tag));
51                if (!$newt){
52                        sql_delete("$table_mot","id_mot=".$remove_tag." AND $id_table_objet=".intval($id_objet));
53                        sql_delete("spip_mots","id_mot=$remove_tag"); // on efface le mot si il n'est plus associe a rien
54                }
55                else {
56                        // Utilisation par un autre utilisateur ok mais utilisation sur le meme id_$type
57                        $newt2 = sql_getfetsel("id_auteur","spip_spipicious","id_mot=".intval($remove_tag)." AND id_objet=".intval($id_objet)." AND objet=".sql_quote($type));
58                        if(!$newt2){
59                                sql_delete("spip_mots_liens","id_mot=".intval($remove_tag)." AND objet=".sql_quote($type)." AND id_objet=".intval($id_objet));
60                        }
61                }
62                $message = _T('spipicious:tag_supprime',array('name'=>$titre_mot));
63                $tags_removed[] = $titre_mot;
64                $compte++;
65        }
66
67        if($compte > 1){
68                $tags = implode('<br />',$tags_removed);
69                $message = _T('spipicious:tags_supprimes',array('name'=>$tags,'nb'=>$compte));
70        }
71
72        return array($message,$invalider,'');
73}
74?>
Note: See TracBrowser for help on using the repository browser.