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

@@ -180,12 +180,12 @@ class TagController extends Controller
$helpHidden = $helpHiddenPref->data;
// group years.
$types = ['nothing','balancingAct', 'advancePayment'];
$types = ['nothing', 'balancingAct', 'advancePayment'];
// loop each types and get the tags, group them by year.
$collection = [];
foreach ($types as $type) {
$tags = Auth::user()->tags()->where('tagMode', $type)->orderBy('date','ASC')->get();
$tags = Auth::user()->tags()->where('tagMode', $type)->orderBy('date', 'ASC')->get();
/** @var Tag $tag */
foreach ($tags as $tag) {
$year = is_null($tag->date) ? trans('firefly.no_year') : $tag->date->year;
@@ -195,7 +195,7 @@ class TagController extends Controller
}
return view('tags.index', compact('title', 'mainTitleIcon','types', 'helpHidden', 'collection'));
return view('tags.index', compact('title', 'mainTitleIcon', 'types', 'helpHidden', 'collection'));
}
/**
@@ -208,7 +208,7 @@ class TagController extends Controller
$subTitle = $tag->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();
BudgetLimit::saved(
function (BudgetLimit $budgetLimit) {
Log::debug('Saved!');
$end = Navigation::addPeriod(clone $budgetLimit->startdate, $budgetLimit->repeat_freq, 0);
$end->subDay();
$set = $budgetLimit->limitrepetitions()

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -14,7 +14,7 @@ define('LARAVEL_START', microtime(true));
|
*/
require __DIR__.'/../vendor/autoload.php';
require __DIR__ . '/../vendor/autoload.php';
/*
|--------------------------------------------------------------------------
@@ -27,9 +27,8 @@ 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;
}

View File

@@ -44,7 +44,7 @@ return [
'file' => [
'driver' => 'file',
'path' => storage_path().'/framework/cache',
'path' => storage_path() . '/framework/cache',
],
'memcached' => [

View File

@@ -15,11 +15,11 @@ return [
'files' => [
realpath(__DIR__.'/../app/Providers/AppServiceProvider.php'),
realpath(__DIR__.'/../app/Providers/BusServiceProvider.php'),
realpath(__DIR__.'/../app/Providers/ConfigServiceProvider.php'),
realpath(__DIR__.'/../app/Providers/EventServiceProvider.php'),
realpath(__DIR__.'/../app/Providers/RouteServiceProvider.php'),
realpath(__DIR__ . '/../app/Providers/AppServiceProvider.php'),
realpath(__DIR__ . '/../app/Providers/BusServiceProvider.php'),
realpath(__DIR__ . '/../app/Providers/ConfigServiceProvider.php'),
realpath(__DIR__ . '/../app/Providers/EventServiceProvider.php'),
realpath(__DIR__ . '/../app/Providers/RouteServiceProvider.php'),
],

View File

@@ -48,7 +48,7 @@ return [
'sqlite' => [
'driver' => 'sqlite',
'database' => __DIR__.'/../storage/database/testing.db',
'database' => __DIR__ . '/../storage/database/testing.db',
'prefix' => '',
],

View File

@@ -45,7 +45,7 @@ return [
'local' => [
'driver' => 'local',
'root' => storage_path().'/app',
'root' => storage_path() . '/app',
],
's3' => [

View File

@@ -57,7 +57,7 @@ return [
|
*/
'files' => storage_path().'/framework/sessions',
'files' => storage_path() . '/framework/sessions',
/*
|--------------------------------------------------------------------------

View File

@@ -28,6 +28,6 @@ return [
|
*/
'compiled' => realpath(storage_path().'/framework/views'),
'compiled' => realpath(storage_path() . '/framework/views'),
];

View File

