Changeset 42241 in spip-zone


Ignore:
Timestamp:
Nov 12, 2010, 5:30:58 PM (10 years ago)
Author:
eric@…
Message:

Enfin ! Correction du cas où l'item de langue est complètement variable. On affiche bien la variable et les lignes concernées.
Correction d'un item de langue.

Location:
_plugins_/langonet
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/langonet/inc/langonet_verifier_items.php

    r38167 r42241  
    5151                        }
    5252                        if (preg_match_all($trouver_item, $texte, $matches)) {
    53                                 $utilises_brut['items'] = array_merge($utilises_brut['items'], $matches[2]);
    5453                                // On traite les cas particuliers ou l'item est entierement une expression ou une variable:
    5554                                // on duplique l'item dans le suffixe ce qui est en fait bien le cas
    56                                 if ((substr($matches[2][0], 0, 1) == "$") OR (substr($matches[2][0], 0, 2) == "'.") OR (substr($matches[2][0], 0, 2) == '".')) {
     55                                // On sauvegarde le matches[2] pour calculer les lignes concernees pus tard
     56                                $matches[4] = $matches[2];
     57                                $suffixe = preg_replace(',\s*,', '', $matches[2][0]);
     58                                if ((substr($suffixe, 0, 1) == "$") OR (substr($suffixe, 0, 2) == "'.") OR (substr($suffixe, 0, 2) == '".')) {
     59                                        $matches[2][0] = str_replace('$', '\$', $suffixe);
    5760                                        $utilises_brut['suffixes'] = array_merge($utilises_brut['suffixes'], $matches[2]);
    5861                                }
     
    6063                                        $utilises_brut['suffixes'] = array_merge($utilises_brut['suffixes'], $matches[3]);
    6164                                }
     65                                $utilises_brut['items'] = array_merge($utilises_brut['items'], $matches[2]);
    6266                                $utilises_brut['modules'] = array_merge($utilises_brut['modules'], $matches[1]);
    6367                                // On collecte pour chaque item trouve les lignes et fichiers dans lesquels il est utilise
    64                                 foreach ($matches[2] as $item_val) {
    65                                         $item_val = str_replace('$', '\$', $item_val);
    66                                         preg_match("#.{0,8}".$item_val.".{0,20}#is", $texte, $extrait);
    67                                         $item_tous[$item_val][$_fichier][$ligne][] = trim($extrait[0]);
     68                                foreach ($matches[4] as $_cle_val => $_item_val) {
     69                                        preg_match("#.{0,8}" . str_replace('$', '\$', $_item_val) . ".{0,20}#is", $texte, $extrait);
     70                                        $item_tous[$matches[2][$_cle_val]][$_fichier][$ligne][] = trim($extrait[0]);
    6871                                }
    6972                        }
     
    163166                                        // On ajoute ces cas aussi aux incertains (pas essentiel)
    164167                                        if (!$item_trouve) {
    165                                                 if (substr($_valeur, 0, 1) == "$")
    166                                                         $_item = $_valeur;
    167                                                 else
    168                                                         $_item = substr($_valeur, 2, strlen($_valeur)-2);
     168                                                $_item = ltrim($_valeur, '\'".\\');
    169169                                                $item_peut_etre[] = $_item;
    170170                                                if (is_array($item_tous[$_valeur])) {
  • _plugins_/langonet/lang/langonet_fr.php

    r39548 r42241  
    103103        'message_ok_nonmais_definis_1' => 'L\'item de langue ci-dessous est utilis&eacute; correctement dans des fichiers du r&eacute;pertoire &laquo;<em>@ou_fichier@</em>&raquo; mais est d&eacute;fini dans un autre module que &laquo;<em>@module@</em>&raquo;. Nous vous invitons &agrave; le v&eacute;rifier&nbsp;:',
    104104        'message_ok_nonmais_definis_n' => 'Les @nberr@ items de langue ci-dessous sont utilis&eacute;s correctement dans des fichiers du r&eacute;pertoire &laquo;<em>@ou_fichier@</em>&raquo; mais sont d&eacute;finis dans un autre module que &laquo;<em>@module@</em>&raquo;. Nous vous invitons &agrave; les v&eacute;rifier un par un&nbsp;:',
    105         'message_ok_nonmaisnok_definis_0' => 'Les fichiers du r&eacute;pertoire &laquo;<em>@ou_fichier@</em>&raquo; n\'utilisent aucun item de langue incorrectement d&eacute;fini dans autre module que &laquo;<em>@module@</em>&raquo;.',
     105        'message_ok_nonmaisnok_definis_0' => 'Les fichiers du r&eacute;pertoire &laquo;<em>@ou_fichier@</em>&raquo; n\'utilisent aucun item de langue incorrectement d&eacute;fini dans un autre module que &laquo;<em>@module@</em>&raquo;.',
    106106        'message_ok_nonmaisnok_definis_1' => 'L\'item de langue ci-dessous est utilis&eacute; dans des fichiers du r&eacute;pertoire &laquo;<em>@ou_fichier@</em>&raquo; mais pas comme un item du module &laquo;<em>@module@</em>&raquo;. Etant donn&eacute; qu\'il n\'est pas d&eacute;fini dans son module de rattachement, nous vous invitons &agrave; le v&eacute;rifier&nbsp;:',
    107107        'message_ok_nonmaisnok_definis_n' => 'Les @nberr@ items de langue ci-dessous sont utilis&eacute;s dans des fichiers du r&eacute;pertoire &laquo;<em>@ou_fichier@</em>&raquo; mais pas comme des items du module &laquo;<em>@module@</em>&raquo;. Etant donn&eacute; qu\'ils ne sont pas d&eacute;finis dans leur module de rattachement, nous vous invitons &agrave; les v&eacute;rifier un par un&nbsp;:',
  • _plugins_/langonet/tests/verification.php

    r39312 r42241  
    2929        $essai = _T('test_item_2_'.$variable);
    3030        $essai = _T("langonet:$fond1");
    31         $essai = _T('langonet:'.$fond2);
     31        $essai = _T('langonet:' . $fond2);
    3232        $essai = _T("langonet:".$fond3);
    3333
Note: See TracChangeset for help on using the changeset viewer.