Changeset 82791 in spip-zone


Ignore:
Timestamp:
May 29, 2014, 12:52:56 PM (5 years ago)
Author:
kent1@…
Message:

Des choses non commitées mais mises en place depuis très longtemps

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _dev_/salvatore2/lecteur.php

    r77237 r82791  
    4343        $GLOBALS['visiteur_session']['id_auteur'] = _ID_AUTEUR_SALVATORE;
    4444
    45 $url_site = sql_getfetsel('valeur','spip_meta','nom="adresse_site"');
     45$url_site = $GLOBALS['meta']['adresse_site'];
    4646
    4747/* MAIN ***********************************************************************/
     
    9090                                $priorite = _TRAD_PRIORITE_DEFAUT;
    9191                        if (in_array($fic_lang_principal,$liste_fic_lang)) {
    92                                 $module = sql_fetsel('*','spip_tradlang_modules','module='.sql_quote($source[1]));
     92                                $module = sql_fetsel('id_tradlang_module,lang_mere','spip_tradlang_modules','module='.sql_quote($source[1]));
    9393                                $id_module = $module['id_tradlang_module'];
    9494                                /**
     
    186186                if(function_exists('inc_tradlang_verifier_bilans_dist')){
    187187                        trad_log("Création ou MAJ des bilans de ".$source[1]."\n\n");
    188                         inc_tradlang_verifier_bilans_dist($source[1],$source[2]);
     188                        inc_tradlang_verifier_bilans_dist($source[1],$source[2],false);
    189189                }
    190190        }
     
    249249        list(,$lang)=explode("_",$fich,2);
    250250       
    251         if(!array_key_exists($lang,$GLOBALS['codes_langues'])){
     251        if(!array_key_exists($lang,$GLOBALS['codes_langues']))
    252252                trad_log("!-- Attention : La langue $lang n'existe pas dans les langues possibles - $mod \n"); 
    253         }
    254253        else{
    255254                if (1==$orig)
     
    268267                 */
    269268                if ($nb == 0 OR $orig == 1) {
     269                        $typo = (in_array($lang,array('eo','fr','cpf')) || strncmp($lang, 'fr_', 3)==0) ? 'fr' : 'en';
     270                        $typographie = charger_fonction($typo, 'typographie');
    270271                        // La liste de ce qui existe deja
    271272                        $existant = $str_existant = array();
     
    275276                        }
    276277       
    277                         $bigwhere = "module='".$source[1]."' and lang='".$lang."'";
     278                        $bigwhere = "module=".sql_quote($source[1])." and lang=".sql_quote($lang);
    278279       
    279280                        include_spip('action/editer_tradlang');
     
    296297                                        if (isset($md5)){
    297298                                                /**
    298                                                  * Forcer le passage en UTF-8
    299                                                  */
    300                                                 $str_lang[$id] = str_replace("\r\n", "\n", unicode_to_utf_8(
     299                                                 * On enlève les sauts de lignes windows pour des sauts de ligne linux
     300                                                 */
     301                                                 
     302                                                $str_lang[$id] = str_replace("\r\n", "\n", $str_lang[$id]);
     303                                               
     304                                                /**
     305                                                 * protection dans les balises genre <a href="..." ou <img src="..."
     306                                                 * cf inc/filtres
     307                                                 */
     308                                                if (preg_match_all(_TYPO_BALISE, $str_lang[$id], $regs, PREG_SET_ORDER)) {
     309                                                        foreach ($regs as $reg) {
     310                                                                $insert = $reg[0];
     311                                                                // hack: on transforme les caracteres a proteger en les remplacant
     312                                                                // par des caracteres "illegaux". (cf corriger_caracteres())
     313                                                                $insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
     314                                                                $str_lang[$id] = str_replace($reg[0], $insert, $str_lang[$id]);
     315                                                        }
     316                                                }
     317                                               
     318                                                /**
     319                                                 * Protéger le contenu des balises <html> <code> <cadre> <frame> <tt> <pre>
     320                                                 */
     321                                                define('_PROTEGE_BLOCS_HTML', ',<(html|code|cadre|pre|tt)(\s[^>]*)?>(.*)</\1>,UimsS');
     322                                                if ((strpos($str_lang[$id],"<")!==false) && preg_match_all(_PROTEGE_BLOCS_HTML, $str_lang[$id], $matches, PREG_SET_ORDER)) {
     323                                                        foreach ($matches as $reg) {
     324                                                                $insert = $reg[0];
     325                                                                // hack: on transforme les caracteres a proteger en les remplacant
     326                                                                // par des caracteres "illegaux". (cf corriger_caracteres())
     327                                                                $insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
     328                                                                $str_lang[$id] = str_replace($reg[0], $insert, $str_lang[$id]);
     329                                                        }
     330                                                }
     331                                               
     332                                                /**
     333                                                 * On applique la typographie de la langue
     334                                                 */
     335                                                $str_lang[$id] = $typographie($str_lang[$id]);
     336                                               
     337                                                /**
     338                                                 * On remet les caractères normaux sur les caractères illégaux
     339                                                 */
     340                                                $str_lang[$id] = strtr($str_lang[$id], _TYPO_PROTECTEUR, _TYPO_PROTEGER);
     341                                               
     342                                                $str_lang[$id] = unicode_to_utf_8(
    301343                                                        html_entity_decode(
    302                                                                 preg_replace('/&([lg]t;)/S', '&amp;\1', $str_lang[$id]),
     344                                                                preg_replace('/&([lg]t;)/S', '&amp;\1',$str_lang[$id]),
    303345                                                                ENT_NOQUOTES, 'utf-8')
    304                                                 ));
     346                                                );
     347                                               
     348                                                /**
     349                                                 * Calcul du nouveau md5
     350                                                 */
     351                                                $md5 = md5($str_lang[$id]);
    305352                                               
    306353                                                /**
     
    344391                                else if (isset($str_lang[$id]) AND isset($existant[$id])){
    345392                                        // * identique ? => NOOP
     393                                        /**
     394                                         * On enlève les sauts de lignes windows pour des sauts de ligne linux
     395                                         */
     396                                        $str_lang[$id] = str_replace("\r\n", "\n", $str_lang[$id]);
     397                                       
     398                                        /**
     399                                         * protection dans les balises genre <a href="..." ou <img src="..."
     400                                         * cf inc/filtres
     401                                         */
     402                                        if (preg_match_all(_TYPO_BALISE, $str_lang[$id], $regs, PREG_SET_ORDER)) {
     403                                                foreach ($regs as $reg) {
     404                                                        $insert = $reg[0];
     405                                                        // hack: on transforme les caracteres a proteger en les remplacant
     406                                                        // par des caracteres "illegaux". (cf corriger_caracteres())
     407                                                        $insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
     408                                                        $str_lang[$id] = str_replace($reg[0], $insert, $str_lang[$id]);
     409                                                }
     410                                        }
     411                                       
     412                                        /**
     413                                         * Protéger le contenu des balises <html> <code> <cadre> <frame> <tt> <pre>
     414                                         */
     415                                        define('_PROTEGE_BLOCS_HTML', ',<(html|code|cadre|pre|tt)(\s[^>]*)?>(.*)</\1>,UimsS');
     416                                        if ((strpos($str_lang[$id],"<")!==false) && preg_match_all(_PROTEGE_BLOCS_HTML, $str_lang[$id], $matches, PREG_SET_ORDER)) {
     417                                                foreach ($matches as $reg) {
     418                                                        $insert = $reg[0];
     419                                                        // hack: on transforme les caracteres a proteger en les remplacant
     420                                                        // par des caracteres "illegaux". (cf corriger_caracteres())
     421                                                        $insert = strtr($insert, _TYPO_PROTEGER, _TYPO_PROTECTEUR);
     422                                                        $str_lang[$id] = str_replace($reg[0], $insert, $str_lang[$id]);
     423                                                }
     424                                        }
     425                                       
     426                                        /**
     427                                         * On applique la typographie de la langue
     428                                         */
     429                                        $str_lang[$id] = $typographie($str_lang[$id]);
     430                                       
     431                                        /**
     432                                         * On remet les caractères normaux sur les caractères illégaux
     433                                         */
     434                                        $str_lang[$id] = strtr($str_lang[$id], _TYPO_PROTECTEUR, _TYPO_PROTEGER);
     435                                       
     436                                        $str_lang[$id] = unicode_to_utf_8(
     437                                                html_entity_decode(
     438                                                        preg_replace('/&([lg]t;)/S', '&amp;\1',$str_lang[$id]),
     439                                                        ENT_NOQUOTES, 'utf-8')
     440                                        );
     441                                       
     442                                        /**
     443                                         * Calcul du nouveau md5
     444                                         */
    346445                                        $md5 = md5($str_lang[$id]);
    347446                                        if ($md5 == $existant[$id])
Note: See TracChangeset for help on using the changeset viewer.