6.0.0-git
2021-01-18

[#5098] Login language selection doesn't stick
Summary Login language selection doesn't stick
Queue Horde Base
Queue Version 3.1.4
Type Bug
State Resolved
Priority 1. Low
Owners jan (at) horde (dot) org
Requester kris (at) kayell (dot) com
Created 2007-03-09 (5064 days ago)
Due
Updated 2007-05-08 (5004 days ago)
Assigned 2007-05-07 (5005 days ago)
Resolved 2007-05-08 (5004 days ago)
Milestone
Patch No

History
2007-05-08 18:42:43 Jan Schneider Assigned to Jan Schneider
State ⇒ Resolved
 
2007-05-08 18:34:56 kristian (dot) lance (at) crc (dot) ca Comment #16 Reply to this comment
Okay, I finally got a chance to look at the NLS.php file in vim and 
applied the patch manually.  Not sure why "patch" didn't like it, as 
the lines you specified match what's in the file.  Anyway, I switched 
back to LDAP authentication and now when I select Francais and log in, 
all of Horde's strings are properly translated to French without 
having to mess around with the query string.  I'll do some more 
testing, but so far this seems to have solved the problem.  Thanks, Jan.
2007-05-08 12:20:37 kristian (dot) lance (at) crc (dot) ca Comment #15 Reply to this comment
patching file NLS.php

Reversed (or previously applied) patch detected!  Assume -R? [n]

Apply anyway? [n]

Skipping patch.

patch unexpectedly ends in middle of line

3 out of 3 hunks ignored -- saving rejects to file NLS.php.rej



----



patching file NLS.php

Reversed (or previously applied) patch detected!  Assume -R? [n] y

Hunk #2 FAILED at 94.

patch unexpectedly ends in middle of line

Hunk #3 FAILED at 101.

2 out of 3 hunks FAILED -- saving rejects to file NLS.php.rej
2007-05-07 21:35:22 Jan Schneider Comment #14 Reply to this comment
Because the file is called NLS.php not nls.php. It's in lib/Horde/.
2007-05-07 19:22:50 kristian (dot) lance (at) crc (dot) ca Comment #13 Reply to this comment
Thanks Jan, but which version is this patch for?  I'm running the 
latest stable release according to Horde.org which is... 3.1.4.  The 
patch you posted doesn't get any hits in my nls.php file, which I've 
overwritten with nls.php.dist just to make sure it's unmodified.
2007-05-07 17:02:38 Jan Schneider Comment #12
Summary ⇒ Login language selection doesn't stick
Reply to this comment
2007-05-07 16:00:23 kristian (dot) lance (at) crc (dot) ca Comment #11 Reply to this comment
I just installed IMP, set up my IMAP server and made sure I could log 
in successfully.  Then I switched Horde's authentication to IMP.  Now 
when I log in and select Francais, all of Horde's and IMP's strings 
are correctly translated to French without having to add 
?new_lang=fr_FR to the query string.  This confirms that IMP is doing 
something right that Horde isn't on login, with respect to passing on 
information about the selected login language.
2007-05-07 15:34:53 kristian (dot) lance (at) crc (dot) ca Comment #10 Reply to this comment
I haven't set any preferences so far, so the preferred language and 
timezone say, "default."  I also have not modified the nls.php file or 
any other Horde source files.
2007-05-07 15:19:50 Jan Schneider Version ⇒ 3.1.4
 
2007-05-07 15:17:19 Jan Schneider Comment #9 Reply to this comment
And are you sure that you don't have a different language set in the 
preferences for the user that you are using for testing?
2007-05-07 15:08:15 kristian (dot) lance (at) crc (dot) ca Comment #8
New Attachment: horde-french-page-newlang.jpg Download
Reply to this comment
What I'm getting at here is that LDAP doesn't seem to be the problem.   
It doesn't matter if I use LDAP or SQL auth in Horde, only the "Last 
login" message is in French and everything else is in English.  If I 
add ?new_lang=fr_FR to the query_string then everything is translated 
perfectly for the remainder of my session until I log out.



When I said I switched from LDAP to IMAP authentication, what I 
actually did was switch Horde's authentication to "IMP".  The fact 
that this worked perfectly in French and English leads me to believe 
that the ?new_lang variable isn't being passed from Horde's login page 
to the session/frameset, but when IMP is used for authentication, it is.



Here's another screenshot, this time with ?new_lang=fr_FR added to the 
query string.



Please don't tell me you can't reproduce this.  I've done it about 200 
times now with at least a dozen configurations from barebone up, with 
exactly the same results.  This time I installed only Horde, but when 
IMP etc. are installed, their French strings aren't translated either 
until either I add ?new_lang=fr_FR to the query string or use IMP for 
Horde auth.
2007-05-07 15:06:03 Jan Schneider Comment #7
State ⇒ Feedback
Reply to this comment
Are you telling us that this is now happening regardless of the 
configured authentication backend?
2007-05-07 14:57:05 kristian (dot) lance (at) crc (dot) ca Comment #6
New Attachment: horde-french-page.jpg Download
Reply to this comment
This is what I did to reproduce this problem:



- install fresh copy of Fedora Core 6 i386 with PostgreSQL, Apache and 
PHP support

- download and untar Horde (latest) into /var/www/html

- run test.php and make sure all dependencies are met

- create the database and configure Horde to use it (both set for UTF-8)

- configure Horde to use LDAP v.3 (AD) server for authentication

- log out, and back in to test

- log out, select Francais and log back in

- see the attachment

- configure Horde to use SQL authentication

- create a user

- log out and back in as the new user to test

- log out, select Francais and log back in

- see the attachment
2007-04-13 15:19:22 Chuck Hagenbuch State ⇒ No Feedback
 
2007-03-22 13:37:57 kristian (dot) lance (at) crc (dot) ca Comment #5 Reply to this comment
I'll try again with a fresh install of Fedora Core, start up Apache 
and PostgreSQL, then configure and run Horde exactly as described in 
the INSTALL doc, just to make sure that nothing else is interfering.   
I'm wondering, though, if LDAP has a locale (it must) and if it's not 
set to UTF-8, assuming that Horde and its database are, would it 
confuse Horde...  This suspicion comes from the "Last login" line, 
which is full of crazy characters--the tell-tale sign of a 
locale/charset conflict--when I log in and select French from the 
login page with LDAP auth turned on.  I'll check it out.  Thanks!
Since noone else seems to have seen this before, and I can't
reproduce it, you're pretty much on your own to track this down
unfortunately.
2007-03-21 21:45:39 Jan Schneider Comment #4 Reply to this comment
Since noone else seems to have seen this before, and I can't reproduce 
it, you're pretty much on your own to track this down unfortunately.
2007-03-21 17:40:12 kristian (dot) lance (at) crc (dot) ca Comment #3 Reply to this comment
That's really odd. Can you please try a more recent Horde version?
I'm using the latest release version of Horde (3.1.4), and I've tried 
Horde Groupware 1.0 and Horde Groupware Webmail Edition 1.0, all with 
the same results.  This has been going on for a long time, and I'd 
suspected that there was a locale issue with the server support for 
French, until I went into nls.php and set the default as French.   
Then, every string in Horde was properly translated, but I couldn't 
log in with English anymore, because after logging in my language got 
lost again.  I would think that the authentication method, whatever it 
may be, would not affect the system once authenticated, but it appears 
(speculation) that the LDAP authentication mechanism is not forwarding 
all of the information from the login page to Horde once logged in.   
I've switched over to IMAP authentication for now, since that uses 
LDAP authentication, but I'd like to see this work using the LDAP 
directly.
2007-03-09 17:00:43 Jan Schneider Comment #2
State ⇒ Feedback
Reply to this comment
That's really odd. Can you please try a more recent Horde version?
2007-03-09 14:14:50 kris (at) kayell (dot) com Comment #1
Type ⇒ Bug
State ⇒ Unconfirmed
Priority ⇒ 1. Low
Summary ⇒ Login language selection doesn't stick with LDAP auth
Queue ⇒ Horde Base
Reply to this comment
On a fresh install of Horde or Horde Groupware (w/Gentoo, Apache2, 
PHP5), using the default authentication mechanism, the language I 
select when I log in is carried into my session, and Horde is 
displayed in the selected language as long as I haven't specified a 
preferred language in Options.



Switching the authentication to LDAP, however, seems to break this.   
The language I select at login, if not English,  is used only in the 
names of the applications, and not in any other text strings.  Also, 
the string that tells me when I last logged in, has a bunch of screwy 
characters in it--usually indicative of an encoding conflict.  I'm 
running Horde on a 100% UTF-8 webserver and database (PostgreSQL).



I'm only using my LDAP v3 ActiveDirectory server for authentication, 
not preferencing or anything else, so it would make sense that once 
the login credentials have been verified, everything else would work 
exactly as if I'd chosen any other authentication mechanism.  I've 
been able to reproduce this exact behavior on five servers, all 
running fairly recent (0-2 years old) versions of Gentoo/Fedora Core, 
Apache2, PHP4/5 and PostgreSQL 8.

Saved Queries