-
Type:
Service Pack Request
-
Status: Closed
-
Resolution: Fixed
-
Affects Version/s: 5.0.3
-
Fix Version/s: 5.0.4
-
Component/s: Share Application
-
Labels:None
-
Bug Priority:
-
ACT Numbers:
00612777 Premier
They found an error handling issue on 5.0.3 when users hide the "Recent Site" view mode. The Copy/Move dialog would still render the view instead of choosing to another view to render.
[Steps to reproduce]
1. In share-config-custom.xml, add the following under section <config evaluator="string-compare" condition="DocumentLibrary" replace="true"> to hide these views:
<!-- Document Library config section --> <config evaluator="string-compare" condition="DocumentLibrary" replace="true"> <hidden-picker-view-modes> <mode>VIEW_MODE_SITE</mode> <mode>VIEW_MODE_USERHOME</mode> <mode>VIEW_MODE_RECENT_SITES</mode> <mode>VIEW_MODE_FAVOURITE_SITES</mode> <mode>VIEW_MODE_SHARED</mode> </hidden-picker-view-modes> ... </config>
2. Start Alfresco and log into Share
3. Click on either Copy or Move action of any file
[Actual result]
The Copy/Move dialog still try to show the "Recent Site" view but not expanding its path, i.e. rendering empty panels, see image "Copy and Move with Recent Site hidden.png" attached.
[Expected result]
The Copy/Move dialog triggers path expansion of the first visible view when the "Recent Site" view mode is hidden. It shouldn't try to render the "Recent Site" view.
[Investigation]
I noticed that the global-folder.js is trying to handle this but doesn't trigger the path expansion once the default selection has been changed:
Original code
for (var i = 0, ii = modeButtons.length; i < ii; i++) { modeButton = modeButtons[i]; viewMode = parseInt(modeButton.get("name"), 10); modeButton.set("disabled", !(viewMode in allowedViewModes)); modeButton.setStyle("display", viewMode in allowedViewModes ? "block" : "none"); if (viewMode == this.options.viewMode) { if (modeButton.get("checked")) { // Will trigger the path expansion this.setViewMode(viewMode); } else { modeButton.set("checked", true); } } }
The following change by bringing "this.setViewMode(viewMode);" out of the if statement seemed to have fixed the issue:
for (var i = 0, ii = modeButtons.length; i < ii; i++) { modeButton = modeButtons[i]; viewMode = parseInt(modeButton.get("name"), 10); modeButton.set("disabled", !(viewMode in allowedViewModes)); modeButton.setStyle("display", viewMode in allowedViewModes ? "block" : "none"); if (viewMode == this.options.viewMode) { if (modeButton.get("checked")) { } else { modeButton.set("checked", true); } // Will trigger the path expansion this.setViewMode(viewMode); } }
See image "Copy and Move after proposed fix.png" after the proposed fix is in place.
- is clone of
-
MNT-15757 Copy/Move dialog's default selection should fall back to a non-hidden view mode
- Closed