mirror of
				https://github.com/firefly-iii/firefly-iii.git
				synced 2025-10-31 10:47:00 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			225 lines
		
	
	
		
			9.3 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
			
		
		
	
	
			225 lines
		
	
	
		
			9.3 KiB
		
	
	
	
		
			Twig
		
	
	
	
	
	
| {% extends './v1/layout/default' %}
 | |
| 
 | |
| {% block breadcrumbs %}
 | |
|     {{ Breadcrumbs.render(Route.getCurrentRoute.getName, accountIds, start, end) }}
 | |
| {% endblock %}
 | |
| 
 | |
| {% block content %}
 | |
| 
 | |
|     {# charts #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box" id="year-inc-exp">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'incomeVsExpenses'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body">
 | |
|                     <canvas id="income-expenses-chart" style="width:100%;height:400px;" height="400" width="100%"></canvas>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     {# balances and income vs. expense. #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'accountBalances'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body table-responsive no-padding" id="accountReport">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|         <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'incomeVsExpenses'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body table-responsive no-padding" id="incomeVsExpenseReport">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     {# block with income #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'income'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body table-responsive no-padding" id="incomeReport">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|         {# block with expenses #}
 | |
|         <div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'expenses'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body table-responsive no-padding" id="expenseReport">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     {# net worth #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'net_worth'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body">
 | |
|                     <canvas id="net-worth" style="width:100%;height:400px;" height="400" width="100%"></canvas>
 | |
|                 </div>
 | |
|                 <div class="box-footer">
 | |
|                     <small>
 | |
|                         {{ 'net_filtered_prefs'|_ }}
 | |
|                     </small>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
| 
 | |
|     {# This is the budget overview generated by budget period report #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'budgets'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body no-padding table-responsive" id="budgetPeriodReport">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
| 
 | |
|     {# This is the chart that belongs to the above overview. #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'chart'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body">
 | |
|                     <p id="budget_help" class="text-muted text-center">{{ 'budget_chart_click'|_ }}</p>
 | |
|                     <canvas id="budget_chart" style="width:100%;height:400px;" height="400" width="100%"></canvas>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     {# same thing but for categories (expenses) #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'categories'|_ }} ({{ 'expenses'|_ }})</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body no-padding table-responsive" id="categoryExpense">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     {# same thing but for categories (income) #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'categories'|_ }} ({{ 'income'|_ }})</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body no-padding table-responsive" id="categoryIncome">
 | |
|                 </div>
 | |
|                 {# loading indicator #}
 | |
|                 <div class="overlay">
 | |
|                     <i class="fa fa-refresh fa-spin"></i>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     {# and the same chart too! #}
 | |
|     <div class="row">
 | |
|         <div class="col-lg-12 col-md-12 col-sm-12">
 | |
|             <div class="box">
 | |
|                 <div class="box-header with-border">
 | |
|                     <h3 class="box-title">{{ 'chart'|_ }}</h3>
 | |
|                 </div>
 | |
|                 <div class="box-body">
 | |
|                     <p id="category_help" class="text-muted text-center">{{ 'category_chart_click'|_ }}</p>
 | |
|                     <canvas id="category_chart" style="width:100%;height:400px;" height="400" width="100%"></canvas>
 | |
|                 </div>
 | |
|             </div>
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
| {% endblock %}
 | |
| {% block styles %}
 | |
|     <link rel="stylesheet" href="v1/css/bootstrap-sortable.css?v={{ FF_VERSION }}" type="text/css" media="all" nonce="{{ JS_NONCE }}">
 | |
| {% endblock %}
 | |
| {% block scripts %}
 | |
| 
 | |
|     <script type="text/javascript" src="v1/js/lib/bootstrap-sortable.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
|     <script type="text/javascript" src="v1/js/lib/Chart.bundle.min.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
|     <script type="text/javascript" src="v1/js/ff/charts.defaults.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
|     <script type="text/javascript" src="v1/js/ff/charts.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
|     <script type="text/javascript" nonce="{{ JS_NONCE }}">
 | |
|         var year = {{ start.year }};
 | |
|         var month = {{ start.month }};
 | |
| 
 | |
|         // to report another URL:
 | |
|         var startDate = '{{ start.format('Ymd') }}';
 | |
|         var endDate = '{{ end.format('Ymd') }}';
 | |
|         var accountIds = '{{ accountIds }}';
 | |
| 
 | |
|         // report uri's
 | |
|         var opChartUri = '{{ route('chart.report.operations', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var netWorthUri = '{{ route('chart.report.net-worth', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
| 
 | |
|         // data uri's
 | |
|         var accountReportUri = '{{ route('report-data.account.general', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var incomeReportUri = '{{ route('report-data.operations.income', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var expenseReportUri = '{{ route('report-data.operations.expenses', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var incExpReportUri = '{{ route('report-data.operations.operations', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
| 
 | |
|         var budgetPeriodReportUri = '{{ route('report-data.budget.period', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var categoryExpenseUri = '{{ route('report-data.category.expenses', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var categoryIncomeUri = '{{ route('report-data.category.income', [accountIds, start.format('Ymd'), end.format('Ymd')]) }}';
 | |
|         var billReportUri = '';
 | |
| 
 | |
|     </script>
 | |
|     <script type="text/javascript" src="v1/js/ff/reports/all.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
|     <script type="text/javascript" src="v1/js/ff/reports/default/all.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
|     <script type="text/javascript" src="v1/js/ff/reports/default/multi-year.js?v={{ FF_VERSION }}" nonce="{{ JS_NONCE }}"></script>
 | |
| {% endblock %}
 |