<#-- # The main macro is addFileInputAndfilesBox. The macro addRequiredJsFiles is used to include required JavaScript and CSS files. # Others macros are private. --> <#-- # Add required CSS and JavaScript files to use asynchronous uploads. # This is only needed in Back Office or in FO page not served by the portal service. --> <#macro addRequiredJsFiles> <#macro addFileInput fieldName handler cssClass multiple=false submitBtnName="${handler.uploadSubmitPrefix}${fieldName}"> multiple="multiple" class="${cssClass!} ${handler.handlerName}" /> <#macro addFileInputImage fieldName handler cssClass multiple=false> multiple="multiple" class="${cssClass!} ${handler.handlerName}" /> <#macro addUploadedFilesBox fieldName handler listFiles submitBtnName="${handler.uploadDeletePrefix}${fieldName}" noJs=false> <#-- file removing --> <#assign has_files = false> <#if listFiles?? && listFiles?has_content> <#assign has_files = true>
style="display:none;" id="_file_deletion_label_${fieldName}">
<#assign file_index = 0> <#if has_files> <#assign index = 0 /> <#list listFiles as file> <#assign filename = ''> <#if file.name?? && file.name != ''> <#assign filename = file.name > <#else> <#if file.title?? && file.title != ''> <#assign filename = file.title > <#if file.size??> <#if file.size < 1024 > <#assign octetUnit="o"> <#assign octetNumber=file.size> <#elseif file.size < 1024 * 1024 > <#assign octetUnit="Ko"> <#assign octetNumber=file.size/1024> <#else > <#assign octetUnit="Mo"> <#assign octetNumber=file.size/(1024*1024)> <#if filename != '' >
<#assign file_index = file_index + 1>

<#-- Macro to add a file input for asynchronous and synchronous uploads. # @param fieldName The name of the field. # @param handler The associated handler service. # @param listUploadedFiles The list of files that have already been uploaded. Files must have a 'title' or a 'name' attribute. # @param inputCssClass The CSS class to add to the input if any. Default value is an empty string. # @param multiple True to use an HTML5 multiple file input, false otherwise. Default value if false. --> <#macro addFileInputAndfilesBox fieldName handler listUploadedFiles inputCssClass='' multiple=false> <@addFileInput fieldName=fieldName handler=handler cssClass=inputCssClass multiple=multiple /> <@addUploadedFilesBox fieldName=fieldName handler=handler listFiles=listUploadedFiles /> <#-- Macro to add a file image input for asynchronous and synchronous uploads. # @param fieldName The name of the field. # @param handler The associated handler service. # @param listUploadedFiles The list of files that have already been uploaded. Files must have a 'title' or a 'name' attribute. # @param inputCssClass The CSS class to add to the input if any. Default value is an empty string. # @param multiple True to use an HTML5 multiple file input, false otherwise. Default value if false. --> <#macro addFileInputImageAndfilesBox fieldName handler listUploadedFiles inputCssClass='' multiple=false> <@addFileInputImage fieldName=fieldName handler=handler cssClass=inputCssClass multiple=multiple /> <@addUploadedFilesBox fieldName=fieldName handler=handler listFiles=listUploadedFiles />