Skip to content

Instantly share code, notes, and snippets.

@UberNick
UberNick / gist:f6d4985f33dcde1f0928
Created June 25, 2014 23:17
Adobe LiveCycle Component build.xml modifications
<target name="package.dsc" description="Foo.jar" depends="compile">
<jar destfile="${deploy.dir}/Foo.jar">
<zipfileset dir="${classes.dir}" includes="**/*.class"/>
<zipfileset dir="${src.dir}" includes="**/*.xml,**/*.java"/>
<fileset dir="." includes="icons/**"/>
<fileset dir="." includes="lib/*.jar" excludes="lib/internal/adobe-livecycle-client.jar"/>
<!-- Include just one file explicitly -->
<zipfileset dir="${adobe.thirdparty.dir}" includes="axis.jar" />
<%@include file="/apps/cardinal/global.jsp"%>
<%@ page import="com.ecwid.mailchimp.*,
com.ecwid.mailchimp.method.list.*" %><%
%>
<%
String apikey = currentStyle.get("apikey", "null");
String listid = properties.get("listid", "null");
MailChimpClient mailChimpClient = new MailChimpClient();
ListsMethod listsMethod = new ListsMethod();
<%@include file="/libs/foundation/global.jsp"%>
<%
String title = properties.get("jcr:title", "default title");
String text = properties.get("jcr:text", "default text");
//String title = properties.get("jcr:title", String.class); //defaults to null
%>
Title: <%= title %> <br/>
@UberNick
UberNick / myPage.jsp
Last active December 22, 2015 15:29
<%@include file="/libs/foundation/global.jsp" %>
<cq:include path="myComponent" resourceType="matelli/components/content/myComponent" />
<%
/** Option 1: Simply direct reference */
//String componentPath = "/content/myPage/jcr:content/myComponent"; //path to component
//Node node = resourceResolver.getResource(componentPath).adaptTo(Node.class);
//String title = node.getProperty("jcr:title").getString();
//String text = node.getProperty("jcr:text").getString();
<!-- Code snippet to inject all child pages into current page -->
<%
Iterator<Page> childPages = resourcePage.listChildren();
while (childPages.hasNext()) {
Page childPage = childPages.next();
String childPageUrl = childPage.getPath() + ".html";
%>
<sling:include path="<%= childPageUrl %>" />
<% } %>
<%@include file="/libs/foundation/global.jsp" %>
<!-- Load the sidekick only when viewing issue page on its own -->
<% if(currentPage.getPath().equals(resourcePage.getPath())) { %>
<cq:include script="/libs/wcm/core/components/init/init.jsp"/>
<% } %>
<%@include file="/libs/foundation/global.jsp"%>
Multifield Test Component<br/>
<%
// String[] images = properties.get("images", String[].class); // default is null
String[] images = properties.get("images", new String[0]); // default is empty array
for (int i = 0; i < images.length; i++) {
%>
<img src="<%= images[i] %>"></img><br/>
String defaultPostName = "";
//Below is logic to default posts based on page selectors.
//e.g. posts.{post-name.}.html
String selectorPath = currentPage.adaptTo(Resource.class).getResourceMetadata().getResolutionPathInfo();
String selectors[] = selectorPath.split("\\.");
if (selectors.length > 2) {
defaultPostName = selectors[1];
}
<%@include file="/libs/foundation/global.jsp"%>
<%@page import="java.lang.Iterable"%>
<%@page session="false" %>
<%
String bestsellerPath = "/content/geometrixx/en/products/bestsellers/jcr:content/par/";
Iterable<Resource> bestsellers = resourceResolver.getResource(bestsellerPath).getChildren();
int index = 0;
for (Resource bestseller : bestsellers) {
if (index % 2 == 0){
%>
<%@include file="/libs/foundation/global.jsp"%>
<%@page session="false" %>
<sling:include path="<%= componentContext.getResource().getPath() + ".ajax.html" %>" />
<button id="loadMoreButton" style="width:100%; height:35px">Load More</button>
<script type="text/javascript">
(function($){