Para personalizar as imagens usadas em ações de rota, execute as etapas descritas em Etapas genéricas de personalização seguidas pelas etapas descritas neste artigo.
Adicione os estilos que definem imagens no CSS no seguinte local para as novas ações de rota:
/apps/ws/css/newStyle.css
Por exemplo: Adicione um novo estilo chamado myStyle1
conforme mostrado abaixo e carregue o arquivo de imagem myStyleIcon1.png
para a pasta /apps/ws/image
s usando um cliente WebDAV.
Para obter mais informações sobre o acesso ao WebDAV, consulte https://dev.day.com/docs/en/crx/current/how_to/webdav_access.html.
Preferir usar o nome do estilo para ser igual ao nome da ação de rota.
.myStyle1{
background-image: url('../images/myStyleIcon1.png');
}
Crie um pop-up de ação de lista de tarefa, consulte Criando código de espaço de trabalho AEM Forms. É necessário usar o pacote dev.
Copie /libs/ws/js/runtime/templates/task.html
para /apps/ws/js/runtime/templates/task.html
.
Se o nome do estilo CSS for igual ao nome da ação de rota proveniente do servidor, modifique o seguinte código em /apps/ws/js/runtime/templates/task.html
:
<%if(routeList == null){%>
<li>
<a href="javascript:void(0);" title="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%>" value="<%= availableCommands.directCommands[0]%>" data-action="route"><%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%></a>
</li>
<%}else{%>
<%for(var i = 0; i<availableCommands.directCommands.length; i++){%>
<li>
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}%>
<%}%>
To
<%if(routeList == null){%>
<li class="<%= availableCommands.directCommands[0]%>" alt="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0]+'.value')%>">
<a href="javascript:void(0);" title="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%>" value="<%= availableCommands.directCommands[0]%>" data-action="route"><%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%></a>
</li>
<%}else{%>
<%for(var i = 0; i<availableCommands.directCommands.length; i++){%>
<li class="<%= availableCommands.directCommands[i]%>" alt="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[i]+'.value')%>">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}%>
<%}%>
Se o nome do estilo CSS for diferente do nome da ação de rota proveniente do servidor, modifique o seguinte código em /apps/ws/js/runtime/templates/task.html
. Ele adiciona uma pilha das condições do servlet if-else
para mapear o estilo com o nome da ação de rota.
<%if(routeList == null){%>
<li>
<a href="javascript:void(0);" title="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%>" value="<%= availableCommands.directCommands[0]%>" data-action="route"><%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%></a>
</li>
<%}else{%>
<%for(var i = 0; i<availableCommands.directCommands.length; i++){%>
<li>
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}%>
<%}%>
To
<%if(routeList == null){%>
<li class="<%= availableCommands.directCommands[0]%>" alt="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0]+'.value')%>">
<a href="javascript:void(0);" title="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%>" value="<%= availableCommands.directCommands[0]%>" data-action="route"><%= $.t('taskaction.directcommand.'+availableCommands.directCommands[0])%></a>
</li>
<%}else{%>
<%for(var i = 0; i<availableCommands.directCommands.length; i++){%>
<%if(availableCommands.directCommands[i].equals("myAction1")){%>
<li class="myStyle1" alt="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[i]+'.value')%>">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}else if(availableCommands.directCommands[i].equals("myAction2")){%>
<li class="myStyle2" alt="<%= $.t('taskaction.directcommand.'+availableCommands.directCommands[i]+'.value')%>">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}%>
<%}%>
<%}%>
Copie /libs/ws/js/runtime/templates/taskdetails.html
para /apps/ws/js/runtime/templates/taskdetails.html
.
Se o nome do estilo CSS for igual ao nome da ação de rota proveniente do servidor, modifique o seguinte código em /apps/ws/js/runtime/templates/taskdetails.html
:
<%for (var i = 0; i < availableCommands.directCommands.length; i++) {%>
<li class="routeAction">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}%>
To
<%for (var i = 0; i < availableCommands.directCommands.length; i++) {%>
<li class="routeAction">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route">
<i class="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"/>
</a>
</li>
<%}%>
Se o nome do estilo CSS for diferente do nome da ação de rota proveniente do servidor, modifique o seguinte código em /apps/ws/js/runtime/templates/taskdetails.html
. Ele adiciona uma pilha de if-else
condições de servlet para mapear o estilo com o nome da ação de rota.
<%for (var i = 0; i < availableCommands.directCommands.length; i++) {%>
<li class="routeAction">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route"><%= availableCommands.directCommands[i]%></a>
</li>
<%}%>
To
<%for (var i = 0; i < availableCommands.directCommands.length; i++) {%>
<%if(availableCommands.directCommands[i].equals("myAction1")){%>
<li class="routeAction">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route">
<i class="myStyle1" value="<%= availableCommands.directCommands[i]%>" data-action="route"/>
</a>
</li>
<%}else if(availableCommands.directCommands[i].equals("myAction2")){%>
<li class="routeAction">
<a href="javascript:void(0);" title="<%= availableCommands.directCommands[i]%>" value="<%= availableCommands.directCommands[i]%>" data-action="route">
<i class="myStyle2" value="<%= availableCommands.directCommands[i]%>" data-action="route"/>
</a>
</li>
<%}%>
<%}%>
Abra /apps/ws/js/registry.js
para editar e procure pelo seguinte texto:
"text!/lc/libs/ws/js/runtime/templates/taskdetails.html"
Substitua o texto pelo seguinte:
"text!/lc/apps/ws/js/runtime/templates/taskdetails.html"