In a pre-3.5.1 multilingual site, create menu items of type text-separator
and external links
Associate the items to the various languages (EN/FR for example)
Upgrade to 3.5.1
Associated items remain associated
Associations break
In their place, in each language menu, you have a duplicate item (with the same name, ID, etc.) If you try to trash the duplicate, all copies get trashed.
Remove the associations and the items are returned to only being listed once.
Tried on multiple platforms, local and hosted, MAMP, native LAMP stack on Mac and PC
This problem also occurs on a fresh install of 3.5.1, multilingual. Adding associations to text-separators and external links generated multiple duplicates.
Category | ⇒ | Multilanguage |
How can you associate a menu seperator or an external link. That makes no
sense
On 9 May 2016 1:54 pm, "zero-24" notifications@github.com wrote:
@infograf768 https://github.com/infograf768 can you have a look here?
This comment was created with the J!Tracker Application
https://github.com/joomla/jissues at issues.joomla.org/joomla-cms/10354
https://issues.joomla.org/tracker/joomla-cms/10354.—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#10354 (comment)
It may not make sense, but that doesn't mean that users haven't done so, and as it didn't break on pre 3.5.1, it should have some graceful fallback.
Furthermore, if a menu item shouldn't be associate able, then that tab should not be present in that menu item type.
Need backwards compatibility and forward streamlining.
These menu types can't be associated, as well alias menu item and heading
for example, our field disables them
name="menuitem"
type="menuitem"
label="COM_TEMPLATES_OPTION_SELECT_PAGE"
disable="separator,alias,heading,url"
showon="client_id:0"
onchange="this.form.submit();"
>
The associations tab is corrected in 3.6.0: it does not display for these types.<hr /><sub>This comment was created with the <a href="https://github.com/joomla/jissues">J!Tracker Application</a> at <a href="https://issues.joomla.org/tracker/joomla-cms/10354">issues.joomla.org/joomla-cms/10354</a>.</sub>
Status | New | ⇒ | Expected Behaviour |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2016-05-09 14:00:32 |
Closed_By | ⇒ | infograf768 |
Set to "closed" on behalf of @infograf768 by The JTracker Application at issues.joomla.org/joomla-cms/10354
Closing as it is expected behavior and tab is corrected in 3.6.0
Closing as it is expected behavior and tab is corrected in 3.6.0
I am guessing that breaking existing sites is not expected behaviour...or is it?
It may be the case that it is expected behaviour that associations are not to be made in certain cases, and it may be the case that the tab it is corrected in 3.6, but it breaks sites that had associated text-separators, aliases and external links in pre-3.5.1 (because, even if it makes no sense, Joomla ≤3.5 allowed this functionality).
Also, even in J3.5.1, you can still access the associations tab and associate these menu item types...but upon save, it will generate multiple duplicates of the menu item, and this is not only confusing, but in using a framework such as Gantry 5 which has it's own custom menu manager that enhances the core joomla menu system, it actually breaks the site.
Some mechanism needs to be put in place to detect and resolve these issues when someone upgrades to J3.5.1 or prevent them from saving associations for these menu items if someone has gone through and associated them.
Ah so this is not a joomla issue but a gantry issue
No, it is a Joomla issue...because the problem is generated by Joomla when you upgrade. It affects not just gantry but many other 3rd party menu enhancements which expect to only have a single item per ID, not multiple items per ID. See this screenshot. This is the Joomla core menu manager after upgrading a site from J3.5 to J3.5.1 which had associations for text-separator items.
https://www.dropbox.com/s/21xg7sjj0pdniuv/Screenshot%202016-05-09%2011.32.15.png?dl=0
Do you consider having the menu item "Features" which is a text-separator
with ID of 246
in the above screenshot to be normal/expected behaviour?
@infograf768 does #9929 resolve the issue of multiple alias/text-separator/external-url menu items that get automatically created when upgrading from Joomla ≤3.5 to Joomla 3.5.1?
At present, when upgrading, the menu gets automatically populated with one duplicate for each association, and resolving this requires going back into each language and one by one removing the associations. For example, if you have a 4-language site with EN, DE, FR and IT, you need to remove the associations in the EN menu items that point to FR, DE, IT, then go into the FR menu item and remove the associations to DE and IT (EN association removed when you saved the EN menu) and then into the DE menu and remove the associations to IT. So it is a multi-step process.
No, the patch does not solve this. As this should never have been used, the patch prevents people from making such obvious errors. It is the first time I hear of someone who really used these associations and I wonder how this even could work.
It only works because of badly programmed non joomla extensions - really
not our problem
On 10 May 2016 at 16:02, infograf768 notifications@github.com wrote:
No, the patch does not solve this. As this should never have been used,
the patch prevents people from making such obvious errors. It is the first
time I hear of someone who really used these associations and I wonder how
this even could work.—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
#10354 (comment)
Brian Teeman
Co-founder Joomla! and OpenSourceMatters Inc.
http://brian.teeman.net/
The fact that Joomla's menu system allowed the associations, whether logical or not, whether obviously an error or not, is an issue and it has nothing to do with "badly programmed non joomla extensions".
This was core joomla functionality, and it was badly programmed joomla menu items that cause this to be an issue now that you have taken steps to fix it going forward...however, you are leaving a gapping hole in your system if you don't resolve this issue for backwards compatibility.
It's like saying that your past development errors leading to users being able to do something that they never should have been able to do in the first place is the fault of the users. That's not very community-friendly
Labels |
Added:
?
|
@infograf768 can you have a look here?
This comment was created with the J!Tracker Application at issues.joomla.org/joomla-cms/10354.