#define SEARCH_LANG 20 /* how many langs should we parse? */
#ifdef ENABLE_NLS
-/* actual supported locales */
-const char *AvailLang[] = {
- "C",
- "bg_BG",
- "cs_CZ",
- "en_US",
- "da_DK",
- "de_DE",
- "el_GR",
- "en_GB",
- "es_ES",
- "et_EE",
- "fi_FI",
- "fr_FR",
- "hu_HU",
- "it_IT",
- "nl_NL",
- "pt_BR",
- "ru_RU",
- "zh_CN",
- "he_IL",
- "kk_KK",
- "ro_RO",
- "sl_SL",
- "tr_TR",
- ""
-};
+#include "language_list.h"
const char **AvailLangLoaded;
long nLocalesLoaded = 0;
*/
void tmplput_offer_languages(StrBuf *Target, WCTemplputParams *TP)
{
+#ifdef HAVE_USELOCALE
int i;
-#ifndef HAVE_USELOCALE
- char *Lang = getenv("LANG");
-
- if (Lang == NULL)
- Lang = "C";
-#endif
-
- if (nLocalesLoaded == 1) {
- wc_printf("<p>%s</p>", AvailLangLoaded[0]);
- return;
- }
wc_printf("<select name=\"language\" id=\"lname\" size=\"1\" onChange=\"switch_to_lang($('lname').value);\">\n");
for (i=0; i < nLocalesLoaded; ++i) {
-#ifndef HAVE_USELOCALE
- if (strcmp(AvailLangLoaded[i], Lang) == 0)
-#endif
wc_printf("<option %s value=%s>%s</option>\n",
((WC->selected_language == i) ? "selected" : ""),
AvailLangLoaded[i],
}
wc_printf("</select>\n");
+#else
+ wc_printf("%s", (getenv("LANG") ? getenv("LANG") : "C"));
+#endif
}
/*
wc_locales[nLocalesLoaded] = newlocale(
(LC_MESSAGES_MASK|LC_TIME_MASK),
AvailLang[i],
- wc_locales[0]
+ NULL
);
if (wc_locales[nLocalesLoaded] == NULL) {
- syslog(1, "locale for %s disabled: %s (domain: %s, path: %s)",
- AvailLang[i],
- strerror(errno),
- textdomain(NULL),
- bindtextdomain(textdomain(NULL), NULL)
- );
+ syslog(1, "locale for %s disabled: %s", AvailLang[i], strerror(errno));
}
else {
syslog(3, "Found locale: %s", AvailLang[i]);