Properties

Name Returns Notes Example
hash String
recipe Recipe
queryTables List
builtTables List
funnelTriggerTypes List
funnelTriggerTypesFunction Object
funnelActionTypes List
funnelActionTypesFunction Object
captchaVerifyFn String
engagementScoringFactorType List
tableActionHandlers List
metricTypes List
browseResourcesFunction Object
appIndexersFunction Object
list List
sources List
menus List
initDate Date
initError Exception
engine ScriptEngine
onAppUpdated String
onAppEnabled String
onAppDisabled String
websiteMappings List
adminMappings List
adminPortletMappings List
templates List
websitePortletMappings List
profileTabMappings List
orgTabMappings List
triggerTypeMappings List
eventListeners List
profileTimelineMapping ProfileTimelineMapping
orgTimelineMapping ProfileTimelineMapping
mailboxMappings List
menuMappings List
appName String
repoName String
paymentProviderDetails PaymentProviderDetails
smsProviderDetails SmsProviderDetails
emailSenderDetails EmailSenderDetails
roles List
reports List
nodeTypes List
journeyFields List
journeyFieldsFunction Object
components List
repoAppSettings List
queries List
checkoutRuleTypes List
promotionMechanicTypes List

Methods

Name Returns Notes Example
findHash ( path ) String Find the hash of the file system item at the given path in this app
listFiles ( path ) Map Get the files (name and hash only) from a given directory within this repository branch. Note that ordering is not preserved.
promotionMechanicTypeBuilder ( id, title ) PromotionMechanicTypeBuilder Create a PromotionMechanicTypeBuilder. Set properties on it and then call build() to allow this app to inject promotion mechanic types
addFunnelTriggerType ( id, title, eventId ) FunnelTriggerTypeBuilder
addFunnelTriggerType ( id, title, eventId, list ) FunnelTriggerTypeBuilder
funnelTriggerTypesFunction ( fn ) ControllerMappingList
funnelActionTypesFunction ( fn ) ControllerMappingList
captcha ( captchaVerifyFn, portletTemplate, portletInitFunction ) void
addQuery ( path, indexNames, roleNames ) void
addTableDef ( id, desc, functionName ) RepoQueryTableDef See tutorial for details
Example:
controllerMappings
.addTableDef('inventoryLocation', 'Inventory Location Table', '_loadInventoryLocation')
.addHeader("Id")
.addHeader("Name/Code")
.addHeader("SKU")
.addHeader("Stock")
.addHeader("Created date")
.addHeader("Created by")
.addHeader("Update at");
addTableDef ( id, desc, functionName, headersFnName ) RepoQueryTableDef See tutorial for details
addTemplate ( parentPath, fileName, description, contentTemplate ) ControllerMappingList
addNodeType ( name, template ) ControllerMappingList
addActionNodeType ( name, template, jsMethod ) ControllerMappingList
addGoalNodeType ( name, jsTemplate, jsMethod ) ControllerMappingList
addEngagementScoringFactorType ( id, label, getProperties, findEngagementDatesFn ) ControllerMappingList
newTableActionHandlerBuilder ( ) JsTableActionHandlerBuilder Use this to add a new Table Action Handler, ie a type
newMetricTypeBuilder ( ) JsMetricTypeBuilder Returns a new JsMetricTypeBuilder to be used for contructing a JsMetricType
addJourneyField ( id, label, type, input, operators, evalFunction ) ControllerMappingList
addNumericJourneyField ( id, label, integer, evalFunction ) ControllerMappingList
addTextJourneyField ( id, label, evalFunction ) ControllerMappingList
addTextJourneyField ( id, label, evalFunction, fields ) ControllerMappingList
addFieldV2 ( id, label, returnType, parentTypes, evalFunction ) ControllerMappingList
addFieldV2 ( id, label, returnType, parentTypes, evalFunction, fields ) ControllerMappingList
addComponent ( compId, type, desc, jsFile, editorHtml, previewImage, renderTemplate, settingsTemplate ) ControllerMappingList
addComponent ( compId, type, desc, categories, jsFile, editorHtml, previewImage, renderTemplate, settingsTemplate ) ControllerMappingList
addComponent ( appId, compId, type, desc ) ControllerMappingList Simple method to add a component with one type and default options
addComponent ( appId, compId, type, desc, categories ) ControllerMappingList Simple method to add a component with one type and default options
addComponent ( appId, compId, types, desc, categories ) ControllerMappingList Simple method to add a component with one type and default options
getWebsocketMapping ( type ) RepoAppWebsocketMapping
smsProviderDetails ( ) SmsProviderDetailsBuilder Create a new SmsProviderDetailsBuilder. With this set properties and cal build to set the smsProviderDetails property.
automationTrigger ( ) TriggerTypeBuilder Use this to build an automation trigger
addEventListener ( eventType, enabled, function ) ControllerMappingList Use this to listen for Automation Trigger events.
 controllerMappings.addEventListener('ContactEvent', true, 'handleEvent');

 function handleEvent(page, event){
     log.info('Got event {}', event);
 }
 
addEventListenerForType ( eventClassName, enabled, function ) ControllerMappingList Allow specifying an event listener for a particluar class or interface.If the given eventType is an interface then all events of that type will be handled
setUserTimelineFunction ( func ) ControllerMappingList Sets the method to be called when generating the users timeline
controllerMappings.setUserTimelineFunction('generateTimelineItems');

 function generateTimelineItems(page, user, list){
  var streamItem = applications.stream.streamEventBuilder()
                                      .profile(user)
                                      .title('Example Title')
                                      .desc('Example Description')
                                      .date(formatter.now)
                                      .category('info')
                                      .inbound(true)
                                      .icon('fa-exclamation')
                                      .build();

  list.add(streamItem);

 }
renderPortlet ( p, currentUser, mapOfGroups, rootFolder, context, writer ) void
call ( execFn, args ) Object
addReport ( reportId, title, description, reportTemplate, function, attachmentContentType, attachmentExtension ) void
addReport ( reportId, title, description, reportTemplate, functionPtr, attachmentContentType, attachmentExtension ) void
journeyFieldsFunction ( fn ) ControllerMappingList Set the journey fields function, as either a closure or a function name This is for loading fields dynamically and can be used instead of, or as well as, the journeyFields collection (via the addXXXField methods) which is for statically defined fields Returns this for method chaining The function is called with two arguments - rootFolder and the field list
repoAppPaymentResult ( ) RepoAppPaymentResult Creates empty repoAppPaymentResult
To get full access to the Kademi Hub existing customers can login here, or new customers can register here.