Making cq-msm-lockable on jcr:title of Experience Page | Community
Skip to main content
April 12, 2023
Solved

Making cq-msm-lockable on jcr:title of Experience Page

  • April 12, 2023
  • 1 reply
  • 644 views

I would like to introduce manual enable/disable of inheritance for jcr:title property of experience pages (cq/experience-fragments/components/xfpage).
What I did for my override is
I created cq_dialog

<?xml version="1.0" encoding="UTF-8"?> <jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:granite="http://www.adobe.com/jcr/granite/1.0" xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0" jcr:primaryType="nt:unstructured" jcr:title="Experience Fragment" sling:resourceType="cq/gui/components/authoring/dialog" extraClientlibs="[cq.common.wcm,core.wcm.page.properties,cq.wcm.msm.properties,cq.wcm.msm.properties,cq.siteadmin.admin.properties,cq.experience-fragments.properties.tabs,cq.experience-fragments.target.properties,granite.contexthub.configuration]" mode="edit"> <content jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/container" granite:class="cq-dialog-content-page"> <items jcr:primaryType="nt:unstructured"> <tabs granite:class="cq-siteadmin-admin-properties-tabs" jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/tabs" maximized="{Boolean}true" size="L"> <items jcr:primaryType="nt:unstructured"> <basic jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/include" path="/mnt/overlay/ap-com/ui/components/structure/pages/xfpage/tabs/basic"/> </items> </tabs> </items> </content> </jcr:root>

And then under tabs/basic I created:

<?xml version="1.0" encoding="UTF-8"?> <jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:granite="http://www.adobe.com/jcr/granite/1.0" xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0" jcr:primaryType="nt:unstructured" jcr:title="Basic" sling:resourceType="granite/ui/components/coral/foundation/fixedcolumns"> <items jcr:primaryType="nt:unstructured"> <column jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/container"> <items jcr:primaryType="nt:unstructured"> <title jcr:primaryType="nt:unstructured" jcr:title="Title and Tags" sling:resourceType="granite/ui/components/coral/foundation/form/fieldset"> <items jcr:primaryType="nt:unstructured"> <title jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" cq:showOnCreate="{Boolean}true" fieldLabel="Title" name="./jcr:title" required="{Boolean}true"> <granite:data jcr:primaryType="nt:unstructured" cq-msm-lockable="jcr:title"/> </title> <pagename cq:hideOnEdit="{Boolean}true" cq:showOnCreate="{Boolean}true" jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textfield" fieldLabel="Name" name="pageName" validation="foundation.jcr.pagename"/> <description allowBulkEdit="{Boolean}true" cq:showOnCreate="{Boolean}true" jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/textarea" fieldLabel="Description" name="./jcr:description"/> <tags jcr:primaryType="nt:unstructured" sling:resourceType="cq/gui/components/coral/common/form/tagfield" allowBulkEdit="{Boolean}true" allowCreate="{Boolean}true" cq:showOnCreate="{Boolean}true" fieldLabel="Tags" multiple="{Boolean}true" name="./cq:tags"> </tags> <hideVariation jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/checkbox" name="./cq:xfShowInEditor" fieldDescription="The variation cannot be used on web pages." text="Hide in Editor" value="{Boolean}false"> </hideVariation> <charset jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/coral/foundation/form/hidden" allowBulkEdit="{Boolean}true" ignoreData="{Boolean}true" name="_charset_" value="utf-8"/> </items> </title> </items> </column> </items> </jcr:root>

However after deployment child that has connected source for live copy doesn't introduce "lock" icon on Title property.
Exactly same configuration worked properly for extension of core/wcm/components/page

 

Is there something missing?

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Siva_Sogalapalli

@mb_idw I think you didn't miss anything, but unfortunately, it's the behaviour with OOTB XFs and page properties level inheritance doesn't work for XF Live copy variation even though we set granite:data node at the dialog level.

 

 

1 reply

Siva_Sogalapalli
Community Advisor
Siva_SogalapalliCommunity AdvisorAccepted solution
Community Advisor
April 12, 2023

@mb_idw I think you didn't miss anything, but unfortunately, it's the behaviour with OOTB XFs and page properties level inheritance doesn't work for XF Live copy variation even though we set granite:data node at the dialog level.