mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-01-07 06:33:57 -06:00
111 lines
5.3 KiB
Twig
111 lines
5.3 KiB
Twig
{% extends "./layout/default.twig" %}
|
|
|
|
{% block breadcrumbs %}
|
|
{{ Breadcrumbs.renderIfExists(Route.getCurrentRoute.getName, budget, repetition) }}
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="row">
|
|
<div class="col-lg-9 col-md-9 col-sm-7">
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'overview'|_ }}</h3>
|
|
|
|
|
|
<!-- ACTIONS MENU -->
|
|
<div class="pull-right">
|
|
<div class="btn-group">
|
|
<button type="button" class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown">
|
|
{{ 'actions'|_ }}
|
|
<span class="caret"></span>
|
|
</button>
|
|
<ul class="dropdown-menu pull-right" role="menu">
|
|
<li><a href="{{ route('budgets.edit',budget.id) }}"><i class="fa fa-pencil fa-fw"></i> {{ 'edit'|_ }}</a></li>
|
|
<li><a href="{{ route('budgets.delete',budget.id) }}"><i class="fa fa-trash fa-fw"></i> {{ 'delete'|_ }}</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="box-body">
|
|
<canvas id="budgetOverview" style="width:100%;" height="400"></canvas>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">{{ 'transactions'|_ }}</h3>
|
|
</div>
|
|
{% include 'list/journals.twig' %}
|
|
</div>
|
|
</div>
|
|
<div class="col-lg-3 col-md-3 col-sm-5">
|
|
{% if limits|length == 1 %}
|
|
<p class="small text-center"><a href="{{ route('budgets.show',budget.id) }}">{{ 'showEverything'|_ }}</a></p>
|
|
{% endif %}
|
|
|
|
{% for limit in limits %}
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title"><a href="{{ route('budgets.show',[budget.id,limit.id]) }}">{{ limit.startdate.formatLocalized(monthFormat) }}</a>
|
|
</h3>
|
|
</div>
|
|
<div class="box-body">
|
|
<div class="row">
|
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
|
{{ 'amount'|_ }}: {{ limit.amount|formatAmount }}
|
|
</div>
|
|
<div class="col-lg-6 col-md-6 col-sm-6">
|
|
{{ 'spent'|_ }}: {{ limit.spent|formatAmount }}
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-lg-12 col-md-12 col-sm-12">
|
|
{% set overspent = limit.amount + limit.spent < 0 %}
|
|
|
|
{% if overspent %}
|
|
{% set pct = (limit.spent != 0 ? (limit.amount / (limit.spent*-1))*100 : 0) %} <!-- must have -1 here -->
|
|
<div class="progress progress-striped">
|
|
<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="{{ pct|round }}" aria-valuemin="0"
|
|
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
|
|
<div class="progress-bar progress-bar-danger" role="progressbar" aria-valuenow="{{ (100-pct)|round }}"
|
|
aria-valuemin="0" aria-valuemax="100" style="width: {{ (100-pct)|round }}%;"></div>
|
|
</div>
|
|
{% else %}
|
|
{% set pct = (limit.amount != 0 ? (((limit.spent*-1) / limit.amount)*100) : 0) %} <!-- must have -1 here -->
|
|
<div class="progress progress-striped">
|
|
<div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="{{ pct|round }}" aria-valuemin="0"
|
|
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
|
|
{% if limits|length == 1 %}
|
|
<p class="small text-center"><a href="{{ route('budgets.show',budget.id) }}">{{ 'showEverything'|_ }}</a></p>
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
|
|
{% endblock %}
|
|
{% block scripts %}
|
|
<script type="text/javascript">
|
|
var budgetID = {{ budget.id }};
|
|
{% if repetition.id %}
|
|
var repetitionID = {{ repetition.id }};
|
|
var year = {{ repetition.startdate.format('Y') }};
|
|
{% else %}
|
|
var year = {{ Session.get('start').format('Y') }};
|
|
{% endif %}
|
|
|
|
</script>
|
|
|
|
<script type="text/javascript" src="js/lib/Chart.bundle.min.js"></script>
|
|
<script type="text/javascript" src="js/global/charts.js"></script>
|
|
<script type="text/javascript" src="js/budgets.js"></script>
|
|
|
|
{% endblock %}
|