<#-- 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 comboSortedWithParams name default_value additionalParameters items > <#macro comboWithParamsAndLength name default_value additionalParameters items max_length > <#macro combo name default_value items > <@comboWithParams name="${name}" default_value="${default_value}" additionalParameters="" items=items /> <#macro comboSorted name default_value items > <@combo name="${name}" default_value="${default_value}" items=items?sort_by("name") /> <#macro radioImageList name default_value items inline=0> <#if inline=1> <#list items as item> <#else> <#list items as item>
<#macro checkboxList name default_values items inline=0> <#if inline=1> <#list items as item> <#else> <#list items as item> <#if item.checked >
<#else>
<#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=" />
<#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 ( paginator.pagesCount > 1 )> <#if ( paginator.pageCurrent - offsetPrev > 1 )>  #i18n{portal.util.labelFirst} <#if ( paginator.pageCurrent > 1 )>  #i18n{portal.util.labelPrevious} <#else>    <#if ( paginator.pageCurrent - offsetPrev > 1 )> ... <#list paginator.pagesLinks as link> <#if link.index == paginator.pageCurrent> ${link.name} <#else> ${link.name} <#if ( paginator.pageCurrent + offsetNext < paginator.pagesCount )> ... <#if ( paginator.pageCurrent < paginator.pagesCount )>  #i18n{portal.util.labelNext} <#if ( paginator.pageCurrent + offsetNext < paginator.pagesCount )>  #i18n{portal.util.labelLast} <#else>    <#macro paginationAdmin paginator combo=0 form=1 nb_items_per_page=nb_items_per_page showcount=1 showall=0>
<#if (paginator.pagesCount > 1) > <@paginationPageLinks paginator=paginator />
<#if form == 1 >
<@paginationItemCount paginator=paginator combo=combo nb_items_per_page=nb_items_per_page showcount=showcount showall=showall/>
<#if form == 1 >
<#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 /> <#macro paginationCombo paginator nb_items_per_page=nb_items_per_page showall=0> <#macro paginationItemCount paginator combo=0 nb_items_per_page=nb_items_per_page showcount=1 showall=0> <#-- Display combo --> <#if combo == 1 > <@paginationCombo paginator=paginator nb_items_per_page=nb_items_per_page showall=showall/> <#-- Display item count --> <#if showcount == 1 > <#if (paginator.labelItemCount)?? && paginator.labelItemCount?has_content> - ${paginator.labelItemCount} : ${paginator.itemsCount} <#macro item_navigation item_navigator> <#macro dataTable dataTableManager actionMacro="" tableClass="table table-striped table-condensed" caption=" " summary="data table" > <#if 0 < dataTableManager.items?size > <#if dataTableManager.enablePaginator>
<#if (dataTableManager.paginator.pagesCount > 1) > <@paginationPageLinks paginator=dataTableManager.paginator />
<@paginationItemCount paginator=dataTableManager.paginator combo=1 nb_items_per_page=dataTableManager.paginator.itemsPerPage?string />
<#list dataTableManager.listColumn as column> <#list dataTableManager.items as item> <#list dataTableManager.listColumn as column> <#if column.typeColumn = "STRING"> <#assign propName = "item." + column.parameterName> <#assign value = propName?eval> <#elseif column.typeColumn = "LABEL"> <#assign propName = "item." + column.parameterName> <#assign value = propName?eval> <#elseif column.typeColumn = "BOOLEAN"> <#assign propName = "item." + column.parameterName> <#assign value = propName?eval> <#if value?? && value> <#else> <#elseif column.typeColumn = "EMAIL"> <#assign propName = "item." + column.parameterName> <#assign value = propName?eval> <#elseif column.typeColumn = "ACTION"> <#if column.parameterName?? && column.parameterName != ""> <#assign macroName = column.parameterName> <#elseif actionMacro?? && actionMacro != ""> <#assign macroName = actionMacro> <#if macroName?? && macroName != "">
${caption}
#i18n{${column.titleKey}} <#if !(column.typeColumn = "ACTION") && column.sortable> <@sort jsp_url=dataTableManager.sortUrl attribute=column.parameterName />
${value!}#i18n{${value!}}#i18n{${column.labelTrue!}}#i18n{${column.labelFalse!}} <#if value?? && value != "">${value}<@.vars[macroName] item=item />
<#if dataTableManager.enablePaginator>
<#if (dataTableManager.paginator.pagesCount > 1) > <@paginationPageLinks paginator=dataTableManager.paginator />
<@paginationItemCount paginator=dataTableManager.paginator combo=0 nb_items_per_page=dataTableManager.paginator.itemsPerPage?string />
<#else> #i18n{portal.util.labelNoItem} <#macro filterPanel dataTableManager formClass="form-horizontal" > <#if dataTableManager.filterPanel.listFilter?? && 0 < dataTableManager.filterPanel.listFilter?size>
<#list dataTableManager.filterPanel.listFilter as filter>
<#if filter.filterType = "STRING"> <#elseif filter.filterType = "BOOLEAN"> checked="checked" /> <#elseif filter.filterType = "DROPDOWNLIST"> <#if filter.value??> <#assign filter_value = filter.value > <#else> <#assign filter_value = "" > <@combo name=dataTableManager.filterPanelPrefix+filter.parameterName default_value=filter_value items=filter.refList />
<#if dataTableManager.filterPanel.formUrl?contains("?")> <#assign dataTableResetUrl = dataTableManager.filterPanel.formUrl + "&" + dataTableManager.filterPanelPrefix + "resetFilters=true" /> <#else> <#assign dataTableResetUrl = dataTableManager.filterPanel.formUrl + "?" + dataTableManager.filterPanelPrefix + "resetFilters=true" />
<#-- 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}
<#-- Info messages handling --> <#if infos??> <#if infos?size > 0 >
x <#list infos as info > ${info.message}
<#macro fieldInputText i18nLabelKey inputName mandatory=false value="" maxlength=0 i18nHelpBlockKey='' cssClass='form-control'>
maxlength=${maxlength} /> <#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro fieldInputPassword i18nLabelKey inputName mandatory=false value="" maxlength=0 i18nHelpBlockKey='' cssClass='form-control'>
maxlength=${maxlength}> <#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro fieldInputWrapper i18nLabelKey inputName mandatory=false value="" maxlength=0 i18nHelpBlockKey='' cssClass='form-control'>
<#nested> <#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro fieldInputCalendar i18nLabelKey inputName mandatory=false value="" i18nHelpBlockKey='' cssClass='form-control' language='fr'>
 
