1

I have a parsys style component on my page containing several sub components of a specific type.

In the new Touch UI, I need to prevent an admin from dragging components out of this component and on to another parsys on the page. Similarly, I need to prevent components being dragged from elsewhere on the page onto my component. I still want dragging within my component to be enabled (reordering).

Unfortunately:

  • cq:editConfig > cq:listeners > beforechildinsert doesn't get fired when dragging on an existing component, so I can't use this to intercept.
  • cq:editConfig > cq:listeners > beforechildremove does not exist
  • cq:childEditConfig > cq:listeners > beforemove doesn't fire and is a known issue with AEM (CQ-24015)
  • allowedChildren/allowedParents don't work in the AEM6 Touch UI

Is there another alternative?

Community
  • 1
  • 1
Alasdair McLeay
  • 2,572
  • 4
  • 27
  • 50

1 Answers1

0

This can be solved in two ways

  1. create a custom parsys and in the rep policies of that parsys deny the write permissions to that admin. use this parsys instead the OOTB parsys .

  2. You can create a new componentgroup and put all the component of that parsys in the component group and after that go to the design path of your parsys and revoke permissions of this admin from this node.

amitdeol
  • 279
  • 1
  • 14
  • I still want the admin to be able to edit and reorder components within my custom parsys, just not drag them between this parsys and others on the page. Won't removing write permissions prevent any kind of edits? – Alasdair McLeay Sep 29 '14 at 14:18
  • if you are revoking the permission from design path then author can edit the existing component but he will not be able to add new component to this parsys. 2nd approach will work if you are not using any design dialog for any component. – amitdeol Oct 01 '14 at 05:36