2013-02-08 13:07:27 +01:00
|
|
|
<!--
|
|
|
|
This file is part of Accountant.
|
|
|
|
|
|
|
|
Accountant is free software: you can redistribute it and/or modify
|
|
|
|
it under the terms of the GNU Affero General Public License as published by
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
|
|
|
|
Foobar is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU Affero General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU Affero General Public License
|
|
|
|
along with Accountant. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
-->
|
2013-01-07 18:42:02 +01:00
|
|
|
<!DOCTYPE html>
|
2013-02-07 15:00:31 +01:00
|
|
|
<html lang="fr" ng-app="$strap">
|
2013-01-07 18:42:02 +01:00
|
|
|
<head>
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Title -->
|
2013-01-07 18:42:02 +01:00
|
|
|
<title>Entries</title>
|
2013-01-25 22:20:38 +01:00
|
|
|
|
|
|
|
<!-- Bootstrap CSS -->
|
2013-01-07 18:42:02 +01:00
|
|
|
<link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen">
|
2013-01-25 22:20:38 +01:00
|
|
|
|
|
|
|
<!-- Bootstrap datepicker plugin CSS -->
|
2013-01-07 18:42:02 +01:00
|
|
|
<link href="datepicker/css/datepicker.css" rel="stylesheet" media="screen">
|
2013-01-25 22:20:38 +01:00
|
|
|
|
|
|
|
<!-- JQPlot CSS -->
|
2013-01-12 13:56:52 +01:00
|
|
|
<link href="jqplot/jquery.jqplot.min.css" rel="stylesheet" type="text/css">
|
2013-01-07 18:42:02 +01:00
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
<div class="container-fluid">
|
|
|
|
<div class="row-fluid">
|
|
|
|
<div class="span12">
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Navbar with accounts -->
|
2013-01-09 23:39:26 +01:00
|
|
|
<div class="navbar navbar-fixed-top">
|
2013-02-07 15:00:31 +01:00
|
|
|
<div class="navbar-inner" ng-controller="AccountController">
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Title -->
|
2013-01-09 23:39:26 +01:00
|
|
|
<a class="brand" href="#"> Comptes</a>
|
2013-01-13 00:30:40 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Account list -->
|
2013-02-07 15:00:31 +01:00
|
|
|
<div class="nav" ng-repeat="account in accounts">
|
2013-01-13 00:30:40 +01:00
|
|
|
<div class="btn-group">
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Account button -->
|
2013-02-07 15:00:31 +01:00
|
|
|
<button class="btn btn-nav" ng-class="accountClass(account)" ng-click="selectAccount(account)">{{account.name}} (<span ng-class="valueClass(account, account.current)">{{account.current}}</span> / <span ng-class="valueClass(account, account.pointed)">{{account.pointed}}</span>)</button>
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Dropdown button -->
|
2013-01-13 00:30:40 +01:00
|
|
|
<button class="btn btn-nav dropdown-toggle" data-toggle="dropdown"><b class="caret"></b></button>
|
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Dropdown menu -->
|
2013-01-13 00:30:40 +01:00
|
|
|
<ul class="dropdown-menu">
|
2013-02-07 15:00:31 +01:00
|
|
|
<li><a href="#" ng-click="editAccount(account)" bs-modal="'templates/account_edit.html'">Modifier</a></li>
|
|
|
|
<li><a href="#" bs-modal="'templates/account_remove.html'">Supprimer</a></li>
|
2013-01-13 00:30:40 +01:00
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- New account button -->
|
2013-01-13 00:30:40 +01:00
|
|
|
<div class="btn btn-nav">
|
2013-02-07 15:00:31 +01:00
|
|
|
<a bs-modal="'templates/account_new.html'" href="#"><i class="icon-plus"></i></a>
|
2013-01-13 00:30:40 +01:00
|
|
|
</div>
|
2013-02-07 15:00:31 +01:00
|
|
|
|
2013-01-09 23:39:26 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
2013-01-07 18:42:02 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Navbar with the months of the selected account -->
|
2013-01-09 23:39:26 +01:00
|
|
|
<div class="navbar navbar-fixed-bottom">
|
2013-02-07 15:00:31 +01:00
|
|
|
<div class="navbar-inner" ng-controller="MonthController">
|
|
|
|
<ul ng-repeat="month in months" class="nav">
|
|
|
|
<li ng-class="monthClass(month)"><a href="#" ng-click="selectMonth(month)">{{month.year}}-{{month.month}}</a></li>
|
2013-01-09 23:39:26 +01:00
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
2013-01-07 18:42:02 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Emtpy row with top margin to avoid data under the fixed top navbar -->
|
2013-01-13 00:48:09 +01:00
|
|
|
<div class="row-fluid" style="margin-top: 46px"></div>
|
2013-01-07 18:42:02 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Chart row -->
|
2013-01-13 00:48:09 +01:00
|
|
|
<div class="row-fluid">
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Sold evolution chart placeholder -->
|
2013-01-12 22:11:48 +01:00
|
|
|
<div class="span8">
|
2013-02-07 15:00:31 +01:00
|
|
|
<div id="entries-chart-placeholder"></div>
|
2013-01-12 22:11:48 +01:00
|
|
|
</div>
|
2013-01-07 18:42:02 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Expense category piechart -->
|
2013-01-12 22:11:48 +01:00
|
|
|
<div class="span4">
|
2013-02-07 15:00:31 +01:00
|
|
|
<div id="expense-categories-chart-placeholder"></div>
|
2013-01-12 16:36:33 +01:00
|
|
|
</div>
|
2013-01-12 22:11:48 +01:00
|
|
|
</div>
|
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Message placeholder -->
|
2013-01-13 00:48:09 +01:00
|
|
|
<div class="row-fluid">
|
2013-01-12 16:36:33 +01:00
|
|
|
<div id="message-placeholder"></div>
|
2013-01-12 22:11:48 +01:00
|
|
|
</div>
|
2013-01-12 13:56:52 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Row with entry table -->
|
2013-02-07 15:00:31 +01:00
|
|
|
<div class="row-fluid" ng-controller="EntryController">
|
2013-01-08 18:50:47 +01:00
|
|
|
<table class="table table-striped table-condensed table-hover">
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Head of the table containing column headers and size -->
|
2013-01-08 18:50:47 +01:00
|
|
|
<thead>
|
|
|
|
<tr>
|
2013-02-07 15:00:31 +01:00
|
|
|
<th style="width: 100px">Date d'op.</th>
|
2013-01-10 00:00:08 +01:00
|
|
|
<th>Libellé de l'opération</th>
|
2013-01-09 23:58:47 +01:00
|
|
|
<th style="width: 50px">Montant</th>
|
|
|
|
<th style="width: 50px">Solde</th>
|
2013-01-12 22:11:48 +01:00
|
|
|
<th style="width: 100px">Catégorie</th>
|
2013-01-08 18:50:47 +01:00
|
|
|
<th style="width: 60px">Actions</th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Body of the table containing the entries -->
|
2013-02-07 15:00:31 +01:00
|
|
|
<tbody>
|
|
|
|
<tr id="entry_{{entry.id}}" class="form-inline" ng-class="entryRowClass(entry.sold)" ng-repeat="entry in entries">
|
|
|
|
<td>
|
|
|
|
<input ng-show="isEditing(entry)" type="text" class="input-small" ng-model="entry.operation_date" data-date-format="yyyy-mm-dd" bs-datepicker/>
|
|
|
|
<span ng-show="isDisplaying(entry)">{{entry.operation_date}}</span>
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<input ng-show="isEditing(entry)" type="text" class="input-xxlarge" ng-model="entry.label"/>
|
|
|
|
<span ng-show="isDisplaying(entry)">{{entry.label}}</span>
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<input ng-show="isEditing(entry)" type="text" class="input-mini" ng-model="entry.value"/>
|
|
|
|
<span ng-show="isDisplaying(entry)">{{entry.value}}</span>
|
|
|
|
</td>
|
|
|
|
<td ng-class="entryValueClass(entry.sold)">{{entry.sold}}</td>
|
|
|
|
<td>
|
|
|
|
<input ng-show="isEditing(entry)" type="text" class="input-small" ng-model="entry.category" bs-typeahead="categories"/>
|
|
|
|
<span ng-show="isDisplaying(entry)">{{entry.category}}</span>
|
|
|
|
</td>
|
|
|
|
<td>
|
|
|
|
<div class="btn-group" ng-show="isEditing(entry)">
|
|
|
|
<a class="btn btn-mini btn-success" ng-click="saveEntry(entry)" href="#entry_{{entry.id}}" title="Save"><i ng-class="iconSaveClass(entry)"><span style="display: none">Save</span></i></a>
|
|
|
|
<a class="btn btn-mini" ng-click="cancelEditEntry(entry)" href="#entry_{{entry.id}}" title="Cancel"><i ng-class="iconCancelClass(entry)"><span style="display: none">Cancel</span></i></a>
|
|
|
|
<a class="btn btn-mini" ng-click="pointEntry(entry)" ng-class="pointedEntryClass(entry)" href="#entry_{{entry.id}}" title="point"><i class="icon-pencil"><span style="display: none">Point</span></i></a>
|
|
|
|
</div>
|
|
|
|
<div class="btn-group" ng-show="isDisplaying(entry)">
|
|
|
|
<a class="btn btn-mini" ng-click="editEntry(entry)" href="#entry_{{entry.id}}" title="edit"><i class="icon-edit"><span style="display: none">Edit</span></i></a>
|
|
|
|
<a class="btn btn-mini" bs-modal="'templates/entry_remove.html'" href="#entry_{{entry.id}}" title="remove"><i class="icon-trash"><span style="display: none">Remove</span></i></a>
|
|
|
|
<a class="btn btn-mini" ng-click="pointEntry(entry)" ng-class="pointedEntryClass(entry)" href="#entry_{{entry.id}}" title="point"><i class="icon-pencil"><span style="display: none">Point</span></i></a>
|
|
|
|
</div>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
2013-01-08 18:50:47 +01:00
|
|
|
</table>
|
|
|
|
</div>
|
2013-01-12 22:11:48 +01:00
|
|
|
|
2013-02-07 15:00:31 +01:00
|
|
|
<!-- Emtpy row with bottom margin to avoid data under the fixed bottom navbar -->
|
2013-01-13 00:48:09 +01:00
|
|
|
<div class="row-fluid" style="margin-bottom: 21px"></div>
|
2013-01-07 18:42:02 +01:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- JQuery Javascript library -->
|
2013-01-27 13:04:52 +01:00
|
|
|
<script type="text/javascript" src="jquery/jquery.min.js"></script>
|
2013-02-07 15:22:05 +01:00
|
|
|
<!-- JQuery migrate plugin. Mandatory for JQPlot. -->
|
2013-01-27 13:04:52 +01:00
|
|
|
<script type="text/javascript" src="jquery/jquery-migrate.min.js"></script>
|
2013-01-25 22:20:38 +01:00
|
|
|
|
|
|
|
<!-- Bootstrap Javascript library -->
|
2013-01-12 13:56:52 +01:00
|
|
|
<script type="text/javascript" src="bootstrap/js/bootstrap.min.js"></script>
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Bootstrap datepicker module -->
|
2013-01-12 13:56:52 +01:00
|
|
|
<script type="text/javascript" src="datepicker/js/bootstrap-datepicker.js"></script>
|
2013-01-13 12:00:44 +01:00
|
|
|
|
2013-02-07 15:00:31 +01:00
|
|
|
<!-- Angular Javascript library -->
|
|
|
|
<!--<script type="text/javascript" src="angular/angular.min.js"></script>-->
|
|
|
|
<script type="text/javascript" src="angular/angular.min.js"></script>
|
|
|
|
<script type="text/javascript" src="angular/angular-strap.min.js"></script>
|
2013-01-13 12:00:44 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- JQPlot Javascript library and needed modules -->
|
2013-01-12 13:56:52 +01:00
|
|
|
<script type="text/javascript" src="jqplot/jquery.jqplot.js"></script>
|
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.dateAxisRenderer.js"></script>
|
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.categoryAxisRenderer.min.js"></script>
|
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.canvasTextRenderer.min.js"></script>
|
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.canvasAxisTickRenderer.min.js"></script>
|
2013-01-12 22:11:48 +01:00
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.pieRenderer.min.js"></script>
|
2013-01-12 13:56:52 +01:00
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.highlighter.min.js"></script>
|
2013-01-13 01:14:58 +01:00
|
|
|
<script type="text/javascript" src="jqplot/plugins/jqplot.canvasOverlay.min.js"></script>
|
2013-01-07 18:42:02 +01:00
|
|
|
|
2013-01-25 22:20:38 +01:00
|
|
|
<!-- Custom Javascript library for entries -->
|
2013-02-07 15:00:31 +01:00
|
|
|
<script type="text/javascript" src="js/months.js"></script>
|
|
|
|
<script type="text/javascript" src="js/accounts.js"></script>
|
2013-01-12 13:56:52 +01:00
|
|
|
<script type="text/javascript" src="js/entries.js"></script>
|
2013-01-07 18:42:02 +01:00
|
|
|
</body>
|
|
|
|
</html>
|
|
|
|
|