Code cleanup [skip ci]

This commit is contained in:
James Cole
2015-06-27 08:06:24 +02:00
parent b8ed489b14
commit 9e5484937e
97 changed files with 2048 additions and 1777 deletions

View File

@@ -208,7 +208,7 @@ class TagController extends Controller
$subTitle = $tag->tag; $subTitle = $tag->tag;
$subTitleIcon = 'fa-tag'; $subTitleIcon = 'fa-tag';
return view('tags.show', compact('tag', 'subTitle','types', 'subTitleIcon')); return view('tags.show', compact('tag', 'subTitle', 'subTitleIcon'));
} }
/** /**

View File

@@ -52,8 +52,6 @@ class EventServiceProvider extends ServiceProvider
$this->registerCreateEvents(); $this->registerCreateEvents();
BudgetLimit::saved( BudgetLimit::saved(
function (BudgetLimit $budgetLimit) { function (BudgetLimit $budgetLimit) {
Log::debug('Saved!');
$end = Navigation::addPeriod(clone $budgetLimit->startdate, $budgetLimit->repeat_freq, 0); $end = Navigation::addPeriod(clone $budgetLimit->startdate, $budgetLimit->repeat_freq, 0);
$end->subDay(); $end->subDay();
$set = $budgetLimit->limitrepetitions() $set = $budgetLimit->limitrepetitions()

View File

@@ -225,6 +225,7 @@ class AccountRepository implements AccountRepositoryInterface
$accountIds = DB::table('piggy_banks')->distinct()->get(['piggy_banks.account_id']); $accountIds = DB::table('piggy_banks')->distinct()->get(['piggy_banks.account_id']);
$accounts = new Collection; $accounts = new Collection;
/** @var PiggyBank $id */
foreach ($accountIds as $id) { foreach ($accountIds as $id) {
$ids[] = intval($id->account_id); $ids[] = intval($id->account_id);
} }

View File

@@ -29,6 +29,22 @@ class PiggyBankPart
/** @var Carbon */ /** @var Carbon */
public $targetdate; public $targetdate;
/**
* @return PiggyBankRepetition
*/
public function getRepetition()
{
return $this->repetition;
}
/**
* @param PiggyBankRepetition $repetition
*/
public function setRepetition($repetition)
{
$this->repetition = $repetition;
}
/** /**
* @return Carbon * @return Carbon
*/ */
@@ -61,22 +77,6 @@ class PiggyBankPart
$this->targetdate = $targetdate; $this->targetdate = $targetdate;
} }
/**
* @return PiggyBankRepetition
*/
public function getRepetition()
{
return $this->repetition;
}
/**
* @param PiggyBankRepetition $repetition
*/
public function setRepetition($repetition)
{
$this->repetition = $repetition;
}
/** /**
* @return float|int * @return float|int
*/ */

View File

