The setup
English language as default with no prefix
Romanian language with "ro" prefix
Language negociation: Path-Prefix with auto-negociation.
Browser language : Romanian

The anonymous user get the site interface in romanian language. ( even if they read or clicked on a link

that goes to an english article )

Front page displays is setup to display articles in current language + neutral langauge.
If anonymous users click on English link from Language switcher block from frontpage, nothing happens , they still get the romanian + neutral articles.

If they click on the english translation link from a romanian node they get the article content in english , but the site interface in romanian.
If they click again on English link, but from the Language switcher block, still in full node view, still nothing happens, interface is still in romanian.

This behaviour does not apply when browser language is english.

Caching was enabled first time I saw this, but I disable it, clear it and tried again more times. Same strange behaviour for browser with language different than english. Tried in opera, chrome, Firefox, IE.

I can provide a live link if requested.

Please excuse my bad english

Comments

zet’s picture

One more bug for the above multilanguage environement : Neither authenticated users, that have selected romanian as their default language from their account options, cannot switch to english.

- If a english article has a corespondent romanian translation they can click on English from the romanian node link and see the full view of the node ( node content) in english , but with romanian interface.

- If an english node has no romanian translation, there's no way for those users , or the anonymous users, to see the english content from the site that does not have corespondent translation.

lowfour’s picture

Subscribe... Chrome browser in spanish won't display default english language. Language Switch does not work. Using Path prefix with language fallback for language negotiation.

jaydublu’s picture

I've met this before - the problem is that you can't use the language code of the language set as default in the path to force it to display that language.

E.g. if default is English, you can't use http://domain.com/en

But if you don;t specify the language in the path, the negotiation settings says use language fallback, which if your browser is set to a non-English language will display in that language.

A possible solution would be for Drupal to accept the language code of the default language in the path, forcing the site into that language.

jaydublu’s picture

I've just come up with a possible workaround for this ... in /admin/settings/language/edit/en enter 'en' in the 'path prefix' field (default is blank) - this will enable /en as a path prefix

zet’s picture

Don't want to use the en prefix. That's not a solution to this bug, It's a compromise. The language selection should do what is designed to do, regardless of the browser settings or other things. Strange that's no better answer to this in 5 month.

jaydublu’s picture

There needs to be 'something' in the path to indicate you want to force the language, otherwise the language negotiation is behaving to specification. Without using a path prefix I don't know what a solution would be.

kevster’s picture

I agree zet, I have the same problem, I see this as a bug. The i18n module should explicitly say you need to use say en if your default lang is English, we set this site up as multilingual from the start and knowing what I know now would have set English with en prefix. Ours is set to En as default but with no prefix - this should be good enough for Drupal to realise no prefix = default lang.

We are now faced with possibly adding en for the default lang on a busy site already indexed in search engines so will need to do additional fixes e.g. 301s for all en pages.

robin monks’s picture

Version: 6.19 » 7.14
Priority: Normal » Major
Issue tags: +Needs backport to D6, +i18n

Bug also exists in latest 7.x; moving up to 7.14 and marking for backport.

Seems to be a major issue for multi-lingual sites, bumping up priority.

/Robin

tim.plunkett’s picture

Version: 7.14 » 8.x-dev
Issue tags: +Needs backport to D7

Can someone confirm that this is also broken in D8?

plach’s picture

Browser language detection is disabled for anonymous users in D7 and D8, hence the issue described in the OP cannot happen, because it's simply impossible to setup the system in the described way. For D6 I think this is a duplicate of #339958: Cached pages returned in wrong language when browser language used.

plach’s picture

Status: Active » Closed (duplicate)

Please reopen this for D7/D8 only if you have a list of steps to reproduce your issue on a fresh installation of the latest dev.