Expand my Community achievements bar.

Learn about Edge Delivery Services in upcoming GEM session
SOLVED

Scene7 Automatic Swatch Set Creation

Avatar

Level 1

I'm not sure if this is a possibility, but is there a feature in Scene7 to create swatch sets upon uploading assets? Say, for instance, I have an image named "ASW100-BK001.jpg" and a swatch asset named "ASW100-BK001_SW.jpg". Is there a way to configure Scene7 so that it recognizes that anything with "_SW" is a swatch and should be placed in a Swatch Set with "ASW100-BK001.jpg" with a specified naming convention? 

Thanks,

Veronica

1 Accepted Solution

Avatar

Correct answer by
Former Community Member

Hi Veronica,

You can try using api which will create swatch set.

some think like this

 

import com.day.cq.dam.commons.util.S7SetHelper;

import com.day.cq.dam.api.s7dam.set.SwatchSet;

//Creating swatchset

SwatchSet ss = S7SetHelper.createS7SwatchSet(Resource parent, String name, Map<String,Object> props)

//Adding asset to the swatch set

ss.add(Asset asset, Asset swatch) ;

Create a workflow process step with the above api which will create swatch set for every image upload in DAM. This is available in CQ 5.6.1

API - https://dev.day.com/docs/en/cq/current/javadoc/com/day/cq/dam/commons/util/S7SetHelper.html

-Maruthi

View solution in original post

1 Reply

Avatar

Correct answer by
Former Community Member

Hi Veronica,

You can try using api which will create swatch set.

some think like this

 

import com.day.cq.dam.commons.util.S7SetHelper;

import com.day.cq.dam.api.s7dam.set.SwatchSet;

//Creating swatchset

SwatchSet ss = S7SetHelper.createS7SwatchSet(Resource parent, String name, Map<String,Object> props)

//Adding asset to the swatch set

ss.add(Asset asset, Asset swatch) ;

Create a workflow process step with the above api which will create swatch set for every image upload in DAM. This is available in CQ 5.6.1

API - https://dev.day.com/docs/en/cq/current/javadoc/com/day/cq/dam/commons/util/S7SetHelper.html

-Maruthi

The following has evaluated to null or missing: ==> liqladmin("SELECT id, value FROM metrics WHERE id = 'net_accepted_solutions' and user.id = '${acceptedAnswer.author.id}'").data.items [in template "analytics-container" at line 83, column 41] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign answerAuthorNetSolutions = li... [in template "analytics-container" at line 83, column 5] ----