Changeset 50843 in spip-zone


Ignore:
Timestamp:
Aug 29, 2011, 3:56:44 PM (10 years ago)
Author:
abelass@…
Message:
  • Documenter
  • préparer l'obligation dans le contexte des rubriques traduites que la rubrique parente soit traduite dans la langue demandée
Location:
_plugins_/traduction_articles_autrement/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/traduction_articles_autrement/trunk/inc/barre_langues.php

    r45758 r50843  
    1212       
    1313       
    14         /*création des onglets traduction*/
     14        /*création des onglets traduction*/
     15       
     16        // Les langues du site
    1517       
    1618        if (lire_config('langues_multilingue')) $langues_dispos=explode(',',lire_config('langues_multilingue'));
    1719        else $langues_dispos=explode(',',lire_config('langues_utilisees'));
    18 
     20       
     21       
     22       
     23        // On établit les traductions de l'article
    1924        $traductions    = array();
    2025       
    21         if($langues_dispos){           
     26        if($langues_dispos){   
     27               
     28        // L'article est traduit       
    2229        if($id_trad>0){
     30       
     31                // les traductions de l'article
    2332                $sql=sql_select('lang,id_article','spip_articles','id_trad='.$id_trad);
    24        
    2533       
    2634                while($row=sql_fetch($sql)){
    2735                        $traductions[$row['lang']]=$row['id_article'];
    2836                        }
    29        
     37                       
     38                // Le menu des options
    3039                $clic = _T('trad_delier');     
     40               
     41                // possibilité de délier l'article
    3142                $options = '<div class="options delier">'.icone_inline($clic, ajax_action_auteur("referencer_traduction","$id_article,-$id_trad",'articles', "id_article=$id_article",array($clic)), "traductions-24.gif", "supprimer.gif",'right', false).'</div>';           
     43               
    3244                }
     45        // L'article n'est pas traduit 
    3346        else{
    3447                $id_trad=$id_article;
    3548                $row=sql_fetsel('lang,id_article','spip_articles','id_article='.$id_article);
     49               
     50                // Seul l'aticle présent est pris dans l'array traductions
    3651                $traductions[$row['lang']]=$row['id_article'];
    3752               
     53                // Le menu des options
    3854                $options =  '<div class="options form_lier"><h2>'._T('taa:lier_traduction').'</h2>'.redirige_action_auteur("referencer_traduction",
    3955                        $id_article,
     
    4662                }
    4763       
     64        // Pour chaque langue présente on crée un bouton
     65       
     66        // indique l'article par défaut
    4867        $span_content='<div class="ref">*<span>'._T('spip:trad_reference').'</span></div>';     
    4968       
    5069        foreach($langues_dispos as $key => $value){
    51         $class='';
    52         $span='';       
     70                $class='';
     71                $span='';       
     72               
     73                // les boutons hors article présent
    5374                if($traductions[$value]!=$id_article){
     75                                       
     76                        //Si il existe une traduction dans une langue du site on crée le bouton avec le lien de l'article
    5477                        if(array_key_exists($value,$traductions)){
     78                                // Article de référence?       
    5579                                if($traductions[$value]==$id_trad){
    5680                                        $span=$span_content;                                   
    5781                                        }
    58                                 $onglets_traduction.='<div class="traduit onglet ajax">'.$span.'<a href="?exec=articles&id_article='.$traductions[$value].'">'.traduire_nom_langue($value).'</a></div>';                                       
     82                                $onglets_traduction.='<div class="traduit onglet ajax">'.$span.'<a href="'.generer_url_ecrire('articles','id_article='.$traductions[$value]).'">'.traduire_nom_langue($value).'</a></div>';                                     
    5983                        }
     84                        // Sinon on crée un nouvel article dans la langue souhaitée
    6085                        else{
    6186                                // Si le plugin traduction rubriques est activé on regarde si on trouve la rubrique traduite
    62                                 if (test_plugin_actif('tradrub')) {
     87                                if ($trad_rub=test_plugin_actif('tradrub')) {
    6388                                        $id_rubrique_traduite=rubrique_traduction($value,$id_rubrique);
     89                                       
     90                                        $onglets_traduction.= '<div class="non_traduit onglet"><a href="'.generer_url_ecrire('articles_edit','new=oui&lier_trad='.$id_trad.'&id_rubrique='.$id_rubrique_traduite.'&lang_dest='.$value).'" title="'._T('ecrire:info_tout_site2').'">'.traduire_nom_langue($value).'</a></div>';                                 
     91                                       
    6492                                        $section='oui';
    65                                         }       
    66                                 $onglets_traduction.= '<div class="non_traduit onglet"><a href="'.generer_url_ecrire('articles_edit','new=oui&lier_trad='.$id_trad.'&id_rubrique='.$id_rubrique_traduite.'&lang_dest='.$value).'" title="'._T('ecrire:info_tout_site2').'">'.traduire_nom_langue($value).'</a></div>';
     93
     94                                        }
     95                                else{
     96                                        $onglets_traduction.= '<div class="non_traduit onglet"><a href="'.generer_url_ecrire('articles_edit','new=oui&lier_trad='.$id_trad.'&lang_dest='.$value).'" title="'._T('ecrire:info_tout_site2').'">'.traduire_nom_langue($value).'</a></div>';                               
     97                                }
     98
     99                               
     100                               
    67101                       
    68102                                $action=redirige_action_auteur ('changer_langue',$id_article,'articles',"id_article=$id_article");
     
    74108                                }
    75109                        }
     110                // le bouton de l'article présent       
    76111                else{
    77112                        if($traductions[$value]==$id_trad){
  • _plugins_/traduction_articles_autrement/trunk/taa_fonctions.php

    r43382 r50843  
    88                $trad = sql_getfetsel('id_rubrique','spip_rubriques','id_trad='. sql_quote($id_trad_parent) . ' AND lang='. sql_quote($lang));
    99                }
    10         else{
    11                 $trad = sql_getfetsel('id_secteur','spip_rubriques','id_parent=0 AND lang='. sql_quote($lang));
    12                 }
     10
    1311
    1412        return $trad;
Note: See TracChangeset for help on using the changeset viewer.