Image Gallery Component AEM - aem

I have a requirement to add multiple image (drag and drop) for a component.As of now am extending the image component.Is there any OOTB component available ? .Please provide me a solution to achieve the functionality.

CQ provides a xtype "slideshow", it might help you.
OOTB component slideshow("/libs/foundation/components/slideshow") uses slideshow xtype.
It only allows you to add multiple images and customizations need to be done as per requirement.
AEM toollbox providing StructuredMultiList xtype which is extension of slideshow xtype.StructuredMultiList allows us to add more fields to our slides.
Below link can be used as reference.
URL : https://github.com/Velir/AEM-Toolbox/tree/master/source/ui/src/main/content/jcr_root/apps/aemtoolbox/widgets/StructuredMultiList

Related

What is the replacement of html5smartimage xtype in touch UI

I have a need to allow the authors to be able to do image cropping while authoring. This was easily done using html5smartimage xtype in classic UI. However, in touch UI there seems no replacement for the same. Is there a way to achieve this.
Note: This requirement is for the authoring and cropping of the image in the page properties dialog, so the inplaceediting of image cant be used there.
only replacement available is resourceType - cq/gui/components/authoring/dialog/fileupload
with attribute useHTML5 = true
example can be found under - /apps/core/wcm/components/image/v1/image
cropping option is only availabe for inplace editing.

Add a property in the dam metadata in touch ui AEM 6.2

I have a use case.
While going to DAM Asset Dialog in AEM 6.2,I want to add a property rootPath: /etc/tags/geometrixx to the tags field.
I am using the concept of overlay and resourceMerger.
My dialog is under this
/libs/dam/content/schemaeditors/forms/default/items/tabs/items/tab1/items/col1/items/tags.
While Overlaying it in apps and add the property in it,it doesn't show anything.
Can anyone help me?
Just for testing i have replicated, and it works fine as expected
Actually you can't do that by overlaying the dialog, you'll need to rely in DAM Metadata Schemas to achieve that - https://experienceleague.adobe.com/docs/experience-manager-64/assets/administer/metadata-schemas.html?lang=en
From there, and if you want to persist these definitions in your code baseline, you can refer to the location where it gets stored - /conf/global/settings/dam/adminui-extension/metadataschema
Hope it helps

not able to register two plugins of touch-ui rte dialog

I am using the steps given in the URL to make a color-picker rte plugin
http://experience-aem.blogspot.in/2015/01/aem-6-sp1-touchui-richtext-editor-color-picker-plugin.html
and at the same time I am making another custom rte plugin to do some text modulation.
But only one of them is working using rte.coralui2 as categories.
and both icons are coming at the same location.
If I disable one js then another is working.
I have registered the plugin with different name and I have also used different variables.
I am not able to make the rte plugin button at different location.
Please suggest the possible solution.
it's possible you are overlaying rather than extending the rte.coralui2 category. I suspect your custom clientLibs are competing with each other and only one is available.
It seems like you are using the same steps provided in the blogpost for creating both the plugins and while doing that, you are using the below code twice with different icons :
if(items.indexOf(ExperienceAEM.TCP_UI_SETTING) == -1){
items.splice(3, 0, ExperienceAEM.TCP_UI_SETTING);
}
So, maybe, the icons are being added at the same place and only one of them is shown.
You should create ExperienceAEM.CuiToolbarBuilder Class only once and add both icons inside that class

How can I tag a component in AEM 6.1?

I need to know if is possible tag a component button like a 'CTA' (call to action).
In the Adobe documentation i found how tag a page but not a component
Thank in advance
tagging is supposed to be associated with content e.g. pages, assets etc. Components are more of part of code and would not be tagged. you can create component groups as pointed out by d33t.
You mean probably to add a component to a group? There are no tags for components. You can group one or more components by adding the following property to the component's node:
componentGroup="Your group"

What is a CQ5 overlay component?

I've been asked to create a CQ5 "overlay" component by simply copying the out-of-box component from /libs/foundation/components/flash to /apps/myproject/components/flash. My question is: what happens to the original - is it just ignored?
a CQ5 "overlay" leverages sling rules for resource resolving. if /libs/foundation/components/flash needs an overlay, you "overlay" the corresponding file at location /apps/foundation/components/flash/filename This will CHANGE how the foundation component behaves in all instances. And the existing sidekick component remains, but behaves differently.
If you have a NEW component at /apps/myproject/components/flash, it can inherit from the foundation component via sling:resourceSuperType on the new component. In that case, you have a new component in the sidekick. In your new component, you could use the same values for jcr:title, componentGroup, or you could change them to distinguish your component in the sidekick. If the title, componentGroups are the same, the sidekick can distinguish them with parenthesis around the webapp (foundation) vs (myproject). However, I have seen situations where it is impossible as an author to distinguish them.
It is not ignored. Both components can show up in the authors' sidekick -- one will say flash (foundation), the other flash (myproject). When one of these is used by an author CQ will instantiate appropriately. The usual rules apply for what shows up in the sidekick (group name, selected in design mode, etc.)
Just to clarify: overlay and flash are two different things.
Sample of overlay implementation: http://jquerytools.org/documentation/overlay/index.html
So if you were asked to create an Overlay component, copying a Flash one might not be the best idea.