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

Geschlossen
vor 3 Jahren von nas geöffnet · 2 Kommentare
nas hat vor 3 Jahren kommentiert

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 hat vor 3 Jahren kommentiert
Besitzer

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 hat vor 3 Jahren kommentiert
Besitzer

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
nas hat vor 3 Jahren geschlossen
Anmelden, um an der Diskussion teilzunehmen.
Kein Meilenstein
Niemand zuständig
1 Beteiligte
Fällig am

Kein Fälligkeitsdatum gesetzt.

Abhängigkeiten

Dieses Issue hat momentan keine Abhängigkeiten.

Laden…
Abbrechen
Speichern
Hier gibt es bis jetzt noch keinen Inhalt.