@@ -7,58 +7,6 @@ use Illuminate\Database\Schema\Blueprint;
*/
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.
*
@@ -71,4 +19,64 @@ class EntrustSetupTables extends Migration
Schema::drop('role_user');
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
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
/**
* Class ChangesForV3451

View File

@@ -6,18 +6,18 @@
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-6 col-md-8 col-sm-12 col-xs-12">
<p>
{{ ('accountExtraHelp_'~what)|_ }}
</p>
</div>
</div>
<div class="row">
</div>
<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">{{ subTitle}}</h3>
<h3 class="box-title">{{ subTitle }}</h3>
<!-- ACTIONS MENU -->
<div class="box-tools pull-right">
@@ -25,7 +25,8 @@
<div class="btn-group">
<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">
<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>
</div>
</div>
@@ -37,22 +38,22 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block styles %}
<link rel="stylesheet" href="css/bootstrap-sortable.css" type="text/css" media="all" />
<link rel="stylesheet" href="css/bootstrap-sortable.css" type="text/css" media="all"/>
{% endblock %}
{% block scripts %}
<script type="text/javascript">
<script type="text/javascript">
var what = '{{ what }}';
</script>
</script>
<!-- load the libraries and scripts necessary for Google Charts: -->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/bootstrap-sortable.js"></script>
<script type="text/javascript" src="js/accounts.js"></script>
<!-- load the libraries and scripts necessary for Google Charts: -->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/bootstrap-sortable.js"></script>
<script type="text/javascript" src="js/accounts.js"></script>
{% endblock %}

View File

@@ -1,16 +1,18 @@
<div class="modal-dialog">
<div class="modal-content">
<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>
<h4 class="modal-title" id="myModalLabel">Update (expected) available amount for {{Session.get('start').format('F Y')}}</h4>
<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>
</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">
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
<input type="hidden" name="_token" value="{{ csrf_token() }}"/>
<div class="input-group">
<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"/>
</div>
</div>
<div class="modal-footer">

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<div class="box">
<div class="box-header with-border">
@@ -16,6 +16,6 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-9 col-md-9 col-sm-7">
<div class="box">
<div class="box-header with-border">
@@ -47,7 +47,8 @@
{% for rep in limit.limitRepetitions %}
<div class="box">
<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 class="box-body">
<div class="row">
@@ -65,14 +66,17 @@
{% set spent = spentInRepetitionCorrected(rep) %}
{% set pct = (spent != 0 ? (rep.amount / spent)*100 : 0) %}
<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 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 amount = rep.amount %}
{% set pct = (amount != 0 ? (spentInRepetitionCorrected(rep) / amount)*100 : 0) %}
<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>
{% endif %}
</div>
@@ -83,15 +87,15 @@
{% endfor %}
{% if limits|length == 1 %}
<p class="small text-center"><a href="{{route('budgets.show',budget.id)}}">{{ 'showEverything'|_ }}</a></p>
<p class="small text-center"><a href="{{ route('budgets.show',budget.id) }}">{{ 'showEverything'|_ }}</a></p>
{% endif %}
</div>
</div>
</div>
{% endblock %}
{% block scripts %}
<script type="text/javascript">
<script type="text/javascript">
var budgetID = {{budget.id}};
{% if repetition.id %}
var repetitionID = {{repetition.id}};
@@ -100,12 +104,12 @@
var year = {{Session.get('start').format('Y')}};
{% endif %}
</script>
</script>
<!-- load the libraries and scripts necessary for Google Charts: -->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/budgets.js"></script>
<!-- load the libraries and scripts necessary for Google Charts: -->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/budgets.js"></script>
{% endblock %}

View File

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

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<div class="box">
<div class="box-header with-border">
@@ -28,16 +28,16 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block styles %}
<link rel="stylesheet" href="css/bootstrap-sortable.css" type="text/css" media="all" />
<link rel="stylesheet" href="css/bootstrap-sortable.css" type="text/css" media="all"/>
{% endblock %}
{% block scripts %}
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/bootstrap-sortable.js"></script>
<script type="text/javascript" src="js/categories.js"></script>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/bootstrap-sortable.js"></script>
<script type="text/javascript" src="js/categories.js"></script>
{% endblock %}

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<div class="box">
<div class="box-header with-border">
@@ -16,7 +16,7 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-6 col-md-6 col-sm-12">
<div class="box">
<div class="box-header with-border">
@@ -26,8 +26,8 @@
</div>
</div>
</div>
</div>
<div class="row">
</div>
<div class="row">
<div class="col-lg-12 col-md-12">
<div class="box">
@@ -39,17 +39,17 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block scripts %}
<script type="text/javascript">
<script type="text/javascript">
var categoryID = {{ category.id }};
</script>
<!-- load the libraries and scripts necessary for Google Charts: -->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/categories.js"></script>
</script>
<!-- load the libraries and scripts necessary for Google Charts: -->
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript" src="js/gcharts.options.js"></script>
<script type="text/javascript" src="js/gcharts.js"></script>
<script type="text/javascript" src="js/categories.js"></script>
{% endblock %}

View File

@@ -6,8 +6,8 @@
{% block content %}
{{ Form.open({'class' : 'form-horizontal','id' : 'destroy','url' : route('currency.destroy',currency.id)}) }}
<div class="row">
{{ Form.open({'class' : 'form-horizontal','id' : 'destroy','url' : route('currency.destroy',currency.id)}) }}
<div class="row">
<div class="col-lg-6 col-lg-offset-3 col-md-12 col-sm-12">
<div class="box box-danger">
<div class="box-header with-border">
@@ -17,18 +17,19 @@
<p class="text-danger">
{{ trans('form.permDeleteWarning') }}
</p>
<p>
{{ trans('form.currency_areYouSure', {'name': currency.name}) }}
</p>
</div>
<div class="box-footer">
<input type="submit" name="submit" value="{{ trans('form.deletePermanently') }}" class="btn btn-danger pull-right" />
<a href="{{ URL.previous }}" class="btn-default btn">{{ trans('form.cancel') }}</a >
<input type="submit" name="submit" value="{{ trans('form.deletePermanently') }}" class="btn btn-danger pull-right"/>
<a href="{{ URL.previous }}" class="btn-default btn">{{ trans('form.cancel') }}</a>
</div>
</div>
</div>
</div>
</div>
{{ Form.close|raw }}
{{ Form.close|raw }}
{% endblock %}

View File

@@ -5,18 +5,18 @@
</head>
<body>
<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,
</p>
<p style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">
</p>
<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!
</p>
</p>
<ul>
<ul>
<li style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;">
If you have forgotten your password already, please reset it using
<a style="color:#337ab7" href="{{ address }}password/email">the password reset tool</a>.
@@ -30,14 +30,14 @@
<a style="color:#337ab7" href="https://github.com/JC5/firefly-iii/wiki/full-description">full description</a>.
</li>
</ul>
</ul>
<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;">
Enjoy!
</p>
</p>
<script type="application/ld+json">
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
@@ -53,6 +53,7 @@
"url": "https://geld.nder.be"
}
}
</script>
</body>

View File

@@ -2,17 +2,17 @@
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<h1 class="text-danger">Firefly<br/>
<small>Error</small>
</h1>
</div>
</div>
</div>
<div class="row">
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
{{ message |default('General unknown errror') }}
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,63 +1,244 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="robots" content="noindex,nofollow" />
<meta charset="UTF-8"/>
<meta name="robots" content="noindex,nofollow"/>
<style>
/* 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 }
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;
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 {
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-left-radius: 16px;
-moz-border-radius-bottomright: 16px;
-moz-border-radius-bottomleft: 16px;
border-bottom-right-radius: 16px;
border-bottom-left-radius: 16px;
border-bottom:1px solid #ccc;
border-right:1px solid #ccc;
border-left:1px solid #ccc;
border-bottom: 1px solid #ccc;
border-right: 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-right-radius: 16px;
-moz-border-radius-topleft: 16px;
-moz-border-radius-topright: 16px;
border-top-left-radius: 16px;
border-top-right-radius: 16px;
border-top:1px solid #ccc;
border-right:1px solid #ccc;
border-left:1px solid #ccc;
border-top: 1px solid #ccc;
border-right: 1px solid #ccc;
border-left: 1px solid #ccc;
overflow: hidden;
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 ol { padding: 10px 0; }
.sf-reset h1 { background-color:#FFFFFF; padding: 15px 28px; margin-bottom: 20px;
.sf-reset a {
background: none;
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;
-moz-border-radius: 10px;
border-radius: 10px;

View File

@@ -1,5 +1,5 @@
<html>
<head>
<head>
<link href='https://fonts.googleapis.com/css?family=Lato:100' rel='stylesheet' type='text/css'>
<style>
@@ -30,19 +30,26 @@
margin-bottom: 40px;
}
</style>
</head>
<body>
<div class="container">
</head>
<body>
<div class="container">
<div class="content">
<div class="title">Be right back.</div>
</div>
</div>
</div>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;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');
(function (i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
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');
ga('create', '{{ env('ANALYTICS_ID', 'XXX-XX-X') }}', 'auto');
ga('send', 'pageview');
@@ -50,5 +57,5 @@
</script>
</body>
</body>
</html>

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>
<div class="col-sm-8">
<div class="input-group">
<div class="input-group-btn">
@@ -8,7 +9,8 @@
</button>
<ul class="dropdown-menu" role="menu">
{% 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 %}
</ul>
</div>
@@ -19,5 +21,5 @@
{% include 'form/feedback.twig' %}
</div>
<input type="hidden" name="amount_currency_id" value="{{ defaultCurrency.id }}" />
<input type="hidden" name="amount_currency_id" value="{{ defaultCurrency.id }}"/>
</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>
<div class="col-sm-8">
<div class="input-group">
<div class="input-group-btn">
@@ -8,7 +9,8 @@
</button>
<ul class="dropdown-menu" role="menu">
{% 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 %}
</ul>
</div>
@@ -18,5 +20,5 @@
{% include 'form/feedback.twig' %}
</div>
<input type="hidden" name="balance_currency_id" value="{{ defaultCurrency.id }}" />
<input type="hidden" name="balance_currency_id" value="{{ defaultCurrency.id }}"/>
</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>
<div class="col-sm-8">
<div class="checkbox">
<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>
<div class="col-sm-8">
{{ Form.input('date', name, value, options) }}
{% 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>
<div class="col-sm-8">
<div class="input-group">
{{ Form.input('number', name, value, options) }}

View File

@@ -1,14 +1,15 @@
<div class="{{ classes }}" id="{{ name}}_holder">
<div class="{{ classes }}" id="{{ name }}_holder">
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8">
<div id="map-canvas" style="width:100%;height:300px;"></div>
<p class="help-block">Right-click to set the tag's location.
<a href="#" id="clearLocation">Clear location</a>
</p>
<input type="hidden" name="latitude" value="" />
<input type="hidden" name="longitude" value="" />
<input type="hidden" name="zoomLevel" value="6" />
<input type="hidden" name="setTag" value="" />
<input type="hidden" name="latitude" value=""/>
<input type="hidden" name="longitude" value=""/>
<input type="hidden" name="zoomLevel" value="6"/>
<input type="hidden" name="setTag" value=""/>
{% include 'form/feedback.twig' %}
</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>
<div class="col-sm-8">
{% for value,description in list %}
<div class="radio">

View File

@@ -3,6 +3,7 @@
<label for="{{ name }}_return_to_form" class="col-sm-4 control-label">
{{ trans('form.returnHere') }}
</label>
<div class="col-sm-8">
<div class="radio">
<label>
@@ -20,6 +21,7 @@
<label for="{{ name }}_return_to_edit" class="col-sm-4 control-label">
{{ trans('form.returnHere') }}
</label>
<div class="col-sm-8">
<div class="radio"><label>
{{ 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>
<div class="col-sm-8">
{{ Form.select(name, list, selected , options ) }}
{% 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>
<div class="col-sm-8">
{{ Form.input('text', name, value, options) }}
{% 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>
<div class="col-sm-8">
{{ Form.input('text', name, value, options) }}
{% 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>
<div class="col-sm-8">
{{ Form.textarea(name, value, options) }}
{% include 'form/feedback.twig' %}

View File

@@ -6,14 +6,15 @@
{% block content %}
{% include 'partials/boxes.twig' %}
{% include 'partials/boxes.twig' %}
<div class="row">
<div class="row">
<div class="col-lg-8 col-md-12 col-sm-12">
<!-- ACCOUNTS -->
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">{{ 'yourAccounts'|_ }}</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
@@ -27,6 +28,7 @@
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'budgetsAndSpending'|_ }}</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
@@ -39,6 +41,7 @@
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'categories'|_ }}</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
@@ -52,6 +55,7 @@
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'savings'|_ }}</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
@@ -62,7 +66,8 @@
{% else %}
{% for account in savings %}
<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 class="row">
<!-- start -->
@@ -74,27 +79,27 @@
<div class="progress">
<div class="progress-bar progress-bar-success" style="width: {{ 100 - account.percentage }}%">
{% if account.percentage <= 50 %}
{{account.difference|formatAmountPlain}}
{{ account.difference|formatAmountPlain }}
{% endif %}
</div>
<div class="progress-bar progress-bar-danger" style="width: {{ account.percentage }}%">
{% if account.percentage > 50 %}
{{account.difference|formatAmountPlain}}
{{ account.difference|formatAmountPlain }}
{% endif %}
</div>
</div>
{% else %}
<!-- green (pct), then blue (100-pct) -->
<div class="progress">
<div class="progress-bar progress-bar-success" style="width: {{account.percentage}}%">
<div class="progress-bar progress-bar-success" style="width: {{ account.percentage }}%">
{% if account.percentage <= 50 %}
{{account.difference|formatAmountPlain}}
{{account.difference|formatAmountPlain}}
{{ account.difference|formatAmountPlain }}
{{ account.difference|formatAmountPlain }}
{% endif %}
</div>
<div class="progress-bar progress-bar-info" style="width: {{100 - account.percentage}}%">
<div class="progress-bar progress-bar-info" style="width: {{ 100 - account.percentage }}%">
{% if account.percentage > 50 %}
{{account.difference|formatAmountPlain}}
{{ account.difference|formatAmountPlain }}
{% endif %}
</div>
</div>
@@ -116,17 +121,19 @@
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'piggyBanks'|_ }}</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
</div>
<div class="box-body">
{% if piggyBankAccounts|length == 0%}
{% if piggyBankAccounts|length == 0 %}
<p class="small"><em>{{ 'createPiggyToContinue'|_ }}</em></p>
{% else %}
{% for account in piggyBankAccounts %}
<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 class="row">
<!-- start -->
@@ -135,14 +142,14 @@
<div class="col-lg-8 col-md-8 col-sm-6 col-xs-4">
<div class="progress">
<div class="progress-bar progress-bar-info progress-bar" style="width: {{100 - account.percentage}}%">
<div class="progress-bar progress-bar-info progress-bar" style="width: {{ 100 - account.percentage }}%">
{% if account.percentage <= 50 %}
{{account.piggyBalance|formatAmountPlain}} {{ 'divided'|_}}
{{ account.piggyBalance|formatAmountPlain }} {{ 'divided'|_ }}
{% endif %}
</div>
<div class="progress-bar progress-bar-success progress-bar" style="width: {{account.percentage}}%">
<div class="progress-bar progress-bar-success progress-bar" style="width: {{ account.percentage }}%">
{% if account.percentage > 50 %}
{{account.difference|formatAmountPlain}} {{ 'toDivide'|_}}
{{ account.difference|formatAmountPlain }} {{ 'toDivide'|_ }}
{% endif %}
</div>
</div>
@@ -177,7 +184,7 @@
{% for data in transactions %}
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{data[1].name}}</h3>
<h3 class="box-title">{{ data[1].name }}</h3>
<!-- ACTIONS MENU -->
<div class="box-tools pull-right">
@@ -185,26 +192,29 @@
<div class="btn-group">
<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">
<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','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>
<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','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>
</div>
</div>
</div>
<div class="box-body no-padding">
{% include 'list/journals-tiny.twig' with {'transactions': data[0],'account': data[1]} %}
</div>
<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>
{% endfor %}
</div>
</div>
</div>
{% endblock %}

View File

@@ -66,7 +66,7 @@
ga('send', 'event', '{{Session.get('gaEventCategory')}}', '{{Session.get('gaEventAction')}}');
{% endif %}
{% if Session.has('gaEventCategory') and Session.has('gaEventAction') and Session.has('gaEventLabel') %}
ga('send', 'event', '{{Session.get('gaEventCategory')}}', '{{Session.get('gaEventAction')}}','{{ Session.get('gaEventLabel') }}');
ga('send', 'event', '{{Session.get('gaEventCategory')}}', '{{Session.get('gaEventAction')}}', '{{ Session.get('gaEventLabel') }}');
{% endif %}
</script>
</body>

View File

@@ -17,11 +17,11 @@
<tr>
<td>
<div class="btn-group btn-group-xs">
<a class="btn btn-default btn-xs" href="{{route('accounts.edit',account.id)}}"><i class="fa fa-fw fa-pencil"></i></a>
<a class="btn btn-danger btn-xs" href="{{route('accounts.delete',account.id)}}"><i class="fa fa-fw fa-trash-o"></i></a>
<a class="btn btn-default btn-xs" href="{{ route('accounts.edit',account.id) }}"><i class="fa fa-fw fa-pencil"></i></a>
<a class="btn btn-danger btn-xs" href="{{ route('accounts.delete',account.id) }}"><i class="fa fa-fw fa-trash-o"></i></a>
</div>
</td>
<td><a href="{{route('accounts.show',account.id)}}">{{ account.name }}</a></td>
<td><a href="{{ route('accounts.show',account.id) }}">{{ account.name }}</a></td>
{% if what == "asset" %}
<td class="hidden-sm hidden-xs">
{% for entry in account.accountmeta %}
@@ -32,7 +32,7 @@
</td>
{% endif %}
<td data-value="{{ account|balance }}">{{ account|balance|formatAmount }}</td>
<td class="hidden-sm hidden-xs" data-value="{{account.active}}">
<td class="hidden-sm hidden-xs" data-value="{{ account.active }}">
{% if account.active %}
<i class="fa fa-fw fa-check"></i>
{% else %}
@@ -48,7 +48,7 @@
<em>Never</em>
</td>
{% endif %}
<td class="hidden-sm hidden-xs" data-value="{{account.endBalance - account.startBalance}}">
<td class="hidden-sm hidden-xs" data-value="{{ account.endBalance - account.startBalance }}">
{{ (account.endBalance - account.startBalance)|formatAmount }}
</td>

View File

@@ -10,18 +10,19 @@
<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.repeat_freq') }}</th>
</tr></thead>
</tr>
</thead>
<tbody>
{% for entry in bills %}
<tr>
<td>
<div class="btn-group btn-group-xs">
<a href="{{route('bills.edit',entry.id)}}" class="btn btn-default btn-xs"><i class="fa fa-fw fa-pencil"></i></a>
<a href="{{route('bills.delete',entry.id)}}" class="btn btn-danger btn-xs"><i class="fa fa-fw fa-trash-o"></i></a>
<a href="{{ route('bills.edit',entry.id) }}" class="btn btn-default btn-xs"><i class="fa fa-fw fa-pencil"></i></a>
<a href="{{ route('bills.delete',entry.id) }}" class="btn btn-danger btn-xs"><i class="fa fa-fw fa-trash-o"></i></a>
</div>
</td>
<td>
<a href="{{route('bills.show',entry.id)}}" title="{{ entry.name }}">{{ entry.name }}</a>
<a href="{{ route('bills.show',entry.id) }}" title="{{ entry.name }}">{{ entry.name }}</a>
</td>
<td class="hidden-sm hidden-xs" data-value="{{ entry.match }}">
{% for match in entry.match|split(',') %}
@@ -36,7 +37,7 @@
</td>
{% if entry.lastFoundMatch %}
<td class="hidden-sm hidden-xs" data-value="{{ entry.lastFoundMatch.format('U') }}">
{{entry.lastFoundMatch.formatLocalized(monthAndDayFormat)}}
{{ entry.lastFoundMatch.formatLocalized(monthAndDayFormat) }}
</td>
{% else %}
<td class="hidden-sm hidden-xs" data-value="0">
@@ -44,9 +45,9 @@
</td>
{% endif %}
{% if entry.nextExpectedMatch%}
<td class="hidden-sm hidden-xs" data-value="{{entry.nextExpectedMatch.format('U')}}">
{{entry.nextExpectedMatch.formatLocalized(monthAndDayFormat)}}
{% if entry.nextExpectedMatch %}
<td class="hidden-sm hidden-xs" data-value="{{ entry.nextExpectedMatch.format('U') }}">
{{ entry.nextExpectedMatch.formatLocalized(monthAndDayFormat) }}
</td>
{% else %}
<td class="hidden-sm hidden-xs" data-value="0">
@@ -71,7 +72,7 @@
<td class="hidden-sm hidden-xs" data-value="{{ entry.repeat_freq }}{{ entry.skip }}">
{{ entry.repeat_freq|_ }}
{% if entry.skip > 0 %}
skips over {{entry.skip}}
skips over {{ entry.skip }}
{% endif %}
</td>
</tr>

View File

@@ -25,7 +25,7 @@
</td>
{% if category.lastActivity %}
<td class="hidden-sm hidden-xs" data-value="{{ category.lastActivity.format('U') }}">
{{category.lastActivity.formatLocalized(monthAndDayFormat) }}
{{ category.lastActivity.formatLocalized(monthAndDayFormat) }}
</td>
{% else %}
<td class="hidden-sm hidden-xs" data-value="0">

View File

@@ -1,7 +1,7 @@
<div class="list-group">
{% for journal in transactions %}
<a class="list-group-item" title="{{journal.date.format('jS M Y')}}" href="{{route('transactions.show',journal.id)}}">
<a class="list-group-item" title="{{ journal.date.format('jS M Y') }}" href="{{ route('transactions.show',journal.id) }}">
{{ journal|typeIcon }}
@@ -13,5 +13,5 @@
</span>
</a>
{% endfor %}
{% endfor %}
</div>

View File

@@ -33,17 +33,17 @@
</td>
<td>&nbsp;</td>
<td>{{ journal.description }}</td>
<td colspan="7"><em>Invalid journal: Found {{journal.transactions|length }} transaction(s)</em></td>
<td colspan="7"><em>Invalid journal: Found {{ journal.transactions|length }} transaction(s)</em></td>
</tr>
{% else %}
<tr class="drag" data-date="{{journal.date.format('Y-m-d')}}" data-id="{{journal.id}}">
<tr class="drag" data-date="{{ journal.date.format('Y-m-d') }}" data-id="{{ journal.id }}">
<td class="hidden-xs">
<div class="btn-group btn-group-xs">
{% if sorting %}
<a href="#" class="handle btn btn-default btn-xs"><i class="fa fa-fw fa-arrows-v"></i></a>
{% endif %}
<a href="{{ route('transactions.edit',journal.id)}}" class="btn btn-xs btn-default"><i class="fa fa-fw fa-pencil"></i></a>
<a href="{{ route('transactions.delete',journal.id)}}" class="btn btn-xs btn-danger"><i class="fa fa-fw fa-trash-o"></i></a>
<a href="{{ route('transactions.edit',journal.id) }}" class="btn btn-xs btn-default"><i class="fa fa-fw fa-pencil"></i></a>
<a href="{{ route('transactions.delete',journal.id) }}" class="btn btn-xs btn-danger"><i class="fa fa-fw fa-trash-o"></i></a>
</div>
</td>
@@ -51,7 +51,7 @@
{{ journal|typeIcon }}
</td>
<td>
<a href="{{route('transactions.show',journal.id)}}" title="{{journal.description}}">{{journal.description}}</a>
<a href="{{ route('transactions.show',journal.id) }}" title="{{ journal.description }}">{{ journal.description }}</a>
</td>
<td>
{% if not hideTags %}
@@ -61,20 +61,20 @@
{% endif %}
</td>
<td class="hidden-sm hidden-xs">
{{journal.date.formatLocalized(monthAndDayFormat)}}
{{ journal.date.formatLocalized(monthAndDayFormat) }}
</td>
<td class="hidden-xs">
{% if journal.source_account.accountType.type == 'Cash account' %}
<span class="text-success">(cash)</span>
{% else %}
<a href="{{route('accounts.show',journal.source_account.id)}}">{{journal.source_account.name}}</a>
<a href="{{ route('accounts.show',journal.source_account.id) }}">{{ journal.source_account.name }}</a>
{% endif %}
</td>
<td class="hidden-xs">
{% if journal.destination_account.accountType.type == 'Cash account' %}
<span class="text-success">(cash)</span>
{% else %}
<a href="{{route('accounts.show',journal.destination_account.id)}}">{{journal.destination_account.name}}</a>
<a href="{{ route('accounts.show',journal.destination_account.id) }}">{{ journal.destination_account.name }}</a>
{% endif %}
</td>
@@ -82,7 +82,7 @@
{% if not hideBudgets %}
<td class="hidden-xs">
{% if journal.budgets[0] %}
<a href="{{route('budgets.show',journal.budgets[0].id)}}">{{journal.budgets[0].name}}</a>
<a href="{{ route('budgets.show',journal.budgets[0].id) }}">{{ journal.budgets[0].name }}</a>
{% endif %}
</td>
{% endif %}
@@ -91,7 +91,7 @@
{% if not hideCategories %}
<td class="hidden-xs">
{% if journal.categories[0] %}
<a href="{{route('categories.show',journal.categories[0].id)}}">{{journal.categories[0].name}}</a>
<a href="{{ route('categories.show',journal.categories[0].id) }}">{{ journal.categories[0].name }}</a>
{% endif %}
</td>
{% endif %}
@@ -100,7 +100,7 @@
{% if not hideBills %}
<td class="hidden-xs">
{% if journal.bill %}
<a href="{{ route('bills.show',journal.bill_id) }}">{{journal.bill.name}}</a>
<a href="{{ route('bills.show',journal.bill_id) }}">{{ journal.bill.name }}</a>
{% endif %}
</td>
{% endif %}

View File

@@ -15,7 +15,8 @@
{% endif %}
<td>
{% 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 %}
{{ event.date.format('j F Y') }}
{% endif %}

View File

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

View File

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

View File

@@ -1,27 +1,27 @@
{% if Session.has('success') %}
<div class="alert alert-success alert-dismissible" role="alert">
<div class="alert alert-success alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button>
<strong>Success!</strong> {{Session.get('success')}}
</div>
<strong>Success!</strong> {{ Session.get('success') }}
</div>
{% endif %}
{% if Session.has('info') %}
<div class="alert alert-info alert-dismissible" role="alert">
<div class="alert alert-info alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button>
<strong>Info:</strong> {{Session.get('info')}}
</div>
<strong>Info:</strong> {{ Session.get('info') }}
</div>
{% endif %}
{% if Session.has('warning') %}
<div class="alert alert-warning alert-dismissible" role="alert">
<div class="alert alert-warning alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button>
<strong>Warning!</strong> {{Session.get('warning')}}
</div>
<strong>Warning!</strong> {{ Session.get('warning') }}
</div>
{% endif %}
{% if Session.has('error') %}
<div class="alert alert-danger alert-dismissible" role="alert">
<div class="alert alert-danger alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">&times;</span><span class="sr-only">{{ 'close'|_ }}</span></button>
<strong>Error!</strong> {{Session.get('error')}}
</div>
<strong>Error!</strong> {{ Session.get('error') }}
</div>
{% endif %}

View File

@@ -132,7 +132,6 @@
<!-- other options -->
<li>
<a href="{{ route('logout') }}">
<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>
</a>
<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','transfer') }}"><i class="fa fa-exchange fa-fw"></i> {{ 'create_new_transfer'|_ }}</a></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>
</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>
<a class="{{ activeRoutePartial('tags') }}" href="{{ route('tags.index') }}"><i class="fa fa-tags fa-fw"></i> {{ 'tags'|_ }}</a>
</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 class="{{ activeRoutePartial('transactions') }}">
<a href="#"><i class="fa fa-repeat fa-fw"></i> {{ 'transactions'|_ }}<span class="fa arrow"></span></a>
@@ -159,7 +162,8 @@
</li>
<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 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>

View File

@@ -1,18 +1,21 @@
<div class="modal-dialog">
<div class="modal-content">
<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>
</div>
<form style="display: inline;" id="add" action="{{ route('piggy-banks.add', piggyBank.id) }}" method="POST">
<div class="modal-body">
<input type="hidden" name="_token" value="{{ csrf_token() }}" />
<input type="hidden" name="_token" value="{{ csrf_token() }}"/>
<p>
{{ 'max_amount_add'|_ }}: {{ maxAmount|formatAmount }}.
</p>
<div class="input-group">
<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"/>
</div>
</div>
<div class="modal-footer">

View File

@@ -1,9 +1,11 @@
<div class="modal-dialog">
<div class="modal-dialog">
<div class="modal-content">
<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">
<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>
</div>
@@ -11,9 +13,11 @@
<p>
{{ 'max_amount_remove'|_ }}: {{ currentRelevantRepAmount(piggyBank)|formatAmount }}.
</p>
<div class="input-group">
<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 class="modal-footer">
@@ -23,4 +27,4 @@
</form>
</div>
</div>
</div>

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-6 col-lg-offset-3 col-md-6 col-sm-12">
<div class="box box-primary">
<div class="box-header with-border">
@@ -13,11 +13,11 @@
</div>
<div class="box-body">
<ul>
<li><a href="{{route('profile.change-password')}}">Change your password</a></li>
<li><a class="text-danger" href="{{route('profile.delete-account')}}">Delete account</a></li>
<li><a href="{{ route('profile.change-password') }}">Change your password</a></li>
<li><a class="text-danger" href="{{ route('profile.delete-account') }}">Delete account</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -14,10 +14,10 @@
<div class="box-body">
{% for year, entries in months %}
<h4><a href="{{route('reports.year',year)}}">{{ year }}</a></h4>
<h4><a href="{{ route('reports.year',year) }}">{{ year }}</a></h4>
<ul class="list-inline">
{% for month in entries %}
<li><a href="{{route('reports.month',[month.year, month.month])}}">{{ month.formatted}}</a></li>
<li><a href="{{ route('reports.month',[month.year, month.month]) }}">{{ month.formatted }}</a></li>
{% endfor %}
</ul>
{% endfor %}
@@ -35,10 +35,10 @@
<div class="box-body">
{% for year, entries in months %}
<h4><a href="{{route('reports.year',[year, 'shared'])}}">{{ year }}</a></h4>
<h4><a href="{{ route('reports.year',[year, 'shared']) }}">{{ year }}</a></h4>
<ul class="list-inline">
{% for month in entries %}
<li><a href="{{route('reports.month',[month.year, month.month,'shared'])}}">{{ month.formatted}}</a></li>
<li><a href="{{ route('reports.month',[month.year, month.month,'shared']) }}">{{ month.formatted }}</a></li>
{% endfor %}
</ul>
{% endfor %}

View File

@@ -33,7 +33,7 @@
{% include 'partials/reports/expenses.twig' %}
</div>
</div>
<div class="row">
<div class="row">
<div class="col-lg-8 col-md-8 col-sm-12">
<!-- budgets -->
{% include 'partials/reports/budgets.twig' %}
@@ -42,26 +42,26 @@
<!-- categories -->
{% include 'partials/reports/categories.twig' %}
</div>
</div>
<div class="row">
</div>
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
</div>
</div>
<div class="row">
</div>
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
{% include 'partials/reports/balance.twig' %}
</div>
</div>
<div class="row">
</div>
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
{% include 'partials/reports/bills.twig' %}
</div>
</div>
</div>
{% endblock %}
{% block styles %}
<link rel="stylesheet" href="css/bootstrap-sortable.css" type="text/css" media="all" />
<link rel="stylesheet" href="css/bootstrap-sortable.css" type="text/css" media="all"/>
{% endblock %}
{% block scripts %}
@@ -75,7 +75,8 @@
<script type="text/javascript">
var year = {{ start.year }};
var month = {{ start.month }};
var shared = {% if shared %}'/shared'{% else %}''{% endif %};
var shared = {% if shared %}'/shared'
{% else %}''{% endif %};
var incomeTopLength = {{ incomeTopLength }};
var expenseTopLength = {{ expenseTopLength }};
var incomeRestShow = false; // starts hidden.

View File

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

View File

@@ -5,8 +5,8 @@
{% endblock %}
{% block content %}
{% if query %}
<div class="row">
{% if query %}
<div class="row">
{% if result.transactions|length > 0 %}
<div class="col-lg-6 col-md-12 col-sm-12">
<div class="box">
@@ -31,7 +31,7 @@
<div class="box-body no-padding">
<div class="list-group">
{% for category in result.categories %}
<a class="list-group-item" title="{{category.name}}" href="{{route('categories.show',category.id)}}">
<a class="list-group-item" title="{{ category.name }}" href="{{ route('categories.show',category.id) }}">
{{ category.name }}
</a>
{% endfor %}
@@ -53,7 +53,7 @@
<p>Bla bla</p>
</div>
<div class="box-footer">
<span class="pull-right">Results: {{result['tags']|length}}</span>
<span class="pull-right">Results: {{ result['tags']|length }}</span>
</div>
</div>
</div>
@@ -67,14 +67,14 @@
<div class="box-body no-padding">
<div class="list-group">
{% for account in result.accounts %}
<a class="list-group-item" title="{{account.name}}" href="{{route('accounts.show',account.id)}}">
<a class="list-group-item" title="{{ account.name }}" href="{{ route('accounts.show',account.id) }}">
{{ account.name }}
</a>
{% endfor %}
</div>
</div>
<div class="box-footer">
<span class="pull-right">Results: {{result['accounts'].count()}}</span>
<span class="pull-right">Results: {{ result['accounts'].count() }}</span>
</div>
</div>
</div>
@@ -88,26 +88,26 @@
<div class="box-body">
<div class="list-group">
{% for budget in result.budgets %}
<a class="list-group-item" title="{{budget.name}}" href="{{route('budgets.show',budget.id)}}">
<a class="list-group-item" title="{{ budget.name }}" href="{{ route('budgets.show',budget.id) }}">
{{ budget.name }}
</a>
{% endfor %}
</div>
</div>
<div class="box-footer">
<span class="pull-right">Results: {{result['budgets'].count()}}</span>
<span class="pull-right">Results: {{ result['budgets'].count() }}</span>
</div>
</div>
</div>
{% endif %}
</div>
{% endif %}
</div>
{% endif %}
{% endblock %}
{% block scripts %}
<script type="text/javascript">
<script type="text/javascript">
var query = '{{ query }}';
</script>
</script>
{% endblock %}

View File

@@ -7,7 +7,7 @@
{% block content %}
{{ Form.open({'class' : 'form-horizontal','id' : 'store','route' : 'tags.store'}) }}
<div class="row">
<div class="row">
<div class="col-lg-5 col-md-5 col-sm-12">
<div class="box box-primary">
<div class="box-header with-border">
@@ -49,8 +49,8 @@
</div>
</div>
</div>
{{ Form.close|raw }}
</div>
{{ Form.close|raw }}
{% endblock %}
{% block scripts %}
<script type="text/javascript">

View File

@@ -7,9 +7,9 @@
{% block content %}
{{ Form.model(tag, {'class' : 'form-horizontal','id' : 'update','url' : route('tags.update',tag.id)}) }}
<input type="hidden" name="id" value="{{ tag.id }}" />
<input type="hidden" name="id" value="{{ tag.id }}"/>
<div class="row">
<div class="row">
<div class="col-lg-5 col-md-5 col-sm-12">
<div class="box box-primary">
<div class="box-header with-border">
@@ -51,7 +51,7 @@
</div>
</div>
</div>
</div>
{{ Form.close|raw }}

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-12">
<div class="box">
<div class="box-header with-border">
@@ -26,6 +26,7 @@
and add information about the restaurant. Such tags are "singular", you would only use them for a single occasion,
perhaps with multiple transactions.
</p>
<p>
Tags group transactions together, which makes it possible to store reimbursements
(in case you front money for others) and other "balancing acts" where expenses
@@ -33,17 +34,18 @@
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.
</p>
<p>
Create a tag to get started or enter tags when creating new transactions.
</p>
</div>
<div class="box-footer">
<a href="{{route('tags.create')}}" title="New tag" class="btn btn-info pull-right">Create new tag</a>
<a href="{{ route('tags.create') }}" title="New tag" class="btn btn-info pull-right">Create new tag</a>
</div>
</div>
</div>
</div>
<div class="row">
</div>
<div class="row">
{% for type in types %}
<div class="col-lg-4">
<div class="box">
@@ -62,7 +64,8 @@
<h5>{{ month }}</h5>
<p style="line-height: 200%;">
{% 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' %}
<i class="fa fa-fw fa-tag"></i>
{% endif %}
@@ -72,7 +75,7 @@
{% if tag.tagMode == 'advancePayment' %}
<i class="fa fa-fw fa-sort-numeric-desc"></i>
{% endif %}
{{tag.tag}}</a>
{{ tag.tag }}</a>
</span>
{% endfor %}
</p>
@@ -85,9 +88,9 @@
</div>
{% endfor %}
</div>
</div>
{% endblock %}
{% block scripts %}
<script type="text/javascript" src="js/tags.js"></script>
<script type="text/javascript" src="js/tags.js"></script>
{% endblock %}

View File

@@ -19,8 +19,8 @@
<div class="btn-group">
<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">
<li><a href="{{route('tags.edit',tag.id)}}"><i class="fa fa-pencil fa-fw"></i> Edit tag</a></li>
<li><a href="{{route('tags.delete',tag.id)}}"><i class="fa fa-trash fa-fw"></i> Delete tag</a></li>
<li><a href="{{ route('tags.edit',tag.id) }}"><i class="fa fa-pencil fa-fw"></i> Edit tag</a></li>
<li><a href="{{ route('tags.delete',tag.id) }}"><i class="fa fa-trash fa-fw"></i> Delete tag</a></li>
</ul>
</div>
</div>
@@ -29,12 +29,12 @@
{% if tag.description %}
<p class="text-info">
{{tag.description}}
{{ tag.description }}
</p>
{% endif %}
{% if tag.date %}
<p>Date: {{tag.date.formatLocalized(monthAndDayFormat)}}</p>
<p>Date: {{ tag.date.formatLocalized(monthAndDayFormat) }}</p>
{% endif %}
</div>
</div>
@@ -50,8 +50,8 @@
<div class="btn-group">
<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">
<li><a href="{{route('tags.edit',tag.id)}}"><i class="fa fa-pencil fa-fw"></i> Edit tag</a></li>
<li><a href="{{route('tags.delete',tag.id)}}"><i class="fa fa-trash fa-fw"></i> Delete tag</a></li>
<li><a href="{{ route('tags.edit',tag.id) }}"><i class="fa fa-pencil fa-fw"></i> Edit tag</a></li>
<li><a href="{{ route('tags.delete',tag.id) }}"><i class="fa fa-trash fa-fw"></i> Delete tag</a></li>
</ul>
</div>
</div>
@@ -59,7 +59,7 @@
<div class="box-body">
{% if tag.latitude and tag.longitude and tag.zoomLevel %}
<p>
<img src="https://maps.googleapis.com/maps/api/staticmap?center={{tag.latitude}},{{tag.longitude}}&zoom={{tag.zoomLevel}}&size=600x300">
<img src="https://maps.googleapis.com/maps/api/staticmap?center={{ tag.latitude }},{{ tag.longitude }}&zoom={{ tag.zoomLevel }}&size=600x300">
</p>
{% else %}
<p>No location set.</p>
@@ -68,7 +68,7 @@
</div>
</div>
</div>
<div class="row">
<div class="row">
<div class="col-lg-612 col-md-12 col-sm-12 col-xs-12">
<div class="box">
<div class="box-header with-border">
@@ -80,8 +80,8 @@
<div class="btn-group">
<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">
<li><a href="{{route('tags.edit',tag.id)}}"><i class="fa fa-pencil fa-fw"></i> Edit tag</a></li>
<li><a href="{{route('tags.delete',tag.id)}}"><i class="fa fa-trash fa-fw"></i> Delete tag</a></li>
<li><a href="{{ route('tags.edit',tag.id) }}"><i class="fa fa-pencil fa-fw"></i> Edit tag</a></li>
<li><a href="{{ route('tags.delete',tag.id) }}"><i class="fa fa-trash fa-fw"></i> Delete tag</a></li>
</ul>
</div>
</div>
@@ -91,11 +91,11 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block scripts %}
<script type="text/javascript">
<script type="text/javascript">
var tagID = {{tag.id}};
</script>
</script>
{% endblock %}

View File

@@ -6,7 +6,7 @@
{% block content %}
{{ Form.open({'class' : 'form-horizontal','id' : 'store','url' : route('transactions.store',what)}) }}
<input type="hidden" name="what" value="{{ what }}" />
<input type="hidden" name="what" value="{{ what }}"/>
<div class="row">
<div class="col-lg-6 col-md-12 col-sm-12">
<div class="box box-primary">
@@ -16,6 +16,7 @@
<div class="box-body">
<div class="form-group">
<label class="col-sm-4 control-label">Quickswitch</label>
<div class="col-sm-8">
<div class="btn-group btn-group-justified">
<a href="#" data-what="withdrawal" class="switch btn btn-default"> {{ 'withdrawal'|_ }}</a>

View File

@@ -7,7 +7,7 @@
{% block content %}
{{ Form.open({'class' : 'form-horizontal','id' : 'destroy','url' : route('transactions.destroy',journal.id)}) }}
<div class="row">
<div class="row">
<div class="col-lg-6 col-lg-offset-3 col-md-6 col-sm-12">
<div class="box box-danger">
<div class="box-header with-border">
@@ -17,25 +17,26 @@
<p class="text-danger">
{{ trans('form.permDeleteWarning') }}
</p>
<p>
{{ trans('form.journal_areYouSure', {'description': journal.description}) }}
</p>
</div>
<div class="box-footer">
<input type="submit" name="submit" value="{{ trans('form.deletePermanently') }}" class="btn btn-danger pull-right" />
<input type="submit" name="submit" value="{{ trans('form.deletePermanently') }}" class="btn btn-danger pull-right"/>
{% if journal.transactiontype.type == 'Withdrawal' %}
<a href="{{route('transactions.index','withdrawal')}}" class="btn-default btn">{{ trans('form.cancel') }}</a>
<a href="{{ route('transactions.index','withdrawal') }}" class="btn-default btn">{{ trans('form.cancel') }}</a>
{% endif %}
{% if journal.transactiontype.type == 'Deposit' %}
<a href="{{route('transactions.index','deposit')}}" class="btn-default btn">{{ trans('form.cancel') }}</a>
<a href="{{ route('transactions.index','deposit') }}" class="btn-default btn">{{ trans('form.cancel') }}</a>
{% endif %}
{% if journal.transactiontype.type == 'Transfer' %}
<a href="{{route('transactions.index','transfers')}}" class="btn-default btn">{{ trans('form.cancel') }}</a>
<a href="{{ route('transactions.index','transfers') }}" class="btn-default btn">{{ trans('form.cancel') }}</a>
{% endif %}
</div>
</div>
</div>
</div>
</div>
{{ Form.close|raw }}
{{ Form.close|raw }}
{% endblock %}

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-12 col-sm-12 col-md-12">
<div class="box">
<div class="box-header with-border">
@@ -16,7 +16,7 @@
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block scripts %}

View File

@@ -5,7 +5,7 @@
{% endblock %}
{% block content %}
<div class="row">
<div class="row">
<div class="col-lg-6 col-md-6 col-sm-12">
<div class="box">
<div class="box-header with-border">
@@ -34,13 +34,13 @@
{% for budget in journal.budgets %}
<tr>
<td>{{ 'budget'|_ }}</td>
<td><a href="{{route('budgets.show',budget.id)}}">{{ budget.name }}</a></td>
<td><a href="{{ route('budgets.show',budget.id) }}">{{ budget.name }}</a></td>
</tr>
{% endfor %}
{% for category in journal.categories %}
<tr>
<td>{{ 'category'|_ }}</td>
<td><a href="{{route('categories.show',category.id)}}">{{ category.name }}</a></td>
<td><a href="{{ route('categories.show',category.id) }}">{{ category.name }}</a></td>
</tr>
{% endfor %}
{% if journal.tags|length > 0 %}
@@ -49,7 +49,7 @@
<td>
{% for tag in journal.tags %}
<h4 style="display: inline;"><a class="label label-success" href="{{route('tags.show',tag)}}">
<h4 style="display: inline;"><a class="label label-success" href="{{ route('tags.show',tag) }}">
{% if tag.tagMode == 'nothing' %}
<i class="fa fa-fw fa-tag"></i>
{% endif %}
@@ -59,7 +59,7 @@
{% if tag.tagMode == 'advancePayment' %}
<i class="fa fa-fw fa-sort-numeric-desc"></i>
{% endif %}
{{tag.tag}}</a>
{{ tag.tag }}</a>
</h4>
{% endfor %}
</td>
@@ -69,8 +69,8 @@
</div>
<div class="box-footer">
<div class="pull-right">
<a class="btn btn-default" href="{{route('transactions.edit',journal.id)}}">{{ 'edit'|_ }}</a>
<a href="{{route('transactions.delete',journal.id)}}" class="btn btn-danger">{{ 'delete'|_ }}</a>
<a class="btn btn-default" href="{{ route('transactions.edit',journal.id) }}">{{ 'edit'|_ }}</a>
<a href="{{ route('transactions.delete',journal.id) }}" class="btn btn-danger">{{ 'delete'|_ }}</a>
</div>
</div>
</div>
@@ -96,7 +96,7 @@
<table class="table table-hover sortable">
<tr>
<td>{{ 'account'|_ }}</td>
<td><a href="{{route('accounts.show',t.account.id)}}">{{ t.account.name }}</a></td>
<td><a href="{{ route('accounts.show',t.account.id) }}">{{ t.account.name }}</a></td>
</tr>
<tr>
<td>{{ 'account_type'|_ }}</td>
@@ -120,9 +120,9 @@
</div>
{% endfor %}
</div>
</div>
</div>
{% endblock %}
{% block scripts %}
<script type="text/javascript" src="js/transactions.js"></script>
<script type="text/javascript" src="js/transactions.js"></script>
{% endblock %}