Ignore:
Timestamp:
03/16/10 21:42:46 (11 years ago)
Author:
kent1
Message:

Bien meilleure intégration au nouveau diogene

Location:
plugins_spip/diogene_complements/diogene_spipicious
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • plugins_spip/diogene_complements/diogene_spipicious/diogene_spipicious_pipelines.php

    r3053 r3067  
    99    function diogene_spipicious_diogene_avant_formulaire($flux){
    1010        global $visiteur_session;
    11                 include_spip('inc/autoriser');
    12         if(autoriser('tagger_spipicious','article',$id_objet,$visiteur_session,$opt)){
    13                 $flux['data'] .= recuperer_fond('prive/diogene_spipicious_avant_formulaire', $flux['args']);
    14                 }
     11        if(is_array(unserialize($flux['args']['champs_ajoutes'])) && in_array('spipicious',unserialize($flux['args']['champs_ajoutes']))){
     12                        include_spip('inc/autoriser');
     13                if(autoriser('tagger_spipicious','article',$id_objet,$visiteur_session,$opt)){
     14                        $flux['data'] .= recuperer_fond('prive/diogene_spipicious_avant_formulaire', $flux['args']);
     15                        }
     16        }
    1517        return $flux;
    1618    }
     
    3537        function diogene_spipicious_diogene_ajouter_media($flux){
    3638                global $visiteur_session;
    37                 include_spip('inc/autoriser');
    38         if(autoriser('tagger_spipicious','article',$id_objet,$visiteur_session,$opt)){
    39                 $flux['data'] .= recuperer_fond('formulaires/diogene_ajouter_medias_spipicious',$flux['args']);
     39                $id_article = $flux['args']['contexte']['id_article'];
     40                if(is_array(unserialize($flux['args']['champs_ajoutes'])) && in_array('spipicious',unserialize($flux['args']['champs_ajoutes']))){
     41                        include_spip('inc/autoriser');
     42                if(autoriser('tagger_spipicious','article',$id_article,$visiteur_session,$opt)){
     43                        if(intval($id_article)){
     44                                        $tags = sql_select("mots.id_mot, mots.titre","spip_spipicious as spipicious LEFT join spip_mots as mots USING(id_mot)","spipicious.id_auteur=".intval($visiteur_session['id_auteur'])." AND spipicious.id_objet=".intval($id_article)." AND spipicious.objet='article'");
     45                                        while($tag = sql_fetch($tags)){
     46                                                $tag_uniques[$tag['id_mot']] = $tag['titre'];
     47                                        }
     48                                        if(is_array($tag_uniques)){
     49                                                $flux['args']['contexte']['diogene_spipicious_removal_tags'] = $tag_uniques;
     50                                        }
     51                                }
     52                        $flux['data'] .= recuperer_fond('formulaires/diogene_ajouter_medias_spipicious',$flux['args']['contexte']);
     53                        }
    4054                }
    4155        return $flux;
     
    5064        function diogene_spipicious_diogene_ajout_media_post_traiter($flux){
    5165                global $visiteur_session;
     66                spip_log($flux['args']['action'],'diogenes');
     67                if($flux['args']['action']=='modifier'){
     68                        spip_log("DIOGENE_SPIPICIOUS : diogene_ajout_media_post_traiter");
    5269
    53                 spip_log("DIOGENE_SPIPICIOUS : diogene_ajout_media_post_traiter");
     70                        $id_objet = $flux['args']['id_objet'];
     71                        $type = $flux['args']['type'];
     72                        $table  = $flux['args']['table'];
     73                        $id_table_objet = id_table_objet($type);
    5474
    55                 $id_article = $flux['args']['id_article'];
     75                        include_spip('inc/autoriser');
     76                if(!autoriser('tagger_spipicious',$type,$id_objet,$visiteur_session,$opt)){
     77                        return $flux;
     78                        }
    5679
    57                 include_spip('inc/autoriser');
    58         if(!autoriser('tagger_spipicious','article',$id_article,$visiteur_session,$opt)){
    59                 return $flux;
    60                 }
     80                        include_spip('inc/invalideur');
     81                        $id_groupe = lire_config('spipicious/groupe_mot','1');
     82                        if(_request('diogene_spipicious_tags')){
     83                                /**
     84                                 * Insertion des tags
     85                                 */
     86                                include_spip('action/spipicious_ajouter_tags');
     87                                $tableau_tags = explode(";",_request('diogene_spipicious_tags'));
     88                                $ajout = spipicious_ajouter_tags($tableau_tags,$visiteur_session['id_auteur'],$id_objet,$type,$id_table_objet,'spip_mots_'.$type.'s',$id_groupe,'oui');
    6189
    62                 include_spip('inc/invalideur');
    63                 $valeurs = $flux['args']['valeurs'];
    64                 $id_groupe = lire_config('spipicious/groupe_mot','1');
    65                 if($valeurs['diogene_spipicious_tags']){
    66                         /**
    67                          * Insertion des tags
    68                          */
    69                         include_spip('action/spipicious_ajouter_tags');
    70                         $tableau_tags = explode(";",$valeurs['diogene_spipicious_tags']);
    71                         $ajout = spipicious_ajouter_tags($tableau_tags,$visiteur_session['id_auteur'],$id_article,'article','id_article','spip_mots_articles',$id_groupe);
    72                         foreach($tableau_tags as $id_tag){
    73                                 suivre_invalideur("id='id_mot/$id_mot'",true);
     90                                foreach($tableau_tags as $id_tag){
     91                                        suivre_invalideur("id='id_mot/$id_mot'",true);
     92                                }
    7493                        }
    75                 }
    76                 if(is_array($valeurs['diogene_spipicious_removal_tags'])){
    77                         /**
    78                          * Suppression des tags si demandée
    79                          */
    80                         include_spip('action/spipicious_supprimer_tags');
    81                         $suppression = spipicious_supprimer_tags($valeurs['diogene_spipicious_removal_tags'],$visiteur_session['id_auteur'],$id_article,'article','id_article','spip_mots_articles',$id_groupe);
    82                         foreach($valeurs['diogene_spipicious_removal_tags'] as $id_tag){
    83                                 suivre_invalideur("id='id_mot/$id_mot'",true);
     94                        if(is_array(_request('diogene_spipicious_removal_tags'))){
     95                                /**
     96                                 * Suppression des tags si demandée
     97                                 */
     98                                include_spip('action/spipicious_supprimer_tags');
     99                                $suppression = spipicious_supprimer_tags(_request('diogene_spipicious_removal_tags'),$visiteur_session['id_auteur'],$id_objet,$type,$id_table_objet,'spip_mots_'.$type.'s',$id_groupe);
     100                                foreach(_request('diogene_spipicious_removal_tags') as $id_tag){
     101                                        suivre_invalideur("id='id_mot/$id_mot'",true);
     102                                }
    84103                        }
    85104                }
     
    94113         */
    95114        function diogene_spipicious_diogene_ajout_media_post_charger($flux){
    96                 global $visiteur_session;
    97 
    98                 $id_article = $flux['args']['id_article'];
    99 
    100                 include_spip('inc/autoriser');
    101                 if(!autoriser('tagger_spipicious','article',$id_article,$visiteur_session,$opt)){
    102                 return $flux;
    103                 }
    104 
    105                 if(intval($id_article)){
    106                         spip_log("DIOGENE_SPIPICIOUS : diogene_ajout_media_post_charger","emballe_media");
    107                         $tags = sql_select("mots.id_mot, mots.titre","spip_spipicious as spipicious LEFT join spip_mots as mots USING(id_mot)","spipicious.id_auteur=".intval($visiteur_session['id_auteur'])." AND spipicious.id_objet=".intval($id_article)." AND spipicious.objet='article'");
    108                         while($tag = sql_fetch($tags)){
    109                                 $tag_uniques[$tag['id_mot']] = $tag['titre'];
    110                         }
    111                         if(is_array($tag_uniques)){
    112                                 $tags = array('diogene_spipicious_removal_tags' => $tag_uniques);
    113                                 $flux['data'] = array_merge($flux['data'],$tags);
    114                         }
    115                 }
    116                 return $flux;
    117115        }
    118116
     
    127125                return $flux;
    128126        }
     127
     128        function diogene_spipicious_diogene_champs_sup($flux){
     129                $flux['spipicious'] = _T('diogene_spipicious:tags_spipicious');
     130                return $flux;
     131        }
    129132?>
  • plugins_spip/diogene_complements/diogene_spipicious/plugin.xml

    r3046 r3067  
    4242                <inclure>diogene_spipicious_pipelines.php</inclure>
    4343        </pipeline>
     44        <pipeline>
     45                <nom>diogene_champs_sup</nom>
     46                <inclure>diogene_spipicious_pipelines.php</inclure>
     47        </pipeline>
    4448        <necessite id='diogene' version='[0.1;]' />
    4549        <necessite id='spipicious' version='[0.5;]' />
  • plugins_spip/diogene_complements/diogene_spipicious/prive/diogene_spipicious_avant_formulaire.html

    r3046 r3067  
    77                                var diogene_spipicious = $('input[name=diogene_spipicious_tags][autocomplete!=off]');
    88
    9                                 var id_objet = $("#formulaire_upload_media_bis input[name=diogene_id_article]").val();
     9                                var id_objet = $("input[name=id_article]").val();
    1010                                var type = 'article';
    1111
Note: See TracChangeset for help on using the changeset viewer.