? Pending

User tests: Successful: Unsuccessful:

avatar infograf768
infograf768
5 Dec 2018

Summary of Changes

The setLanguage() method has been deprecated for 4.0.
If not replaced we get a
Call to undefined method Joomla\CMS\Language\Language::setLanguage()
It should now be replaced by a service container method.
Thank you @laoneo as I was going to use new Language etc. to solve this.

Testing Instructions

Install a multilingual site. 2 languages are enough.
Create some menu items associations (no need to associate home pages).
Make sure the language filter plugin parameter Automatic Language Change is set to Yes.
Set your default site language to en-GB.
Set your default Super User site language to fr-FR, or de-DE, or fa-IR, as you like.

Load the en-GB home or any other en-GB menu item which has associated menu item in the user default language.
Login as Super User via the login module (set to display on all pages).

You should be redirected to the Super User default site language, whether from home or from a page loaded by a menu item associated to one in the Super User default site language

Expected result

The redirect works fine.

Actual result

Call to undefined method Joomla\CMS\Language\Language::setLanguage()

After patch

All should be fine.

Note:
The deprecation log on 3.x does not say anything about containers.
I guess it should be modified.
https://github.com/joomla/joomla-cms/blob/staging/libraries/src/Language/Language.php#L1234-L1246

avatar infograf768 infograf768 - open - 5 Dec 2018
avatar infograf768 infograf768 - change - 5 Dec 2018
Status New Pending
avatar joomla-cms-bot joomla-cms-bot - change - 5 Dec 2018
Category Front End Plugins
avatar infograf768 infograf768 - change - 6 Dec 2018
Labels Added: ?
avatar laoneo laoneo - close - 8 Dec 2018
avatar laoneo laoneo - merge - 8 Dec 2018
avatar laoneo laoneo - change - 8 Dec 2018
Status Pending Fixed in Code Base
Closed_Date 0000-00-00 00:00:00 2018-12-08 15:21:43
Closed_By laoneo

Add a Comment

Login with GitHub to post a comment