Highlighted

Add Tab to Touch UI Page Properties

bob_smith11

27-05-2016

I am trying to get adding new tabs and removing tabs/items in Page Properties working.

So far I have read through this similar question: http://help-forums.adobe.com/content/adobeforums/en/experience-manager-forum/adobe-experience-manage...
Which lead me to these Adobe links and the github example:
https://docs.adobe.com/docs/en/aem/6-1/author/page-authoring/managing-pages.html#Creating%20a%20New%...
https://docs.adobe.com/docs/en/aem/6-1/develop/extending/customizing-page-properties/page-properties...
https://github.com/Adobe-Marketing-Cloud/aem-authoring-extension-page-dialog/blob/master/src/main/co...

I have copied the github example of a .context.xml for the page's Page Properties and it is not hiding anything. I also replaced cq:showOnCreate="{Boolean}false" with cq:hideOnEdit="{Boolean}true" like the previous adobe help forum suggested and this does not work either.

How do I hide and show items?

Also, in the past with Classic UI we were able to do something like this to include more tabs:

<sample jcr:primaryType="cq:Widget" path="/apps/company/components/Pages/basePage/sample_tab.infinity.json" xtype="cqinclude"/>

How do I add new tabs in Touch UI with something similar to infinity.json? Granite include?

Replies

Highlighted

smacdonald2008

28-05-2016

You are correct - there is a lack of documentation on this use case. I will check with Adobe people on this use case.

I want to see if anyone has written about it or sample on this.  

Highlighted

BigT168

09-02-2017

Not sure if you get it working.

I try to add a region tab in the page properties, here is the code:

<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/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">
    <content jcr:primaryType="nt:unstructured">
        <items jcr:primaryType="nt:unstructured">
            <tabs jcr:primaryType="nt:unstructured">
                <items jcr:primaryType="nt:unstructured">
                    <basic jcr:primaryType="nt:unstructured">
                        <items jcr:primaryType="nt:unstructured">
                            <column jcr:primaryType="nt:unstructured">
                                <items jcr:primaryType="nt:unstructured">
                                    <title jcr:primaryType="nt:unstructured">
                                        <items jcr:primaryType="nt:unstructured">
                                            <title
                                                jcr:primaryType="nt:unstructured"
                                                sling:orderBefore="pagename"
                                                fieldLabel="Title (in first position!)"
                                                allowBulkEdit="true"/>
                                        </items>
                                    </title>
                                    <moretitles
                                        cq:showOnCreate="{Boolean}false"
                                        jcr:primaryType="nt:unstructured"/>
                                </items>
                            </column>
                        </items>
                    </basic>
                    <advanced
                        cq:showOnCreate="{Boolean}false"
                        jcr:primaryType="nt:unstructured"/>
                    <advanced
                        jcr:primaryType="nt:unstructured"
                        sling:resourceType="granite/ui/components/foundation/include"
                        path="foundation/components/page/cq:dialog/content/items/tabs/items/advanced"/>
                    <region
                        cq:showOnCreate="{Boolean}true"
                        sling:orderBefore="advanced"
                        jcr:primaryType="nt:unstructured"
                        jcr:title="Region"
                        sling:resourceType="granite/ui/components/foundation/section">
                        <layout
                            jcr:primaryType="nt:unstructured"
                            sling:resourceType="granite/ui/components/foundation/layouts/fixedcolumns"
                            margin="{Boolean}false"/>
                        <items jcr:primaryType="nt:unstructured">
                            <column
                                jcr:primaryType="nt:unstructured"
                                sling:resourceType="granite/ui/components/foundation/container">
                                <items jcr:primaryType="nt:unstructured">
                                    <regionname
                                        cq:hideOnEdit="{Boolean}false"
                                        cq:showOnCreate="{Boolean}true"
                                        jcr:primaryType="nt:unstructured"
                                        sling:resourceType="granite/ui/components/foundation/form/textfield"
                                        fieldLabel="Name"
                                        name="regionName"
                                        validation="foundation.jcr.name"/>
                                </items>
                            </column>
                        </items>
                    </region>
                </items>
            </tabs>
        </items>
    </content>
</jcr:root>

Highlighted

Nupur_Jain

MVP

09-02-2017

Hi,

In Order to get the similar functionality like xtype:cqinclude , there is resourceType  "granite/ui/components/foundation/include" in Touch UI.

You can use it like this : 

  1. <sample
  2. jcr:primaryType="nt:unstructured"
  3. path="/apps/company/components/Pages/basePage/sample_tab"
  4. sling:resourceType="granite/ui/components/foundation/include"/>