@@ -142,7 +142,7 @@ class Navigation
} }
/** /**
* @param Carbon $date * @param \Carbon\Carbon $date
* @param $repeatFrequency * @param $repeatFrequency
* *
* @return string * @return string

View File

@@ -9,6 +9,7 @@ use Zizaco\Entrust\Traits\EntrustUserTrait;
/** /**
* Class User * Class User
*
* @codeCoverageIgnore * @codeCoverageIgnore
* *
* @package FireflyIII * @package FireflyIII

View File

@@ -3,16 +3,15 @@
namespace FireflyIII\Validation; namespace FireflyIII\Validation;
use Auth; use Auth;
use Carbon\Carbon;
use Config; use Config;
use Crypt; use Crypt;
use DB; use DB;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Models\PiggyBank;
use FireflyIII\User; use FireflyIII\User;
use Illuminate\Contracts\Encryption\DecryptException; use Illuminate\Contracts\Encryption\DecryptException;
use Illuminate\Validation\Validator; use Illuminate\Validation\Validator;
use Navigation;
use Symfony\Component\Translation\TranslatorInterface; use Symfony\Component\Translation\TranslatorInterface;
/** /**
@@ -244,6 +243,7 @@ class FireflyValidator extends Validator
} }
$set = $query->get(['piggy_banks.*']); $set = $query->get(['piggy_banks.*']);
/** @var PiggyBank $entry */
foreach ($set as $entry) { foreach ($set as $entry) {
$fieldValue = $this->tryDecrypt($entry->name); $fieldValue = $this->tryDecrypt($entry->name);
if ($fieldValue == $value) { if ($fieldValue == $value) {

View File

@@ -28,7 +28,6 @@ $app = new Illuminate\Foundation\Application(
*/ */
$app->singleton( $app->singleton(
'Illuminate\Contracts\Http\Kernel', 'Illuminate\Contracts\Http\Kernel',
'FireflyIII\Http\Kernel' 'FireflyIII\Http\Kernel'
@@ -45,8 +44,6 @@ $app->singleton(
); );
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Return The Application | Return The Application

View File

@@ -29,7 +29,6 @@ require __DIR__.'/../vendor/autoload.php';
$compiledPath = __DIR__ . '/cache/compiled.php'; $compiledPath = __DIR__ . '/cache/compiled.php';
if (file_exists($compiledPath)) if (file_exists($compiledPath)) {
{
require $compiledPath; require $compiledPath;
} }

View File

@@ -7,58 +7,6 @@ use Illuminate\Database\Schema\Blueprint;
*/ */
class EntrustSetupTables extends Migration class EntrustSetupTables extends Migration
{ {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
// Create table for storing roles
Schema::create('roles', function (Blueprint $table) {
$table->increments('id');
$table->string('name')->unique();
$table->string('display_name')->nullable();
$table->string('description')->nullable();
$table->timestamps();
});
// Create table for associating roles to users (Many-to-Many)
Schema::create('role_user', function (Blueprint $table) {
$table->integer('user_id')->unsigned();
$table->integer('role_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')
->onUpdate('cascade')->onDelete('cascade');
$table->foreign('role_id')->references('id')->on('roles')
->onUpdate('cascade')->onDelete('cascade');
$table->primary(['user_id', 'role_id']);
});
// Create table for storing permissions
Schema::create('permissions', function (Blueprint $table) {
$table->increments('id');
$table->string('name')->unique();
$table->string('display_name')->nullable();
$table->string('description')->nullable();
$table->timestamps();
});
// Create table for associating permissions to roles (Many-to-Many)
Schema::create('permission_role', function (Blueprint $table) {
$table->integer('permission_id')->unsigned();
$table->integer('role_id')->unsigned();
$table->foreign('permission_id')->references('id')->on('permissions')
->onUpdate('cascade')->onDelete('cascade');
$table->foreign('role_id')->references('id')->on('roles')
->onUpdate('cascade')->onDelete('cascade');
$table->primary(['permission_id', 'role_id']);
});
}
/** /**
* Reverse the migrations. * Reverse the migrations.
* *
@@ -71,4 +19,64 @@ class EntrustSetupTables extends Migration
Schema::drop('role_user'); Schema::drop('role_user');
Schema::drop('roles'); Schema::drop('roles');
} }
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
// Create table for storing roles
Schema::create(
'roles', function (Blueprint $table) {
$table->increments('id');
$table->string('name')->unique();
$table->string('display_name')->nullable();
$table->string('description')->nullable();
$table->timestamps();
}
);
// Create table for associating roles to users (Many-to-Many)
Schema::create(
'role_user', function (Blueprint $table) {
$table->integer('user_id')->unsigned();
$table->integer('role_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users')
->onUpdate('cascade')->onDelete('cascade');
$table->foreign('role_id')->references('id')->on('roles')
->onUpdate('cascade')->onDelete('cascade');
$table->primary(['user_id', 'role_id']);
}
);
// Create table for storing permissions
Schema::create(
'permissions', function (Blueprint $table) {
$table->increments('id');
$table->string('name')->unique();
$table->string('display_name')->nullable();
$table->string('description')->nullable();
$table->timestamps();
}
);
// Create table for associating permissions to roles (Many-to-Many)
Schema::create(
'permission_role', function (Blueprint $table) {
$table->integer('permission_id')->unsigned();
$table->integer('role_id')->unsigned();
$table->foreign('permission_id')->references('id')->on('permissions')
->onUpdate('cascade')->onDelete('cascade');
$table->foreign('role_id')->references('id')->on('roles')
->onUpdate('cascade')->onDelete('cascade');
$table->primary(['permission_id', 'role_id']);
}
);
}
} }

View File

@@ -1,7 +1,6 @@
<?php <?php
use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
/** /**
* Class ChangesForV3451 * Class ChangesForV3451

View File

@@ -25,7 +25,8 @@
<div class="btn-group"> <div class="btn-group">
<button class="btn btn-box-tool dropdown-toggle" data-toggle="dropdown"><i class="fa fa-ellipsis-v"></i></button> <button class="btn btn-box-tool dropdown-toggle" data-toggle="dropdown"><i class="fa fa-ellipsis-v"></i></button>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
<li><a href="{{route('accounts.create', what)}}"><i class="fa fa-plus fa-fw"></i> {{ ('make_new_' ~ what ~ '_account')|_ }}</a></li> <li><a href="{{ route('accounts.create', what) }}"><i class="fa fa-plus fa-fw"></i> {{ ('make_new_' ~ what ~ '_account')|_ }}
</a></li>
</ul> </ul>
</div> </div>
</div> </div>

View File

@@ -1,13 +1,15 @@
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span>
</button>
<h4 class="modal-title" id="myModalLabel">Update (expected) available amount for {{ Session.get('start').format('F Y') }}</h4> <h4 class="modal-title" id="myModalLabel">Update (expected) available amount for {{ Session.get('start').format('F Y') }}</h4>
</div> </div>
<form style="display: inline;" id="income" action="{{ route('budgets.postIncome') }}" method="POST"> <form style="display: inline;" id="income" action="{{ route('budgets.postIncome') }}" method="POST">
<div class="modal-body"> <div class="modal-body">
<input type="hidden" name="_token" value="{{ csrf_token() }}"/> <input type="hidden" name="_token" value="{{ csrf_token() }}"/>
<div class="input-group"> <div class="input-group">
<div class="input-group-addon">{{ getCurrencySymbol()|raw }}</div> <div class="input-group-addon">{{ getCurrencySymbol()|raw }}</div>
<input step="any" class="form-control" id="amount" value="{{ amount.data }}" autocomplete="off" name="amount" type="number"/> <input step="any" class="form-control" id="amount" value="{{ amount.data }}" autocomplete="off" name="amount" type="number"/>

View File

@@ -47,7 +47,8 @@
{% for rep in limit.limitRepetitions %} {% for rep in limit.limitRepetitions %}
<div class="box"> <div class="box">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title"><a href="{{route('budgets.show',[budget.id,rep.id])}}">{{rep.startdate.formatLocalized(monthFormat)}}</a></h3> <h3 class="box-title"><a href="{{ route('budgets.show',[budget.id,rep.id]) }}">{{ rep.startdate.formatLocalized(monthFormat) }}</a>
</h3>
</div> </div>
<div class="box-body"> <div class="box-body">
<div class="row"> <div class="row">
@@ -65,14 +66,17 @@
{% set spent = spentInRepetitionCorrected(rep) %} {% set spent = spentInRepetitionCorrected(rep) %}
{% set pct = (spent != 0 ? (rep.amount / spent)*100 : 0) %} {% set pct = (spent != 0 ? (rep.amount / spent)*100 : 0) %}
<div class="progress progress-striped"> <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-success" role="progressbar" aria-valuenow="{{ pct|round }}" aria-valuemin="0"
<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> 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> </div>
{% else %} {% else %}
{% set amount = rep.amount %} {% set amount = rep.amount %}
{% set pct = (amount != 0 ? (spentInRepetitionCorrected(rep) / amount)*100 : 0) %} {% set pct = (amount != 0 ? (spentInRepetitionCorrected(rep) / amount)*100 : 0) %}
<div class="progress progress-striped"> <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 class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="{{ pct|round }}" aria-valuemin="0"
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
</div> </div>
{% endif %} {% endif %}
</div> </div>

View File

@@ -16,9 +16,11 @@
<p class="text-danger"> <p class="text-danger">
{{ trans('form.permDeleteWarning') }} {{ trans('form.permDeleteWarning') }}
</p> </p>
<p> <p>
{{ trans('form.category_areYouSure', {'name': category.name}) }} {{ trans('form.category_areYouSure', {'name': category.name}) }}
</p> </p>
<p> <p>
{% if category.transactionjournals|length > 0 %} {% if category.transactionjournals|length > 0 %}
{{ Lang.choice('form.category_keep_transactions', category.transactionjournals|length, {count: category.transactionjournals|length}) }} {{ Lang.choice('form.category_keep_transactions', category.transactionjournals|length, {count: category.transactionjournals|length}) }}

View File

@@ -17,6 +17,7 @@
<p class="text-danger"> <p class="text-danger">
{{ trans('form.permDeleteWarning') }} {{ trans('form.permDeleteWarning') }}
</p> </p>
<p> <p>
{{ trans('form.currency_areYouSure', {'name': currency.name}) }} {{ trans('form.currency_areYouSure', {'name': currency.name}) }}
</p> </p>

View File

@@ -8,11 +8,11 @@
<p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;"> <p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">
Hey there, Hey there,
</p> </p>
<p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;"> <p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">
Welkome to <a style="color:#337ab7" href="{{ address }}">Firefly III</a>. Your registration has made it, and this email is here to confirm it. Yay! Welkome to <a style="color:#337ab7" href="{{ address }}">Firefly III</a>. Your registration has made it, and this email is here to confirm it. Yay!
</p> </p>
@@ -53,6 +53,7 @@
"url": "https://geld.nder.be" "url": "https://geld.nder.be"
} }
} }
</script> </script>
</body> </body>

View File

@@ -1,4 +1,3 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
@@ -6,31 +5,192 @@
<meta name="robots" content="noindex,nofollow"/> <meta name="robots" content="noindex,nofollow"/>
<style> <style>
/* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html */ /* Copyright (c) 2010, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.com/yui/license.html */
html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;} html {
color: #000;
background: #FFF;
}
html { background: #eee; padding: 10px } body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
img { border: 0; } margin: 0;
#sf-resetcontent { width:970px; margin:0 auto; } padding: 0;
.sf-reset { font: 11px Verdana, Arial, sans-serif; color: #333 } }
.sf-reset .clear { clear:both; height:0; font-size:0; line-height:0; }
.sf-reset .clear_fix:after { display:block; height:0; clear:both; visibility:hidden; } table {
.sf-reset .clear_fix { display:inline-block; } border-collapse: collapse;
.sf-reset * html .clear_fix { height:1%; } border-spacing: 0;
.sf-reset .clear_fix { display:block; } }
.sf-reset, .sf-reset .block { margin: auto }
.sf-reset abbr { border-bottom: 1px dotted #000; cursor: help; } fieldset, img {
.sf-reset p { font-size:14px; line-height:20px; color:#868686; padding-bottom:20px } border: 0;
.sf-reset strong { font-weight:bold; } }
.sf-reset a { color:#6c6159; cursor: default; }
.sf-reset a img { border:none; } address, caption, cite, code, dfn, em, strong, th, var {
.sf-reset a:hover { text-decoration:underline; } font-style: normal;
.sf-reset em { font-style:italic; } font-weight: normal;
.sf-reset h1, .sf-reset h2 { font: 20px Georgia, "Times New Roman", Times, serif } }
.sf-reset .exception_counter { background-color: #fff; color: #333; padding: 6px; float: left; margin-right: 10px; float: left; display: block; }
.sf-reset .exception_title { margin-left: 3em; margin-bottom: 0.7em; display: block; } li {
.sf-reset .exception_message { margin-left: 3em; display: block; } list-style: none;
.sf-reset .traces li { font-size:12px; padding: 2px 4px; list-style-type:decimal; margin-left:20px; } }
.sf-reset .block { background-color:#FFFFFF; padding:10px 28px; margin-bottom:20px;
caption, th {
text-align: left;
}
h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal;
}
q:before, q:after {
content: '';
}
abbr, acronym {
border: 0;
font-variant: normal;
}
sup {
vertical-align: text-top;
}
sub {
vertical-align: text-bottom;
}
input, textarea, select {
font-family: inherit;
font-size: inherit;
font-weight: inherit;
}
input, textarea, select {
*font-size: 100%;
}
legend {
color: #000;
}
html {
background: #eee;
padding: 10px
}
img {
border: 0;
}
#sf-resetcontent {
width: 970px;
margin: 0 auto;
}
.sf-reset {
font: 11px Verdana, Arial, sans-serif;
color: #333
}
.sf-reset .clear {
clear: both;
height: 0;
font-size: 0;
line-height: 0;
}
.sf-reset .clear_fix:after {
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.sf-reset .clear_fix {
display: inline-block;
}
.sf-reset * html .clear_fix {
height: 1%;
}
.sf-reset .clear_fix {
display: block;
}
.sf-reset, .sf-reset .block {
margin: auto
}
.sf-reset abbr {
border-bottom: 1px dotted #000;
cursor: help;
}
.sf-reset p {
font-size: 14px;
line-height: 20px;
color: #868686;
padding-bottom: 20px
}
.sf-reset strong {
font-weight: bold;
}
.sf-reset a {
color: #6c6159;
cursor: default;
}
.sf-reset a img {
border: none;
}
.sf-reset a:hover {
text-decoration: underline;
}
.sf-reset em {
font-style: italic;
}
.sf-reset h1, .sf-reset h2 {
font: 20px Georgia, "Times New Roman", Times, serif
}
.sf-reset .exception_counter {
background-color: #fff;
color: #333;
padding: 6px;
float: left;
margin-right: 10px;
float: left;
display: block;
}
.sf-reset .exception_title {
margin-left: 3em;
margin-bottom: 0.7em;
display: block;
}
.sf-reset .exception_message {
margin-left: 3em;
display: block;
}
.sf-reset .traces li {
font-size: 12px;
padding: 2px 4px;
list-style-type: decimal;
margin-left: 20px;
}
.sf-reset .block {
background-color: #FFFFFF;
padding: 10px 28px;
margin-bottom: 20px;
-webkit-border-bottom-right-radius: 16px; -webkit-border-bottom-right-radius: 16px;
-webkit-border-bottom-left-radius: 16px; -webkit-border-bottom-left-radius: 16px;
-moz-border-radius-bottomright: 16px; -moz-border-radius-bottomright: 16px;
@@ -41,7 +201,11 @@
border-right: 1px solid #ccc; border-right: 1px solid #ccc;
border-left: 1px solid #ccc; border-left: 1px solid #ccc;
} }
.sf-reset .block_exception { background-color:#ddd; color: #333; padding:20px;
.sf-reset .block_exception {
background-color: #ddd;
color: #333;
padding: 20px;
-webkit-border-top-left-radius: 16px; -webkit-border-top-left-radius: 16px;
-webkit-border-top-right-radius: 16px; -webkit-border-top-right-radius: 16px;
-moz-border-radius-topleft: 16px; -moz-border-radius-topleft: 16px;
@@ -54,10 +218,27 @@
overflow: hidden; overflow: hidden;
word-wrap: break-word; word-wrap: break-word;
} }
.sf-reset a { background:none; color:#868686; text-decoration:none; }
.sf-reset a:hover { background:none; color:#313131; text-decoration:underline; } .sf-reset a {
.sf-reset ol { padding: 10px 0; } background: none;
.sf-reset h1 { background-color:#FFFFFF; padding: 15px 28px; margin-bottom: 20px; color: #868686;
text-decoration: none;
}
.sf-reset a:hover {
background: none;
color: #313131;
text-decoration: underline;
}
.sf-reset ol {
padding: 10px 0;
}
.sf-reset h1 {
background-color: #FFFFFF;
padding: 15px 28px;
margin-bottom: 20px;
-webkit-border-radius: 10px; -webkit-border-radius: 10px;
-moz-border-radius: 10px; -moz-border-radius: 10px;
border-radius: 10px; border-radius: 10px;

View File

@@ -39,9 +39,16 @@
</div> </div>
<script> <script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (function (i, s, o, g, r, a, m) {
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), i['GoogleAnalyticsObject'] = r;
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) i[r] = i[r] || function () {
(i[r].q = i[r].q || []).push(arguments)
}, i[r].l = 1 * new Date();
a = s.createElement(o),
m = s.getElementsByTagName(o)[0];
a.async = 1;
a.src = g;
m.parentNode.insertBefore(a, m)
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
ga('create', '{{ env('ANALYTICS_ID', 'XXX-XX-X') }}', 'auto'); ga('create', '{{ env('ANALYTICS_ID', 'XXX-XX-X') }}', 'auto');

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="input-group"> <div class="input-group">
<div class="input-group-btn"> <div class="input-group-btn">
@@ -8,7 +9,8 @@
</button> </button>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
{% for currency in currencies %} {% for currency in currencies %}
<li><a href="#" class="currencySelect" data-id="{{ currency.id }}" data-field="amount" data-currency="{{ currency.code }}" data-symbol="{{ currency.symbol|raw }}">{{ currency.name }}</a></li> <li><a href="#" class="currencySelect" data-id="{{ currency.id }}" data-field="amount" data-currency="{{ currency.code }}"
data-symbol="{{ currency.symbol|raw }}">{{ currency.name }}</a></li>
{% endfor %} {% endfor %}
</ul> </ul>
</div> </div>

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="input-group"> <div class="input-group">
<div class="input-group-btn"> <div class="input-group-btn">
@@ -8,7 +9,8 @@
</button> </button>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
{% for currency in currencies %} {% for currency in currencies %}
<li><a href="#" class="currencySelect" data-id="{{ currency.id }}" data-field="balance" data-currency="{{ currency.code }}" data-symbol="{{ currency.symbol }}">{{ currency.name }}</a></li> <li><a href="#" class="currencySelect" data-id="{{ currency.id }}" data-field="balance" data-currency="{{ currency.code }}"
data-symbol="{{ currency.symbol }}">{{ currency.name }}</a></li>
{% endfor %} {% endfor %}
</ul> </ul>
</div> </div>

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="checkbox"> <div class="checkbox">
<label> <label>

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
{{ Form.input('date', name, value, options) }} {{ Form.input('date', name, value, options) }}
{% include 'form/help.twig' %} {% include 'form/help.twig' %}

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="input-group"> <div class="input-group">
{{ Form.input('number', name, value, options) }} {{ Form.input('number', name, value, options) }}

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
<div id="map-canvas" style="width:100%;height:300px;"></div> <div id="map-canvas" style="width:100%;height:300px;"></div>
<p class="help-block">Right-click to set the tag's location. <p class="help-block">Right-click to set the tag's location.

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
{% for value,description in list %} {% for value,description in list %}
<div class="radio"> <div class="radio">

View File

@@ -3,6 +3,7 @@
<label for="{{ name }}_return_to_form" class="col-sm-4 control-label"> <label for="{{ name }}_return_to_form" class="col-sm-4 control-label">
{{ trans('form.returnHere') }} {{ trans('form.returnHere') }}
</label> </label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="radio"> <div class="radio">
<label> <label>
@@ -20,6 +21,7 @@
<label for="{{ name }}_return_to_edit" class="col-sm-4 control-label"> <label for="{{ name }}_return_to_edit" class="col-sm-4 control-label">
{{ trans('form.returnHere') }} {{ trans('form.returnHere') }}
</label> </label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="radio"><label> <div class="radio"><label>
{{ Form.checkbox(name ~ '_return_to_edit', '1', Input.old('return_to_edit') == '1', {'id': name ~ '_return_to_edit'}) }} {{ Form.checkbox(name ~ '_return_to_edit', '1', Input.old('return_to_edit') == '1', {'id': name ~ '_return_to_edit'}) }}

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
{{ Form.select(name, list, selected , options ) }} {{ Form.select(name, list, selected , options ) }}
{% include 'form/help.twig' %} {% include 'form/help.twig' %}

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
{{ Form.input('text', name, value, options) }} {{ Form.input('text', name, value, options) }}
{% include 'form/feedback.twig' %} {% include 'form/feedback.twig' %}

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
{{ Form.input('text', name, value, options) }} {{ Form.input('text', name, value, options) }}
{% include 'form/feedback.twig' %} {% include 'form/feedback.twig' %}

View File

@@ -1,5 +1,6 @@
<div class="{{ classes }}" id="{{ name }}_holder"> <div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label> <label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8"> <div class="col-sm-8">
{{ Form.textarea(name, value, options) }} {{ Form.textarea(name, value, options) }}
{% include 'form/feedback.twig' %} {% include 'form/feedback.twig' %}

View File

@@ -14,6 +14,7 @@
<div class="box box-primary"> <div class="box box-primary">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">{{ 'yourAccounts'|_ }}</h3> <h3 class="box-title">{{ 'yourAccounts'|_ }}</h3>
<div class="box-tools pull-right"> <div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div> </div>
@@ -27,6 +28,7 @@
<div class="box"> <div class="box">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">{{ 'budgetsAndSpending'|_ }}</h3> <h3 class="box-title">{{ 'budgetsAndSpending'|_ }}</h3>
<div class="box-tools pull-right"> <div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div> </div>
@@ -39,6 +41,7 @@
<div class="box"> <div class="box">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">{{ 'categories'|_ }}</h3> <h3 class="box-title">{{ 'categories'|_ }}</h3>
<div class="box-tools pull-right"> <div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div> </div>
@@ -52,6 +55,7 @@
<div class="box"> <div class="box">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">{{ 'savings'|_ }}</h3> <h3 class="box-title">{{ 'savings'|_ }}</h3>
<div class="box-tools pull-right"> <div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div> </div>
@@ -62,7 +66,8 @@
{% else %} {% else %}
{% for account in savings %} {% for account in savings %}
<div class="row"> <div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"><h5><a href="{{ route('accounts.show') }}">{{ account.name }}</a></h5></div> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"><h5><a href="{{ route('accounts.show') }}">{{ account.name }}</a></h5>
</div>
</div> </div>
<div class="row"> <div class="row">
<!-- start --> <!-- start -->
@@ -116,6 +121,7 @@
<div class="box"> <div class="box">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">{{ 'piggyBanks'|_ }}</h3> <h3 class="box-title">{{ 'piggyBanks'|_ }}</h3>
<div class="box-tools pull-right"> <div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button> <button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div> </div>
@@ -126,7 +132,8 @@
{% else %} {% else %}
{% for account in piggyBankAccounts %} {% for account in piggyBankAccounts %}
<div class="row"> <div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"><h5><a href="{{route('accounts.show')}}">{{account.name}}</a></h5></div> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"><h5><a href="{{ route('accounts.show') }}">{{ account.name }}</a></h5>
</div>
</div> </div>
<div class="row"> <div class="row">
<!-- start --> <!-- start -->
@@ -185,21 +192,24 @@
<div class="btn-group"> <div class="btn-group">
<button class="btn btn-box-tool dropdown-toggle" data-toggle="dropdown"><i class="fa fa-ellipsis-v"></i></button> <button class="btn btn-box-tool dropdown-toggle" data-toggle="dropdown"><i class="fa fa-ellipsis-v"></i></button>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
<li><a href="{{route('transactions.create','withdrawal')}}?account_id={{data[1].id}}"><i class="fa fa-long-arrow-left fa-fw"></i> {{ 'newWithdrawal'|_ }}</a></li> <li><a href="{{ route('transactions.create','withdrawal') }}?account_id={{ data[1].id }}"><i
<li><a href="{{route('transactions.create','deposit')}}?account_id={{data[1].id}}"><i class="fa fa-long-arrow-right fa-fw"></i> {{ 'newDeposit'|_ }}</a></li> class="fa fa-long-arrow-left fa-fw"></i> {{ 'newWithdrawal'|_ }}</a></li>
<li><a href="{{route('transactions.create','transfer')}}?account_from_id={{data[1].id}}"><i class="fa fa-fw fa-exchange"></i> {{ 'newTransfer'|_ }}</a></li> <li><a href="{{ route('transactions.create','deposit') }}?account_id={{ data[1].id }}"><i
class="fa fa-long-arrow-right fa-fw"></i> {{ 'newDeposit'|_ }}</a></li>
<li><a href="{{ route('transactions.create','transfer') }}?account_from_id={{ data[1].id }}"><i
class="fa fa-fw fa-exchange"></i> {{ 'newTransfer'|_ }}</a></li>
</ul> </ul>
</div> </div>
</div> </div>
</div> </div>
<div class="box-body no-padding"> <div class="box-body no-padding">
{% include 'list/journals-tiny.twig' with {'transactions': data[0],'account': data[1]} %} {% include 'list/journals-tiny.twig' with {'transactions': data[0],'account': data[1]} %}
</div> </div>
<div class="box-footer clearfix"> <div class="box-footer clearfix">
<a class="btn btn-sm btn-default btn-flat pull-right" href="{{route('accounts.show',data[1].id)}}">{{ (data[1]|balance)|formatAmountPlain }}</a> <a class="btn btn-sm btn-default btn-flat pull-right"
href="{{ route('accounts.show',data[1].id) }}">{{ (data[1]|balance)|formatAmountPlain }}</a>
</div> </div>
</div> </div>
{% endfor %} {% endfor %}

View File

@@ -10,7 +10,8 @@
<th class="hidden-sm hidden-xs">{{ trans('list.active') }}</th> <th class="hidden-sm hidden-xs">{{ trans('list.active') }}</th>
<th class="hidden-sm hidden-xs">{{ trans('list.automatch') }}</th> <th class="hidden-sm hidden-xs">{{ trans('list.automatch') }}</th>
<th class="hidden-sm hidden-xs">{{ trans('list.repeat_freq') }}</th> <th class="hidden-sm hidden-xs">{{ trans('list.repeat_freq') }}</th>
</tr></thead> </tr>
</thead>
<tbody> <tbody>
{% for entry in bills %} {% for entry in bills %}
<tr> <tr>

View File

@@ -15,7 +15,8 @@
{% endif %} {% endif %}
<td> <td>
{% if event.transaction_journal_id %} {% if event.transaction_journal_id %}
<a href="{{ route('transactions.show',event.transaction_journal_id) }}" title="{{ event.transactionJournal.description }}">{{ event.date.format('j F Y') }}</a> <a href="{{ route('transactions.show',event.transaction_journal_id) }}"
title="{{ event.transactionJournal.description }}">{{ event.date.format('j F Y') }}</a>
{% else %} {% else %}
{{ event.date.format('j F Y') }} {{ event.date.format('j F Y') }}
{% endif %} {% endif %}

View File

@@ -5,23 +5,31 @@
<span class="info-box-icon bg-red"> <span class="info-box-icon bg-red">
<i class="fa fa-upload fa-fw"></i> <i class="fa fa-upload fa-fw"></i>
</span> </span>
<div class="info-box-content"> <div class="info-box-content">
<span class="info-box-text">{{ 'moneyOut'|_ }}</span> <span class="info-box-text">{{ 'moneyOut'|_ }}</span>
<span class="info-box-number" id="box-out"></span> <span class="info-box-number" id="box-out"></span>
</div><!-- /.info-box-content --> </div>
</div><!-- /.info-box --> <!-- /.info-box-content -->
</div><!-- /.col --> </div>
<!-- /.info-box -->
</div>
<!-- /.col -->
<div class="col-md-3 col-sm-6 col-xs-12"> <div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box"> <div class="info-box">
<span class="info-box-icon bg-green"> <span class="info-box-icon bg-green">
<i class="fa fa-download faw-fw"></i> <i class="fa fa-download faw-fw"></i>
</span> </span>
<div class="info-box-content"> <div class="info-box-content">
<span class="info-box-text">{{ 'moneyIn'|_ }}</span> <span class="info-box-text">{{ 'moneyIn'|_ }}</span>
<span class="info-box-number" id="box-in"></span> <span class="info-box-number" id="box-in"></span>
</div><!-- /.info-box-content --> </div>
</div><!-- /.info-box --> <!-- /.info-box-content -->
</div><!-- /.col --> </div>
<!-- /.info-box -->
</div>
<!-- /.col -->
<!-- fix for small devices only --> <!-- fix for small devices only -->
<div class="clearfix visible-sm-block"></div> <div class="clearfix visible-sm-block"></div>
@@ -31,21 +39,29 @@
<span class="info-box-icon bg-blue"> <span class="info-box-icon bg-blue">
<i class="fa fa-calendar fa-fw"></i> <i class="fa fa-calendar fa-fw"></i>
</span> </span>
<div class="info-box-content"> <div class="info-box-content">
<span class="info-box-text">{{ 'billsToPay'|_ }}</span> <span class="info-box-text">{{ 'billsToPay'|_ }}</span>
<span class="info-box-number" id="box-bills-unpaid"></span> <span class="info-box-number" id="box-bills-unpaid"></span>
</div><!-- /.info-box-content --> </div>
</div><!-- /.info-box --> <!-- /.info-box-content -->
</div><!-- /.col --> </div>
<!-- /.info-box -->
</div>
<!-- /.col -->
<div class="col-md-3 col-sm-6 col-xs-12"> <div class="col-md-3 col-sm-6 col-xs-12">
<div class="info-box"> <div class="info-box">
<span class="info-box-icon bg-aqua"> <span class="info-box-icon bg-aqua">
<i class="fa fa-line-chart fa-fw"></i> <i class="fa fa-line-chart fa-fw"></i>
</span> </span>
<div class="info-box-content"> <div class="info-box-content">
<span class="info-box-text">{{ 'billsPaid'|_ }}</span> <span class="info-box-text">{{ 'billsPaid'|_ }}</span>
<span class="info-box-number" id="box-bills-paid"></span> <span class="info-box-number" id="box-bills-paid"></span>
</div><!-- /.info-box-content --> </div>
</div><!-- /.info-box --> <!-- /.info-box-content -->
</div><!-- /.col --> </div>
<!-- /.info-box -->
</div>
<!-- /.col -->
</div><!-- /.row --> </div><!-- /.row -->

View File

@@ -1,4 +1,3 @@
<!-- Control Sidebar --> <!-- Control Sidebar -->
<aside class="control-sidebar control-sidebar-dark"> <aside class="control-sidebar control-sidebar-dark">
<!-- Tab panes --> <!-- Tab panes -->
@@ -10,6 +9,7 @@
<li> <li>
<a href="{{ route('transactions.create', 'withdrawal') }}"> <a href="{{ route('transactions.create', 'withdrawal') }}">
<i class="menu-icon fa fa-long-arrow-left bg-red"></i> <i class="menu-icon fa fa-long-arrow-left bg-red"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New withdrawal</h4> <h4 class="control-sidebar-subheading">New withdrawal</h4>
</div> </div>
@@ -18,6 +18,7 @@
<li> <li>
<a href="{{ route('transactions.create', 'deposit') }}"> <a href="{{ route('transactions.create', 'deposit') }}">
<i class="menu-icon fa fa-long-arrow-right bg-green"></i> <i class="menu-icon fa fa-long-arrow-right bg-green"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New deposit</h4> <h4 class="control-sidebar-subheading">New deposit</h4>
</div> </div>
@@ -26,6 +27,7 @@
<li> <li>
<a href="{{ route('transactions.create', 'transfer') }}"> <a href="{{ route('transactions.create', 'transfer') }}">
<i class="menu-icon fa fa-exchange bg-blue"></i> <i class="menu-icon fa fa-exchange bg-blue"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New transfer</h4> <h4 class="control-sidebar-subheading">New transfer</h4>
</div> </div>
@@ -34,6 +36,7 @@
<li> <li>
<a href="{{ route('accounts.create', 'asset') }}"> <a href="{{ route('accounts.create', 'asset') }}">
<i class="menu-icon fa fa-money bg-maroon"></i> <i class="menu-icon fa fa-money bg-maroon"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New asset account</h4> <h4 class="control-sidebar-subheading">New asset account</h4>
</div> </div>
@@ -42,6 +45,7 @@
<li> <li>
<a href="{{ route('accounts.create', 'expense') }}"> <a href="{{ route('accounts.create', 'expense') }}">
<i class="menu-icon fa fa-shopping-cart bg-maroon"></i> <i class="menu-icon fa fa-shopping-cart bg-maroon"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New expense account</h4> <h4 class="control-sidebar-subheading">New expense account</h4>
</div> </div>
@@ -50,6 +54,7 @@
<li> <li>
<a href="{{ route('accounts.create', 'revenue') }}"> <a href="{{ route('accounts.create', 'revenue') }}">
<i class="menu-icon fa fa-download bg-maroon"></i> <i class="menu-icon fa fa-download bg-maroon"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New revenue</h4> <h4 class="control-sidebar-subheading">New revenue</h4>
</div> </div>
@@ -58,6 +63,7 @@
<li> <li>
<a href="{{ route('piggy-banks.create') }}"> <a href="{{ route('piggy-banks.create') }}">
<i class="menu-icon fa fa-sort-amount-asc bg-teal"></i> <i class="menu-icon fa fa-sort-amount-asc bg-teal"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New piggy bank</h4> <h4 class="control-sidebar-subheading">New piggy bank</h4>
</div> </div>
@@ -66,15 +72,18 @@
<li> <li>
<a href="{{ route('bills.create') }}"> <a href="{{ route('bills.create') }}">
<i class="menu-icon fa fa-download bg-purple"></i> <i class="menu-icon fa fa-download bg-purple"></i>
<div class="menu-info"> <div class="menu-info">
<h4 class="control-sidebar-subheading">New bill</h4> <h4 class="control-sidebar-subheading">New bill</h4>
</div> </div>
</a> </a>
</li> </li>
</ul><!-- /.control-sidebar-menu --> </ul>
<!-- /.control-sidebar-menu -->
</div><!-- /.tab-pane --> </div>
<!-- /.tab-pane -->
</div> </div>
</aside><!-- /.control-sidebar --> </aside><!-- /.control-sidebar -->
<!-- Add the sidebar's background. This div must be placed <!-- Add the sidebar's background. This div must be placed

View File

@@ -132,7 +132,6 @@
<!-- other options --> <!-- other options -->
<li> <li>
<a href="{{ route('logout') }}"> <a href="{{ route('logout') }}">
<i class="fa fa-sign-out fa-fw"></i> <i class="fa fa-sign-out fa-fw"></i>

View File

@@ -20,7 +20,8 @@
<i class="fa fa-plus-circle fa-fw"></i> <i class="fa fa-caret-down"></i> <i class="fa fa-plus-circle fa-fw"></i> <i class="fa fa-caret-down"></i>
</a> </a>
<ul class="dropdown-menu" role="menu"> <ul class="dropdown-menu" role="menu">
<li><a href="{{ route('transactions.create','withdrawal') }}"><i class="fa fa-long-arrow-left fa-fw"></i> {{ 'create_new_withdrawal'|_ }}</a></li> <li><a href="{{ route('transactions.create','withdrawal') }}"><i class="fa fa-long-arrow-left fa-fw"></i> {{ 'create_new_withdrawal'|_ }}</a>
</li>
<li><a href="{{ route('transactions.create','deposit') }}"><i class="fa fa-long-arrow-right fa-fw"></i> {{ 'create_new_deposit'|_ }}</a></li> <li><a href="{{ route('transactions.create','deposit') }}"><i class="fa fa-long-arrow-right fa-fw"></i> {{ 'create_new_deposit'|_ }}</a></li>
<li><a href="{{ route('transactions.create','transfer') }}"><i class="fa fa-exchange fa-fw"></i> {{ 'create_new_transfer'|_ }}</a></li> <li><a href="{{ route('transactions.create','transfer') }}"><i class="fa fa-exchange fa-fw"></i> {{ 'create_new_transfer'|_ }}</a></li>
<li class="divider"></li> <li class="divider"></li>
@@ -97,13 +98,15 @@
<a class="{{ activeRoutePartial('budgets') }}" href="{{ route('budgets.index') }}"><i class="fa fa-tasks fa-fw"></i> {{ 'budgets'|_ }}</a> <a class="{{ activeRoutePartial('budgets') }}" href="{{ route('budgets.index') }}"><i class="fa fa-tasks fa-fw"></i> {{ 'budgets'|_ }}</a>
</li> </li>
<li> <li>
<a class="{{ activeRoutePartial('categories') }}" href="{{ route('categories.index') }}"><i class="fa fa-bar-chart fa-fw"></i> {{ 'categories'|_ }}</a> <a class="{{ activeRoutePartial('categories') }}" href="{{ route('categories.index') }}"><i
class="fa fa-bar-chart fa-fw"></i> {{ 'categories'|_ }}</a>
</li> </li>
<li> <li>
<a class="{{ activeRoutePartial('tags') }}" href="{{ route('tags.index') }}"><i class="fa fa-tags fa-fw"></i> {{ 'tags'|_ }}</a> <a class="{{ activeRoutePartial('tags') }}" href="{{ route('tags.index') }}"><i class="fa fa-tags fa-fw"></i> {{ 'tags'|_ }}</a>
</li> </li>
<li> <li>
<a class="{{ activeRoutePartial('reports') }}" href="{{ route('reports.index') }}"><i class="fa fa-line-chart fa-fw"></i> {{ 'reports'|_ }}</a> <a class="{{ activeRoutePartial('reports') }}" href="{{ route('reports.index') }}"><i class="fa fa-line-chart fa-fw"></i> {{ 'reports'|_ }}
</a>
</li> </li>
<li class="{{ activeRoutePartial('transactions') }}"> <li class="{{ activeRoutePartial('transactions') }}">
<a href="#"><i class="fa fa-repeat fa-fw"></i> {{ 'transactions'|_ }}<span class="fa arrow"></span></a> <a href="#"><i class="fa fa-repeat fa-fw"></i> {{ 'transactions'|_ }}<span class="fa arrow"></span></a>
@@ -159,7 +162,8 @@
</li> </li>
<li class="hidden-sm hidden-md hidden-lg"> <li class="hidden-sm hidden-md hidden-lg">
<a class="{{ activeRouteStrict('preferences') }}" href="{{ route('preferences') }}"><i class="fa fa-gear fa-fw"></i> {{ 'preferences'|_ }}</a> <a class="{{ activeRouteStrict('preferences') }}" href="{{ route('preferences') }}"><i class="fa fa-gear fa-fw"></i> {{ 'preferences'|_ }}
</a>
</li> </li>
<li class="hidden-sm hidden-md hidden-lg"> <li class="hidden-sm hidden-md hidden-lg">
<a class="{{ activeRoutePartial('currency') }}" href="{{ route('currency.index') }}"><i class="fa fa-usd fa-fw"></i> {{ 'currency'|_ }}</a> <a class="{{ activeRoutePartial('currency') }}" href="{{ route('currency.index') }}"><i class="fa fa-usd fa-fw"></i> {{ 'currency'|_ }}</a>

View File

@@ -1,15 +1,18 @@
<div class="modal-dialog"> <div class="modal-dialog">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span>
</button>
<h4 class="modal-title" id="myModalLabel">{{ trans('firefly.add_money_to_piggy_title', {name: piggyBank.name}) }}</h4> <h4 class="modal-title" id="myModalLabel">{{ trans('firefly.add_money_to_piggy_title', {name: piggyBank.name}) }}</h4>
</div> </div>
<form style="display: inline;" id="add" action="{{ route('piggy-banks.add', piggyBank.id) }}" method="POST"> <form style="display: inline;" id="add" action="{{ route('piggy-banks.add', piggyBank.id) }}" method="POST">
<div class="modal-body"> <div class="modal-body">
<input type="hidden" name="_token" value="{{ csrf_token() }}"/> <input type="hidden" name="_token" value="{{ csrf_token() }}"/>
<p> <p>
{{ 'max_amount_add'|_ }}: {{ maxAmount|formatAmount }}. {{ 'max_amount_add'|_ }}: {{ maxAmount|formatAmount }}.
</p> </p>
<div class="input-group"> <div class="input-group">
<div class="input-group-addon">{{ getCurrencySymbol()|raw }}</div> <div class="input-group-addon">{{ getCurrencySymbol()|raw }}</div>
<input step="any" class="form-control" id="amount" autocomplete="off" name="amount" max="{{ maxAmount|round(2) }}" type="number"/> <input step="any" class="form-control" id="amount" autocomplete="off" name="amount" max="{{ maxAmount|round(2) }}" type="number"/>

View File

@@ -2,8 +2,10 @@
<div class="modal-content"> <div class="modal-content">
<form style="display: inline;" id="remove" action="{{ route('piggy-banks.remove', piggyBank.id) }}" method="POST"> <form style="display: inline;" id="remove" action="{{ route('piggy-banks.remove', piggyBank.id) }}" method="POST">
<input type="hidden" name="_token" value="{{ csrf_token() }}"/> <input type="hidden" name="_token" value="{{ csrf_token() }}"/>
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span>
</button>
<h4 class="modal-title" id="myModalLabel">{{ trans('firefly.remove_money_from_piggy_title', {name: piggyBank.name}) }}</h4> <h4 class="modal-title" id="myModalLabel">{{ trans('firefly.remove_money_from_piggy_title', {name: piggyBank.name}) }}</h4>
</div> </div>
@@ -11,9 +13,11 @@
<p> <p>
{{ 'max_amount_remove'|_ }}: {{ currentRelevantRepAmount(piggyBank)|formatAmount }}. {{ 'max_amount_remove'|_ }}: {{ currentRelevantRepAmount(piggyBank)|formatAmount }}.
</p> </p>
<div class="input-group"> <div class="input-group">
<div class="input-group-addon">{{ getCurrencySymbol()|raw }}</div> <div class="input-group-addon">{{ getCurrencySymbol()|raw }}</div>
<input step="any" class="form-control" id="amount" autocomplete="off" name="amount" max="{{ currentRelevantRepAmount(piggyBank)|round(2) }}" type="number"> <input step="any" class="form-control" id="amount" autocomplete="off" name="amount" max="{{ currentRelevantRepAmount(piggyBank)|round(2) }}"
type="number">
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">

View File

@@ -75,7 +75,8 @@
<script type="text/javascript"> <script type="text/javascript">
var year = {{ start.year }}; var year = {{ start.year }};
var month = {{ start.month }}; var month = {{ start.month }};
var shared = {% if shared %}'/shared'{% else %}''{% endif %}; var shared = {% if shared %}'/shared'
{% else %}''{% endif %};
var incomeTopLength = {{ incomeTopLength }}; var incomeTopLength = {{ incomeTopLength }};
var expenseTopLength = {{ expenseTopLength }}; var expenseTopLength = {{ expenseTopLength }};
var incomeRestShow = false; // starts hidden. var incomeRestShow = false; // starts hidden.

View File

@@ -76,7 +76,8 @@
<script type="text/javascript"> <script type="text/javascript">
var year = '{{start.year}}'; var year = '{{start.year}}';
var shared = {% if shared %}'/shared'{% else %}''{% endif %}; var shared = {% if shared %}'/shared'
{% else %}''{% endif %};
var incomeTopLength = {{ incomeTopLength }}; var incomeTopLength = {{ incomeTopLength }};
var expenseTopLength = {{ expenseTopLength }}; var expenseTopLength = {{ expenseTopLength }};
var incomeRestShow = false; // starts hidden. var incomeRestShow = false; // starts hidden.

View File

@@ -26,6 +26,7 @@
and add information about the restaurant. Such tags are "singular", you would only use them for a single occasion, and add information about the restaurant. Such tags are "singular", you would only use them for a single occasion,
perhaps with multiple transactions. perhaps with multiple transactions.
</p> </p>
<p> <p>
Tags group transactions together, which makes it possible to store reimbursements Tags group transactions together, which makes it possible to store reimbursements
(in case you front money for others) and other "balancing acts" where expenses (in case you front money for others) and other "balancing acts" where expenses
@@ -33,6 +34,7 @@
are cancelling each other out (buying something with saved money). It's all up to you. are cancelling each other out (buying something with saved money). It's all up to you.
Using tags the old-fashioned way is of course always possible. Using tags the old-fashioned way is of course always possible.
</p> </p>
<p> <p>
Create a tag to get started or enter tags when creating new transactions. Create a tag to get started or enter tags when creating new transactions.
</p> </p>
@@ -62,7 +64,8 @@
<h5>{{ month }}</h5> <h5>{{ month }}</h5>
<p style="line-height: 200%;"> <p style="line-height: 200%;">
{% for tag in tags %} {% for tag in tags %}
<span style="display: inline;"><a style="font-size:100%;font-weight:normal;" class="label label-success" href="{{route('tags.show',tag.id)}}"> <span style="display: inline;"><a style="font-size:100%;font-weight:normal;" class="label label-success"
href="{{ route('tags.show',tag.id) }}">
{% if tag.tagMode == 'nothing' %} {% if tag.tagMode == 'nothing' %}
<i class="fa fa-fw fa-tag"></i> <i class="fa fa-fw fa-tag"></i>
{% endif %} {% endif %}

View File

@@ -16,6 +16,7 @@
<div class="box-body"> <div class="box-body">
<div class="form-group"> <div class="form-group">
<label class="col-sm-4 control-label">Quickswitch</label> <label class="col-sm-4 control-label">Quickswitch</label>
<div class="col-sm-8"> <div class="col-sm-8">
<div class="btn-group btn-group-justified"> <div class="btn-group btn-group-justified">
<a href="#" data-what="withdrawal" class="switch btn btn-default"> {{ 'withdrawal'|_ }}</a> <a href="#" data-what="withdrawal" class="switch btn btn-default"> {{ 'withdrawal'|_ }}</a>

View File

@@ -17,6 +17,7 @@
<p class="text-danger"> <p class="text-danger">
{{ trans('form.permDeleteWarning') }} {{ trans('form.permDeleteWarning') }}
</p> </p>
<p> <p>
{{ trans('form.journal_areYouSure', {'description': journal.description}) }} {{ trans('form.journal_areYouSure', {'description': journal.description}) }}
</p> </p>