#2 Page d’accueil dans la langue par défaut

Suljettu
3 vuotta sitten avasi nas · 2 kommenttia
nas commented 3 vuotta sitten

Le comportement attendu de wikipp est de router vers la page d’accueil de la langue par défaut. La langue par défaut est définit par l’ordre dans lequel les locale sont déclarées dans le fichier de configuration :

locales : [ "fr_FR.UTF-8", "en_US.UTF-8" ]

Je n’ai pas ce comportement; bien que le problème soit contournable (via une redirection du serveur web) il faudra tout de même corriger ce bug

Le comportement attendu de wikipp est de router vers la page d’accueil de la langue par défaut. La langue par défaut est définit par l’ordre dans lequel les `locale` sont déclarées dans le fichier de configuration : ``` locales : [ "fr_FR.UTF-8", "en_US.UTF-8" ] ``` Je n’ai pas ce comportement; bien que le problème soit contournable (via une redirection du serveur web) il faudra tout de même corriger ce bug
nas commented 3 vuotta sitten
Omistaja

Les langages sont obtenu dans src/master.cpp :

cppcms::json::object langs=settings().get("wikipp.languages",cppcms::json::object());
for(cppcms::json::object::const_iterator p=langs.begin(),e=langs.end();p!=e;++p) {
    […]
}

et traité :

std::map<std::string,std::string>::const_iterator p = lang_map.find(std::string(res[1]));
    if(p==lang_map.end()) {
        page.redirect();
    }
    else {
        locale_name = p->first;
        context().locale(p->second);
        if(!dispatcher().dispatch(res[2]))
        page.redirect(locale_name);
    }
}

Cependant l’ordre n’est pas conservé dans les map

Source : https://stackoverflow.com/questions/4826404/getting-first-value-from-map-in-c

Les langages sont obtenu dans `src/master.cpp` : ``` cppcms::json::object langs=settings().get("wikipp.languages",cppcms::json::object()); for(cppcms::json::object::const_iterator p=langs.begin(),e=langs.end();p!=e;++p) { […] } ``` et traité : ``` std::map<std::string,std::string>::const_iterator p = lang_map.find(std::string(res[1])); if(p==lang_map.end()) { page.redirect(); } else { locale_name = p->first; context().locale(p->second); if(!dispatcher().dispatch(res[2])) page.redirect(locale_name); } } ``` Cependant l’ordre n’est pas conservé dans les `map` Source : https://stackoverflow.com/questions/4826404/getting-first-value-from-map-in-c
nas commented 3 vuotta sitten
Omistaja

Résolu par cbe37d1e00 qui ajoute un champs de configuration pour la langue par défaut

Résolu par cbe37d1e00a0bfe766f3200102577007468d24af qui ajoute un champs de configuration pour la langue par défaut
Sign in to join this conversation.
Ei merkkipaalua
No Assignees
1 osallistujaa
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
Peruuta
Tallenna
Sisältöä ei vielä ole.