Changeset 85262 in spip-zone for _dev_


Ignore:
Timestamp:
Oct 15, 2014, 11:38:28 PM (5 years ago)
Author:
kent1@…
Message:

Quand une nouvelle chaîne existait déjà dans le passé et avait été supprimée, elle restait en base avec le statut attic.

Lors de son réimport, il n'était pas possible de l'insérer (à juste titre) donc, maintenant, si pas d'insert, on regarde dans attic, on met à jour si existante la chaine originale et on refait vivre les anciennes chaines, avec le statut "MODIF"

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _dev_/salvatore2/lecteur.php

    r82791 r85262  
    372372                                                $titre = $id.' : '.$source[1].' - '.$lang;
    373373                                               
    374                                                 spip_query("INSERT spip_tradlangs (id_tradlang_module,titre,module,lang,id,str,comm,md5,statut)
    375                                                 VALUES ("
    376                                                         ._q($id_module).', '
    377                                                         ._q($titre).', '
    378                                                         ._q($source[1]).', '
    379                                                         ._q($lang).', '
    380                                                         ._q($id).', '
    381                                                         ._q($str_lang[$id]).', '
    382                                                         ._q($comm).', '
    383                                                         ._q($md5).', '
    384                                                         ._q($status[$id])
    385                                                         .")"
    386                                                 );
     374                                                $data = array('id_tradlang_module' => $id_module,'titre' => $titre,'module' =>$source[1],'lang' =>$lang,'id'=>$id,'str'=>$str_lang[$id],'comm' => $comm,'md5'=>$md5,'statut'=>$status[$id]);
     375                                                $id_tradlang = sql_insertq('spip_tradlangs',$data);
     376                                                if(!$id_tradlang){
     377                                                        $tradlang = sql_fetsel('*','spip_tradlangs','id='.sql_quote($id).' AND module='.sql_quote($source[1]). 'AND lang='.sql_quote($lang).' AND statut='.sql_quote('attic'));
     378                                                        if(is_array($tradlang)){
     379                                                                trad_log("\n Changement d'une chaine dans ATTIC \n");
     380                                                                sql_updateq('spip_tradlangs',$data,'id_tradlang='.intval($tradlang['id_tradlang']));
     381                                                                $trads = sql_allfetsel('id_tradlang','spip_tradlangs','id='.sql_quote($id).' AND module='.sql_quote($source[1]). 'AND lang !='.sql_quote($lang).' AND statut='.sql_quote('attic'));
     382                                                                $maj = array('statut' => 'MODIF');
     383                                                                foreach($trads as $trad){
     384                                                                        trad_log("\n Changement d'une trad dans ATTIC \n");
     385                                                                        sql_updateq('spip_tradlangs',$maj,'id_tradlang='.intval($trad['id_tradlang']));
     386                                                                }
     387                                                        }
     388                                                }
    387389                                                $ajoutees++;
    388390                                        }
Note: See TracChangeset for help on using the changeset viewer.