Suis maudit ! (translation overriding)  Début

  • Concernant l'upgrade toujours (vers 1.2.3), et en particulier l'overriding des trad (ou surtout leur extension, pour ajouter des "constantes" à des templates overridés).

    J'ai lu attentivement le wiki sur le sujet (en particulier le How to Customize Translations).


    Chose étrange : si je duplique /modules/Profile/locale dans /config/locale, mon bloc langue me délivre maintenant 8 entrées (5 langues de /locale + les 3 langues existant pour Profile).

    Mon : Allemand | Anglais | Espagnol | Français | Italien
    est devenu : Allemand | Allemand | Anglais | Anglais | Espagnol | Français | Français | Italien

    Super ! ... Ce n'est pas encore trop grave, je peux toujours abandonner le bloc langue dynamique pour un bloc langue statique. Mais je pense que c'est un bug et je suis bien sûr preneur d'une solution (il ne semble pas avoir été répertorié).


    Bref, j'alterne entre optimisme et déception sur le sujet de cette montée de version sur laquelle je n'avance pas.

    laurent
  • Solution de contournement : déplacer "/locale/fr" dans "/config/locale/fr" ... mais cela me semble super "risquer" de vider "/locale" non ?

    Qu'en pensez-vous ? (cela ne risque-t-il pas de planter le noyau quelque part ?)

    Maintenant, si on regarde la fonction getInstalledLanguages() (/includes/ZLanguage.php), il semble qu'on ajoute un code langue à un tableau sans regarder s'il y est déjà).

    Si on remplace :

    Code

    if ($languageVariations) {
        $localeArray[] = $code;
    } else if (!strpos($locale, '-')) {
        $localeArray[] = $code;
    }

    par

    Code

    if ( ( $languageVariations || !strpos($locale, '-') ) && ( !in_array($code, $localeArray) ) ) {
        $localeArray[] = $code;
    }

    alors le bloc langue ne radote plus.

    Mais je ne sais pas si ça ne va pas exploser ailleurs icon_wink .

    Dois-je écrire à Drak (signataire du ZLanguage.php) pour suggérer la correction ?

    Laurent

    PS : c'est un grand mystère aussi sur le rôle de la variable pnConfigGetVar('language_bc'). C'est la 3ème option de settings / localisation : en anglais "Enable language variations" (et on pense au fr-be, de-au, ...) mais en français "Activer le changement de langue" (et on pense alors au changement de langue par l'utilisateur) ... dont le commentaire qui suit, en anglais comme en français est assez impénétrable.
  • 4 visiteurs

Données pour les 20 dernières minutes