! [spip-dev] modifs multilingue (SPIP 1.7.2pr3)

Salut,

* voici des modifs assez conséquentes sur le multilinguisme de l'espace
public ;

        - on revient aux bases de SPIP : un URL = un fichier cache ; les
          éléments introduits dans la 1.7.2pr1 risquaient en effet de
          nous entraîner dans des terrains marécageux. (Le code, d'ailleurs,
          est simplifié.)

        - pour les menus, notation plus intuitive : #MENU_LANG et
          #MENU_LANG_ECRIRE

        - une variable de personnalisation "$forcer_lang" pour un "saut
          automatique" vers l'URL &lang=xxxx (cas typique : la page de
          login)

        - les notations $multilang, |exposer, #ON_OFF, #FORMULAIRE_LANG
          et #FORMULAIRE_LANG_ECRIRE disparaissent.

* Par ailleurs, ajout de critères optionnels, marqués d'un point
  d'interrogation : comme par exemple {lang?} ou {id_secteur ?}.
  Ces critères ne prennent effet que si le contexte des variables
  correspondantes est défini.

        - du coup le fichier backend-dist.html est fortement simplifié,
          puisque ses boucles s'adaptent directement aux critères
          ?id_rubrique=nn et/ou ?lang=xx éventuellement passés dans l'URL.

          Les critères optionnels sont cumulables : avec une boucle
          <BOUCLE_x(ARTICLES){lang ?}{branche?}{par date}{inverse}{0,10}> la
          page #URL_SITE_SPIP/backend.php3?lang=fr&id_rubrique=91 ne donnera
          que les articles en français de la rubrique 91 (et de ses
          sous-rubriques).

En mixant les deux choses, on doit pouvoir faire des sites multilingues
assez surprenants -- mais il va encore falloir expérimenter pas mal : en
ajoutant quelques {lang?} dans certaines boucles bien choisies du sommaire
(dans les squelettes par défaut), on a déjà de jolis résultats, avec une
home page comportant toutes les langues, mais qu'il est possible de
spécialiser (la colonne du milieu seulement en créole si &lang=cpf figure
dans l'URL, etc.).

-- Fil

"Fil" wrote:
* voici des modifs assez conséquentes sur le multilinguisme de l'espace
public ;
- - -
        Aha! - je pensais bien que tout était étrangement silencieux.
- - -

les notations $multilang, |exposer, #ON_OFF, #FORMULAIRE_LANG
et #FORMULAIRE_LANG_ECRIRE disparaissent.
- - - -
        Je me perds : est-ce que c'est le filtre |exposer ou la balise
#EXPOSER (ou est-ce qu'il s'agit de la même chose)?

- - - -
En mixant les deux choses, on doit pouvoir faire des sites multilingues
assez surprenants
- - - -
        Je n'en vois pas encore les avantages, mais je suis plein de
confiance :slight_smile:

Paolo

        Je me perds : est-ce que c'est le filtre |exposer ou la balise
#EXPOSER (ou est-ce qu'il s'agit de la même chose)?

La balise #EXPOSER reste, elle remplace le filtre |exposer

-- Fil

Fil wrote:

ajout de critères optionnels, marqués d'un point
  d'interrogation : comme par exemple {lang?} ou {id_secteur ?}.
  Ces critères ne prennent effet que si le contexte des variables
  correspondantes est défini.
          Les critères optionnels sont cumulables : avec une boucle
          <BOUCLE_x(ARTICLES){lang ?}{branche?}{par date}{inverse}{0,10}> la
          page #URL_SITE_SPIP/backend.php3?lang=fr&id_rubrique=91 ne donnera
          que les articles en français de la rubrique 91 (et de ses
          sous-rubriques).

ça me fait penser à Pamela Anderson !
JL

Fil wrote:

Salut,

* voici des modifs assez conséquentes sur le multilinguisme de l'espace
public ;

J'étais en pr2, et je viens de passer en pr3 sur mon site local (sur EasyPhp1.7)

Partie privée/Partie publique, j'ai toujours ce message en début de page :

Notice: Undefined index: spip_admin in c:\work\ncrambouillet.info\web\spip\ecrire\inc_version.php3 on line 52

Notice: Undefined index: spip_session in c:\work\ncrambouillet.info\web\spip\ecrire\inc_version.php3 on line 52

C'est grâve doc ?

Partie privée/Partie publique, j'ai toujours ce message en début de page :

Notice: Undefined index: spip_admin in
c:\work\ncrambouillet.info\web\spip\ecrire\inc_version.php3 on line 52

Notice: Undefined index: spip_session in
c:\work\ncrambouillet.info\web\spip\ecrire\inc_version.php3 on line 52

C'est grâve doc ?

Je pense que ta version de php a un error_reporting trop strict ; mais
peux-tu tenter cette correction ligne 52 :
                        if ($ignore_variables_contexte AND isset($is_contexte[$key]))

-- Fil

Fil wrote:

Je pense que ta version de php a un error_reporting trop strict ; mais

A donf oui ! C'est ma plateforme de tests :slight_smile:

peux-tu tenter cette correction ligne 52 :
                        if ($ignore_variables_contexte AND isset($is_contexte[$key]))

Ca marche impec !
Je garde comme ca :wink: