Skip to content
Snippets Groups Projects
reports.ftl 6.5 KiB
Newer Older
  • Learn to ignore specific revisions
  • Robert Goldmann's avatar
    Robert Goldmann committed
            <#import "../helpers/header.ftl" as header>
    
            <@header.globals/>
    
    		<@header.header "BudgetMaster - ${locale.getString('menu.reports')}"/>
    
            <@header.style "reports"/>
    
            <@header.style "globalDatepicker"/>
    
            <@header.style "collapsible"/>
    
    Robert Goldmann's avatar
    Robert Goldmann committed
            <#import "../helpers/navbar.ftl" as navbar>
    
            <@navbar.navbar "reports" settings/>
    
            <#import "../transactions/transactionsMacros.ftl" as transactionsMacros>
    
            <#import "../filter/filterMacros.ftl" as filterMacros>
    
            <main>
                <div class="card main-card background-color">
    
                    <#import "../helpers/globalDatePicker.ftl" as datePicker>
    
                    <@datePicker.datePicker currentDate "/reports"/>
    
                    <@header.content>
                        <br>
    
                        <div class="container">
    
                        <form name="NewReportSettings" action="<@s.url '/reports/generate'/>" method="post" onsubmit="return validateForm()">
                            <input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
    
                            <input type="hidden" name="ID" value="${reportSettings.getID()?c}"/>
    
    Robert Goldmann's avatar
    Robert Goldmann committed
                            <input type="hidden" name="date" value="${dateService.getLongDateString(currentDate)}"/>
    
                            <div class="row">
                                <div class="col s12 center-align">
    
                                    <@transactionsMacros.buttonFilter filterConfiguration.isActive()/>
    
                            <#-- settings -->
                            <div class="row">
                                <div class="col s12 center-align">
    
                                    <div class="headline-small text-default">${locale.getString("report.settings")}</div>
    
                            <div class="row">
                                <div class="col s12 m8 offset-m2">
                                    <div class="report-checkbox-container">
    
                                            <input type="checkbox" name="includeBudget" <#if reportSettings.includeBudget>checked="checked"</#if>>
    
                                            <span class="columnName-checkbox-label text-default">${locale.getString('report.checkbox.include.budget')}</span>
    
                                            <input type="checkbox" name="splitTables" <#if reportSettings.splitTables>checked="checked"</#if>>
    
                                            <span class="columnName-checkbox-label text-default">${locale.getString('report.checkbox.split.tables')}</span>
    
                                            <input type="checkbox" name="includeCategoryBudgets" <#if reportSettings.includeCategoryBudgets>checked="checked"</#if>/>
    
                                            <span class="columnName-checkbox-label text-default">${locale.getString('report.checkbox.inclue.categorybudgets')}</span>
    
                                </div>
                            </div>
                            <br>
    
                            <#-- columns -->
                            <div class="row no-margin">
                                <div class="col s12 center-align">
    
                                    <div class="headline-small text-default">${locale.getString("report.columns")}</div>
    
                                    <br>
                                    <#assign hint=helpers.getHintByLocalizationKey("hint.report.columns")/>
                                    <@header.hint hint=hint/>
    
                                </div>
                            </div>
                            <div class="row">
                                <div class="col s12 m8 offset-m2">
                                    <div id="columnNames">
    
                                        <#list reportSettings.getColumnsSorted() as column>
    
                                                    <input type="checkbox" class="columnName-checkbox" data-index="${column?index}" name="columns['${column?index}'].activated" <#if column.isActivated()>checked="checked"</#if>/>
    
                                                    <span class="columnName-label">${locale.getString(column.getLocalizationKey())}</span>
    
                                                <input type="hidden" name="columns['${column?index}'].ID" value="${column.getID()}"/>
    
                                                <input type="hidden" name="columns['${column?index}'].localizationKey" value="${column.getLocalizationKey()}"/>
                                                <input type="hidden" name="columns['${column?index}'].columnPosition" value=""/>
    
                            <#-- button generate -->
    
                            <div class="row valign-wrapper">
                                <div class="col s12 center-align">
    
                                    <@header.buttonSubmit name='buttonSave' icon='save' localizationKey='report.button.generate'/>
    
                    </@header.content>
    
    
                <@filterMacros.filterModal filterConfiguration/>
    
    Robert Goldmann's avatar
    Robert Goldmann committed
            <#import "../helpers/scripts.ftl" as scripts>
    
            <script src="<@s.url '/webjars/sortablejs/1.15.3/Sortable.min.js'/>"></script>
    
            <script src="<@s.url '/js/reports.js'/>"></script>
    
            <script src="<@s.url '/js/globalDatePicker.js'/>"></script>
    
            <script src="<@s.url '/js/filter.js'/>"></script>
    
    Robert Goldmann's avatar
    Robert Goldmann committed
            <script>document.cookie = "currentDate=${dateService.getDateStringNormal(currentDate)}";</script>