<#ftl output_format="JSON"> <#-- The macro for generating view and template metadata for a new Group --> <#macro newGroup request uuid name objectIndex adminGroups="" memberGroups="" replaceable=true> { <#-- recipe section --> "objectType": "GROUP", "objectStatus": "NEW", "replaceable": ${replaceable?c}, "recipeObjectId": "GROUP-${objectIndex?c}", "templateForCreate": "createGroup.ftlx", "templateForReuse": "recipes/existingGroupsHelper.ftl", <#-- bindings section --> "uuid": "${uuid}", "currentVersionUuid": "${uuid}", "versionUuids": ["${uuid}"], <#if adminGroups?has_content> "adminGroups": ${adminGroups}, <#if memberGroups?has_content> "memberGroups": ${memberGroups}, "memberUsers": ["${request.getUserName()}"], <#-- i18n section --> "name": "${name?json_string}", "description": "${request.getTextWithKey("recordActionTemplateRecipe.object.group.description", request.application.name)?json_string}" } <#-- The macro for generating view and template metadata for an existing Group --> <#macro reusedGroup templateHelper recipeMetadata group recipeObjectId> { <#-- recipe section --> "objectStatus": "EXISTING", "replaceable": true, "recipeObjectId": "${recipeObjectId}", <#-- bindings section --> "uuid": "${group.getUuid()}", <#-- i18n section --> "name": "${group.getName()?json_string}", "description": "${group.getDescription()?json_string}" }