User tests: Successful: 2 carlitorweb, ggppdk Unsuccessful: 0
Pull Request for Issue # .
Currently, getModuleList()
method uses user access level IDs, client ID and menu item ID to generate cache ID. In some cases this can cause incorrect modules to be loaded when cache is enabled. This PR adds separators to ensure cache ID is unique.
Code review should suffice but if you want to test this in practice you'll have to create some user groups/view levels, users and menu items:
Create user with view level IDs 1, 1, 2, 303 (let's call it User1).
Create user with view level IDs 1, 1, 2, 3 (let's call it User2).
Create menu item with ID 300.
Create menu item with ID 30300.
Create a module. Set its access level to ID 303 and assign it to all menu items.
Enable Cache in Global Configuration.
a) Login with User1 credentials and enter menu item with ID 300. Log out. Login with User2 credentials. Enter menu item with ID 30300. Check if the module is shown.
b) Clear cache after previous test. Login with User2 credentials. Enter menu with item ID 30300. Logout. Login with User1 credentials. Enter menu item with ID 300. Check if the module is shown.
a) Module is not shown.
b) Module is shown.
a) Module is shown. (incorrect)
b) Module is not shown. (incorrect)
No.
Status | New | ⇒ | Pending |
Category | ⇒ | Libraries |
I have tested this item
Status | Pending | ⇒ | Ready to Commit |
Ready to Commit after two successful tests.
Status | Ready to Commit | ⇒ | Fixed in Code Base |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2018-07-16 22:38:14 |
Closed_By | ⇒ | mbabker | |
Labels |
Added:
?
|
I have tested this item✅ successfully on b0d9a93
This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/20273.