LAMP does not activate locales?
jeau last edited by girish
I installed MRBS with a LAMP application, it works fine. However, the dates are not displayed in French while the rest of the localization works. The locales are not activated in the container LAMP. Is there a workaround?
MRBS is a free, GPL, web application using PHP and MySQL/pgsql for booking meeting rooms or other resources.
.htaccessfile in the public folder, add the following line to the top. (If the
.htaccessfile does not exist, create it.)
php_value date.timezone 'Europe/Paris'
Of course, change the region to the one you need (I assumed Europe/Paris because you said French date. (Also, in that application, if you were talking about the dates not being displayed in the french language, it might not translate dates, or the french translation is not complete.)
It doesn't work any better. The timezone is configured in my application and the French translation is correct. On another server (except Cloudron) MRBS works without any problem. In fact, PHP setlocale has no effect.
# locale -a C C.UTF-8 POSIX
% locale -a C C.UTF-8 en_US.utf8 french fr_FR fr_FR@euro fr_FR.iso88591 fr_FR.iso885915@euro fr_FR.utf8 fr_FR.utf8@euro POSIX
@jeau Maybe you can fork the LAMP app and add the locales to it you need?
@jeau you are right no other locales are setup within the app package. We have to add this, maybe even in the app base image, so all apps have it.
I have created an issue at https://git.cloudron.io/cloudron/lamp-app/issues/14
@murgero please do not recommend creating forks of app packages, since that also means that any installation from the fork won't easily get updates.
@nebulon who said anything about him installing the fork, beyond testing forking allows for others to contribute to the open source project. He could have done the work to add the locales and you test and accept the merge request when it's done. Everybody benefits from forking. I should have been a bit more clear on that.
Okay, I could try to propose a solution before reporting the problem!
I could also ask on this forum
hi @jeau, I gave this a quick try. It seems that you have to set something like this in config.inc.php
$disable_automatic_language_changing = 1; $default_language_tokens = "fr";
I then get french:
@girish thank you, but the issue is the display of dates and not the strings that are displayed correctly in French (or other languages available). As said @nebulon the problem is caused by locales that are not available in the LAMP app.
@nebulon have created an issue at https://git.cloudron.io/cloudron/lamp-app/issues/14
Currently for the LAMP app, only POSIX locale is generated:
# locale LANG= LANGUAGE= LC_CTYPE="POSIX" LC_NUMERIC="POSIX" LC_TIME="POSIX" LC_COLLATE="POSIX" LC_MONETARY="POSIX" LC_MESSAGES="POSIX" LC_PAPER="POSIX" LC_NAME="POSIX" LC_ADDRESS="POSIX" LC_TELEPHONE="POSIX" LC_MEASUREMENT="POSIX" LC_IDENTIFICATION="POSIX" LC_ALL=
I wonder if it makes more sense to add the most common locales or make it configurable.
@jeau for your use-case, is it sufficient if you can generate the locale on your own and set it within the php app itself as an env variable, or does it have to be set system-wide?
@nebulon I think it's better to make the locales configurable. In my case, it would be perfect.
Do you have any news about this?
@jeau It looks like I closed https://git.cloudron.io/cloudron/lamp-app/issues/14 by mistake and this went off our radar. I have reopened it.