<#-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more contributor license agreements. See the NOTICE file ~ distributed with this work for additional information ~ regarding copyright ownership. The ASF licenses this file ~ to you under the Apache License, Version 2.0 (the ~ "License"); you may not use this file except in ~ compliance with the License. You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, ~ software distributed under the License is distributed on an ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ~ KIND, either express or implied. See the License for the ~ specific language governing permissions and limitations ~ under the License. --> <#include "/WEB-INF/freemarker/common/globals.ftl"> <#import "/WEB-INF/freemarker/page/gadget_chrome_macros.ftl" as gadgetChrome> <#-- renderRegion This macro generates a region on the page which can contain draggable gadgets - regionIdx: the region index number on the page, used to generate the region name as "region_" and the index - widthPct: the width style attribute as a percentage --> <#macro renderRegion regionIdx widthPct> <#assign regionName = "region_${regionIdx?c}">
<#list page.getRegion(regionName).regionGadgetList as regionGadget> <@gadgetChrome.generateGadgetChrome regionGadget gadgetIdx "home" /> <#-- update the page-level count of gadgets --> <#assign gadgetIdx = gadgetIdx + 1>
<#-- The generateGadgetsDiv macro generates the "gadgets" div which is the main div content of a page Parameters: 1) regionWidthArray - an array of the sizes of the region widths, in percentages. Then number of items in the array will be the number of regions created 2) page - the main page object, needed to see if the page has zero gadgets in it --> <#macro generateGadgetsDiv regionWidthArray page>
<#if page.empty>
/view">Add gadgets to this page
<#-- generate a region with a width based on each array item using the renderRegion macro--> <#list regionWidthArray as regionWidth> <#assign regionIdxVal = regionWidth_index + 1> <@renderRegion regionIdx=regionIdxVal widthPct=regionWidth />