<#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<@getDatePickerBootstrap idField=inputName language=language /> <#macro fieldInputCheckBox i18nLabelKey inputName value="" disabled=false checked=false i18nHelpBlockKey='' cssClass='' >
<#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro fieldInputRadioBox i18nLabelKey inputName value="" disabled=false checked=false i18nHelpBlockKey='' cssClass='' >
<#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro fieldInputCheckBoxInline inputName value="" disabled=false checked=false > <#macro fieldInputRadioBoxInline inputName value="" disabled=false checked=false > <#macro fieldInputCombo i18nLabelKey inputName items value="" mandatory=false i18nHelpBlockKey='' cssClass='form-control' >
<#assign params = "class='" + cssClass + "'" > <@comboWithParams name=inputName items=items default_value=value additionalParameters=params /> <#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro fieldTextArea i18nLabelKey inputName mandatory=false value="" maxlength=0 i18nHelpBlockKey='' cssClass='form-control'>
<#if i18nHelpBlockKey != ''>

#i18n{${i18nHelpBlockKey}}

<#macro actionButtons button1Name='' button2Name='' i18nValue1Key='portal.admin.message.buttonValidate' i18nValue2Key='portal.admin.message.buttonCancel' url1='' url2='' icon1='fa fa-check' icon2='fa fa-close' offset=3 > <#assign col = 11 - offset />
<#if url1 != ''>  #i18n{${i18nValue1Key}} <#else> <#if url2 != ''>  #i18n{${i18nValue2Key}} <#else> <#if button2Name != ''>
<#macro boxHeader i18nTitleKey>

#i18n{${i18nTitleKey}}

<#nested>
<#macro boxBody>
<#nested>
<#macro boxSized col i18nTitleKey boxClass='box-primary' >
<@boxHeader i18nTitleKey=i18nTitleKey />
<#nested>
<#macro rowBox boxClass='box-primary' col=12>
<#nested>
<#macro rowBoxHeader i18nTitleKey boxClass='box-primary' col=12> <@rowBox boxClass=boxClass col=col > <@boxHeader i18nTitleKey=i18nTitleKey />
<#nested>
<#macro headerButtons>
<#nested>
<#macro table>
<#nested>
<#macro tableHeadBodySeparator>