Personnaliser un peu changer_langue()

RastaPopoulos <[email protected]>
Newsgroups gmane.comp.web.spip.devel
Message-ID <[email protected]>
La fonction changer_langue() fournie par SPIP teste si la langue
demandée existe, et ne la change que dans ce cas.

Mais pour ce test, la fonction force la fusion des langues réellement
choisies avec la liste de TOUTES les langues (d'ailleurs je pige pas
trop pourquoi : les langues choisies sont bien incluses dans la liste
complète non ?).
https://core.spip.net/projects/spip/repository/entry/spip/ecrire/inc/lang.php#L38

Mais du coup, impossible de l'utiliser quand on veut uniquement changer
pour une langue réellement utilisée, à moins de soi-même faire des tests
en amont, ce qui n'a pas de sens puisque c'est le but de cette fonction.

Par exemple Real3t a été obligé de dupliquer totalement des fonctions
pour le plugin Autolang :
https://zone.spip.net/trac/spip-zone/changeset/104770/spip-zone/_plugins_/autolang#file0

Que pensez-vous d'ajouter un argument à la fonction afin de choisir sur
quoi on fait le test (toutes les langues par défaut ou seulement celles
choisies, voir aussi une liste donnée explicitement) ?

Un truc du genre :
> function changer_langue($lang, $langues_ok='tout'|'choisies'|array)

À reporter dans utiliser_langue_visiteur() qui l'utilise :
> function utiliser_langue_visiteur($langues_ok='tout'|'choisies'|array)

-- 
RastaPopoulos
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.