#-- WARNING : be careful to white-space and lines break in FreeMarker macros.
# This macro template can be used to output white-space-sensitive formats (like RSS files).
# See http://dev.lutece.paris.fr/jira/browse/LUTECE-765
-->
<#include "util/standard/macro_standard.html" />
<#include "util/calendar/macro_datepicker.html" />
<#-- Do not remove this comment -->
<#macro comboWithParams name default_value additionalParameters items >
#macro>
<#macro comboSortedWithParams name default_value additionalParameters items >
#macro>
<#macro comboWithParamsAndLength name default_value additionalParameters items max_length >
#macro>
<#macro combo name default_value items >
<@comboWithParams name="${name}" default_value="${default_value}" additionalParameters="" items=items />
#macro>
<#macro comboSorted name default_value items >
<@combo name="${name}" default_value="${default_value}" items=items?sort_by("name") />
#macro>
<#macro radioImageList name default_value items >
<#list items as item>
<#if default_value="${item.code}">
<#else>
#if>
#list>
#macro>
<#macro checkboxList name default_values items >
<#list items as item>
<#if item.checked >
<#else>
#if>
#list>
#macro>
<#macro sort jsp_url attribute id="" >
<#if jsp_url?contains("?")>
<#assign sort_url = jsp_url + "&sorted_attribute_name=" + attribute + "&asc_sort=" />
<#else>
<#assign sort_url = jsp_url + "?sorted_attribute_name=" + attribute + "&asc_sort=" />
#if>
#macro>
<#macro pagination paginator >
<#assign nbLinkPagesToDisplay = 10 />
<#assign offsetPrev = nbLinkPagesToDisplay / 2 />
<#assign offsetNext = nbLinkPagesToDisplay / 2 />
<#if ( paginator.pageCurrent <= nbLinkPagesToDisplay - offsetPrev )>
<#assign offsetPrev = paginator.pageCurrent - 1 />
<#assign offsetNext = nbLinkPagesToDisplay - offsetPrev />
<#elseif ( paginator.pageCurrent + offsetNext > paginator.pagesCount )>
<#assign offsetNext = paginator.pagesCount - paginator.pageCurrent />
<#assign offsetPrev = nbLinkPagesToDisplay - offsetNext />
#if>
#macro>
<#macro paginationAdmin paginator combo=0 form=1 nb_items_per_page=nb_items_per_page >
<#if (paginator.pagesCount > 1) >
<@paginationPageLinks paginator=paginator />
#if>
<#if form == 1 >
#if>
#macro>
<#macro paginationPageLinks paginator >
<#assign nbLinkPagesToDisplay = 10 />
<#assign offsetPrev = nbLinkPagesToDisplay / 2 />
<#assign offsetNext = nbLinkPagesToDisplay / 2 />
<#if ( paginator.pageCurrent <= nbLinkPagesToDisplay - offsetPrev )>
<#assign offsetPrev = paginator.pageCurrent - 1 />
<#assign offsetNext = nbLinkPagesToDisplay - offsetPrev />
<#elseif ( paginator.pageCurrent + offsetNext > paginator.pagesCount )>
<#assign offsetNext = paginator.pagesCount - paginator.pageCurrent />
<#assign offsetPrev = nbLinkPagesToDisplay - offsetNext />
#if>
#macro>
<#macro paginationCombo paginator nb_items_per_page=nb_items_per_page>
${paginator.labelItemCountPerPage}
-
#macro>
<#macro paginationItemCount paginator combo=0 nb_items_per_page=nb_items_per_page>
<#-- Display combo -->
<#if combo == 1 >
<@paginationCombo paginator=paginator nb_items_per_page=nb_items_per_page/>
#if>
<#-- Display item count -->
<#if (paginator.labelItemCount)?? && paginator.labelItemCount?has_content>${paginator.labelItemCount} : #if>${paginator.itemsCount}
#macro>
<#macro item_navigation item_navigator>
#macro>
<#macro dataTable dataTableManager actionMacro="" tableClass="table table-striped table-condensed" caption=" " summary="data table" >
<#if 0 < dataTableManager.items?size >
<#if dataTableManager.enablePaginator>
#if>
${caption}
<#list dataTableManager.listColumn as column>
#i18n{${column.titleKey}}
<#if !(column.typeColumn = "ACTION") && column.sortable>
<@sort jsp_url=dataTableManager.sortUrl attribute=column.parameterName />
#if>
|
#list>
<#list dataTableManager.items as item>
<#list dataTableManager.listColumn as column>
<#if column.typeColumn = "STRING">
<#assign propName = "item." + column.parameterName>
<#assign value = propName?eval>
${value!} |
<#elseif column.typeColumn = "LABEL">
<#assign propName = "item." + column.parameterName>
<#assign value = propName?eval>
#i18n{${value!}} |
<#elseif column.typeColumn = "BOOLEAN">
<#assign propName = "item." + column.parameterName>
<#assign value = propName?eval>
<#if value?? && value>
#i18n{${column.labelTrue!}} |
<#else>
#i18n{${column.labelFalse!}} |
#if>
<#elseif column.typeColumn = "EMAIL">
<#assign propName = "item." + column.parameterName>
<#assign value = propName?eval>
<#if value?? && value != "">${value}#if> |
<#elseif column.typeColumn = "ACTION">
<#if column.parameterName?? && column.parameterName != "">
<#assign macroName = column.parameterName>
<#elseif actionMacro?? && actionMacro != "">
<#assign macroName = actionMacro>
#if>
<#if macroName?? && macroName != "">
<@.vars[macroName] item=item /> |
#if>
#if>
#list>
#list>
<#if dataTableManager.enablePaginator>
#if>
<#else>
#i18n{portal.util.labelNoItem}
#if>
#macro>
<#macro filterPanel dataTableManager formClass="form-horizontal" >
<#if dataTableManager.filterPanel.listFilter?? && 0 < dataTableManager.filterPanel.listFilter?size>
#if>
#macro>
<#-- Macro messages : display message block for errors or infos -->
<#macro messages errors=[] infos=[] errors_class="alert alert-danger" infos_class="alert alert-info" >
<#-- Error messages handling -->
<#if errors??>
<#if errors?size > 0 >
x
<#list errors as error >
${error.message}
#list>
#if>
#if>
<#-- Info messages handling -->
<#if infos??>
<#if infos?size > 0 >
x
<#list infos as info >
${info.message}
#list>
#if>
#if>
#macro>
<#macro fieldInputText i18nLabelKey inputName mandatory=false value="" maxlength=0 i18nHelpBlockKey='' cssClass=''>
#macro>
<#macro fieldInputCalendar i18nLabelKey inputName mandatory=false value="" i18nHelpBlockKey='' cssClass='' language='fr'>
<#if i18nHelpBlockKey != ''>
#i18n{${i18nHelpBlockKey}}#if>
<@getDatePicker idField=inputName language=language />
#macro>
<#macro fieldInputCheckBox i18nLabelKey inputName value="" checked=false i18nHelpBlockKey='' cssClass='' >
#macro>
<#macro fieldInputCombo i18nLabelKey inputName items value="" mandatory=false i18nHelpBlockKey='' cssClass='' >
#macro>
<#macro fieldTextArea i18nLabelKey inputName mandatory=false value="" maxlength=0 i18nHelpBlockKey='' cssClass=''>
#macro>