Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

User permission access for the layout mode for AEM page

suresh93
Level 1
Level 1

Can i disable the layout mode in AEM 6.5 for the particular content authors group who is able to edit the components of the page. if anyone have idea for disabling the layout mode..?

1 Accepted Solution
Arun_Patidar
Correct answer by
Community Advisor
Community Advisor

There is no configuration OOTB to show/hide different modes.

You can do it though using javascript.

1. Create a servlet to check current user group and return false if user is not part of layout group, otherwise true.

2. Create a clientlibs 'cq.authoring.dialog' with javscript, in javscript call above servlet and based on response hide layout option

 

Example :

$( document ).ready(function() {
    $.get("demo_servlet.json", function(data, status){
    //console.log("Data: " + data + "\nStatus: " + status);
    if(data === 'false'){
    	$('#selectlayer-popover .editor-GlobalBar-layerSwitcherPopoverContent .coral3-ButtonList-item[data-layer="Layouting"]').hide();
    }
  });
});

View solution in original post

2 Replies
hamidk92094312
Employee
Employee

You can use a custom rendering condition to overlay the standard action and impose specific conditions that must be fulfilled before it is rendered.

https://docs.adobe.com/content/help/en/experience-manager-64/developing/extending-aem/customizing-co...

Arun_Patidar
Correct answer by
Community Advisor
Community Advisor

There is no configuration OOTB to show/hide different modes.

You can do it though using javascript.

1. Create a servlet to check current user group and return false if user is not part of layout group, otherwise true.

2. Create a clientlibs 'cq.authoring.dialog' with javscript, in javscript call above servlet and based on response hide layout option

 

Example :

$( document ).ready(function() {
    $.get("demo_servlet.json", function(data, status){
    //console.log("Data: " + data + "\nStatus: " + status);
    if(data === 'false'){
    	$('#selectlayer-popover .editor-GlobalBar-layerSwitcherPopoverContent .coral3-ButtonList-item[data-layer="Layouting"]').hide();
    }
  });
});

View solution in original post