The permission "Use the Panels In-Place Editor with Page Manager" no longer has the expected effect. The description of the permission reads "Allows users with access to the In-Place editor to administer page manager pages. This permission is only needed for users without "use page manager" access." But as of the latest dev version, if a user's role has this permission but not the "Use Page Manager" permission, they are not able to customize or change layout with the IPE.
To reproduce:
- Install Drupal 7.50.
- Download and enable the latest dev versions of CTools, Panels and Panelizer, including Page Manager and the Panels IPE.
- Log in as an administrator.
- Assign all permissions to the administrator role.
- Create an editor role.
- Assign the following permissions to the editor role:
- Use the Panels In-Place Editor
- Change layouts with the Panels In-Place Editor
- Bypass access checks when using Panels In-Place Editor
- Use the Panels In-Place Editor with Page Manager
- Create a user with the editor role.
- Create a Page Manager page as a Panel variant with a path and a normal menu entry. Set the renderer to In-Place Editor.
- Save the Page Manager page.
- View the Page Manager page.
- While still logged in as an administrator, click the Customize this page IPE button.
- Add some content to the Page Manager page using the IPE and save it.
- Log out of the administrator account.
- Log in as the editor user.
- View the Page Manager page. Note you can see the IPE buttons at the bottom of the page.
- Click Customize this page.
- Note you see the JS alert "You are not authorized to access this page."
- Click OK to dismiss the alert.
- Note the IPE buttons do not reappear at the bottom of the page.
- Reload the page.
- Note the IPE buttons reappear.
- Click Change layout.
- Note you see the JS alert "You are not authorized to access this page."
- Click OK to dismiss the alert.
- Log out of the editor account.
- Log back in as an administrator.
- Assign the "Use Page Manager" permission to the editor role.
- Log out of the administrator account.
- Log back in as the editor.
- View the Page Manager page.
- Click the Customize this page button.
- Note you are now in the IPE interface.
- Add some content using the IPE and save it.
| Comment | File | Size | Author |
|---|---|---|---|
| #5 | panels-pm-ipe-2787103-5.patch | 693 bytes | dsnopek |
Comments
Comment #2
cboyden commentedThe code I tested this with includes the commit in #2785915: Panels permissions update causes access denied on page manager pages defined in code and also the latest CTools.
Comment #3
cboyden commentedComment #4
dsnopekTargetting for Panels 7.x-3.7.
We may need to implement a
hook_panels_ipe_access()on behalf of Page Manager or something like thatComment #5
dsnopekGah, this wasn't from the new IPE access hook, it's from Panels storage. Here's a patch that fixes it for me.
Comment #6
cboyden commentedThis is working for me on a vanilla Panels/PM/IPE site and also on a Panopoly child distribution.
Comment #8
japerryComment #10
adam3145 commentedI am having exactly this issue, using panels 7.x-3.7, panels in place editor. I am running drupal 7.50.
Testing with the steps above, I am still encountering this issue.
I tried to apply the patch, but because it is already committed it would not work.
Comment #11
tfpkiii commentedLike adam3145, I have the same issue with fully up-to-date (Drupal 7.50 Panels 7.x-3.7 - which contains the patch and other from previous threads) using Page Manager. What I am seeing is when using Page Manager to Add Content to a panel, I can reach the "Add content to Content" dialog box when creating a new Variant, but as soon as it is saved, attempting to add more items to any panel on the Page results in the "you are not authorized..." page. The new Variant approach seems to work only on Custom pages and not Existing or System pages. Any help would be appreciated - I had to regrade to Panels 3.5 to get this working for one project where time is critical.
Comment #12
cboyden commented@adam3145, I am unable to reproduce this issue using Drupal 7.51, Panels 3.7, and CTools 1.9 or 1.10.
@tfpkiii, it sounds like the problem you are having is in the Page Manager interface. This issue was about the IPE interface.
Comment #13
wranvaud commentedPossible duplicate https://www.drupal.org/node/2790499