Various code cleanup.

This commit is contained in:
James Cole 2017-12-29 09:05:35 +01:00
parent cf66ae61e1
commit 3815f9836f
No known key found for this signature in database
GPG Key ID: C16961E655E74B5E
135 changed files with 1021 additions and 973 deletions

View File

@ -150,7 +150,9 @@ class CreateImport extends Command
$this->error(sprintf('Error importing line #%d: %s', $index, $error));
}
$this->line(
sprintf('The import has finished. %d transactions have been imported out of %d records.', $routine->getJournals()->count(), $routine->lines)
sprintf(
'The import has finished. %d transactions have been imported out of %d records.', $routine->getJournals()->count(), $routine->getLines()
)
);
}

View File

@ -85,8 +85,8 @@ class Import extends Command
$monolog->pushHandler($handler);
// actually start job:
$type = 'csv' === $job->file_type ? 'file' : $job->file_type;
$key = sprintf('import.routine.%s', $type);
$type = 'csv' === $job->file_type ? 'file' : $job->file_type;
$key = sprintf('import.routine.%s', $type);
$className = config($key);
if (null === $className || !class_exists($className)) {
throw new FireflyException(sprintf('Cannot find import routine class for job of type "%s".', $type)); // @codeCoverageIgnore
@ -98,11 +98,13 @@ class Import extends Command
$routine->run();
/** @var MessageBag $error */
foreach ($routine->errors as $index => $error) {
foreach ($routine->getErrors() as $index => $error) {
$this->error(sprintf('Error importing line #%d: %s', $index, $error));
}
$this->line(sprintf('The import has finished. %d transactions have been imported out of %d records.', $routine->journals->count(), $routine->lines));
$this->line(
sprintf('The import has finished. %d transactions have been imported out of %d records.', $routine->getJournals()->count(), $routine->getLines())
);
return;
}

View File

@ -203,7 +203,7 @@ final class Entry
$entry->description = $transaction->transaction_description . '(' . $transaction->description . ')';
}
$entry->currency_code = $transaction->transactionCurrency->code;
$entry->amount = round($transaction->transaction_amount, $transaction->transactionCurrency->decimal_places);
$entry->amount = strval(round($transaction->transaction_amount, $transaction->transactionCurrency->decimal_places));
$entry->foreign_currency_code = null === $transaction->foreign_currency_id ? null : $transaction->foreignCurrency->code;
$entry->foreign_amount = null === $transaction->foreign_currency_id
@ -216,14 +216,14 @@ final class Entry
);
$entry->transaction_type = $transaction->transaction_type_type;
$entry->asset_account_id = $transaction->account_id;
$entry->asset_account_id = strval($transaction->account_id);
$entry->asset_account_name = app('steam')->tryDecrypt($transaction->account_name);
$entry->asset_account_iban = $transaction->account_iban;
$entry->asset_account_number = $transaction->account_number;
$entry->asset_account_bic = $transaction->account_bic;
$entry->asset_currency_code = $transaction->account_currency_code;
$entry->opposing_account_id = $transaction->opposing_account_id;
$entry->opposing_account_id = strval($transaction->opposing_account_id);
$entry->opposing_account_name = app('steam')->tryDecrypt($transaction->opposing_account_name);
$entry->opposing_account_iban = $transaction->opposing_account_iban;
$entry->opposing_account_number = $transaction->opposing_account_number;
@ -231,7 +231,7 @@ final class Entry
$entry->opposing_currency_code = $transaction->opposing_currency_code;
// budget
$entry->budget_id = $transaction->transaction_budget_id;
$entry->budget_id = strval($transaction->transaction_budget_id);
$entry->budget_name = app('steam')->tryDecrypt($transaction->transaction_budget_name);
if (null === $transaction->transaction_budget_id) {
$entry->budget_id = $transaction->transaction_journal_budget_id;
@ -239,7 +239,7 @@ final class Entry
}
// category
$entry->category_id = $transaction->transaction_category_id;
$entry->category_id = strval($transaction->transaction_category_id);
$entry->category_name = app('steam')->tryDecrypt($transaction->transaction_category_name);
if (null === $transaction->transaction_category_id) {
$entry->category_id = $transaction->transaction_journal_category_id;
@ -247,7 +247,7 @@ final class Entry
}
// budget
$entry->bill_id = $transaction->bill_id;
$entry->bill_id = strval($transaction->bill_id);
$entry->bill_name = app('steam')->tryDecrypt($transaction->bill_name);
$entry->tags = $transaction->tags;

View File

@ -24,8 +24,6 @@ namespace FireflyIII\Export\Exporter;
use FireflyIII\Export\Entry\Entry;
use League\Csv\Writer;
use SplFileObject;
use SplTempFileObject;
use Storage;
/**
@ -66,12 +64,9 @@ class CsvExporter extends BasicExporter implements ExporterInterface
$fullPath = storage_path('export') . DIRECTORY_SEPARATOR . $this->fileName;
//we create the CSV into memory
//$writer = Writer::createFromFileObject(new SplTempFileObject());
$writer = Writer::createFromPath($fullPath);
//$writer = Writer::createFromPath(new SplFileObject($fullPath, 'a+'), 'w');
$rows = [];
$rows = [];
// get field names for header row:
$first = $this->getEntries()->first();
@ -91,8 +86,6 @@ class CsvExporter extends BasicExporter implements ExporterInterface
$rows[] = $line;
}
$writer->insertAll($rows);
//$writer->output($fullPath);
//$writer->
return true;
}
@ -102,6 +95,6 @@ class CsvExporter extends BasicExporter implements ExporterInterface
$this->fileName = $this->job->key . '-records.csv';
// touch file in export directory:
$disk = Storage::disk('export');
$disk->put($this->fileName,'');
$disk->put($this->fileName, '');
}
}

View File

@ -65,6 +65,7 @@ class MonthReportGenerator extends Support implements ReportGeneratorInterface
/**
* @return string
* @throws \Throwable
*/
public function generate(): string
{

View File

@ -76,6 +76,7 @@ class UserEventHandler
{
Log::debug('In checkSingleUserIsAdmin');
/** @var User $user */
$user = $event->user;
$count = User::count();

View File

@ -26,7 +26,6 @@ namespace FireflyIII\Handlers\Events;
use FireflyConfig;
use FireflyIII\Events\RequestedVersionCheckStatus;
use FireflyIII\User;
use Illuminate\Auth\Events\Login;
use Log;
/**

View File

@ -101,13 +101,12 @@ class AccountController extends Controller
}
/**
* @param Request $request
* @param AccountRepositoryInterface $repository
* @param Account $account
*
* @return View
*/
public function delete(Request $request, AccountRepositoryInterface $repository, Account $account)
public function delete(AccountRepositoryInterface $repository, Account $account)
{
$typeName = config('firefly.shortNamesByFullName.' . $account->accountType->type);
$subTitle = trans('firefly.delete_' . $typeName . '_account', ['name' => $account->name]);

View File

@ -102,14 +102,15 @@ class UpdateController extends Controller
/** @var UpdateRequest $request */
$request = app(UpdateRequest::class);
$check = -2;
$first = new Release(['id' => '0', 'title' => '0', 'updated' => '2017-01-01', 'content' => '']);
$string = '';
try {
$request->call();
$releases = $request->getReleases();
// first entry should be the latest entry:
/** @var Release $first */
$first = reset($releases);
$string = '';
$check = version_compare($current, $first->getTitle());
$first = reset($releases);
$check = version_compare($current, $first->getTitle());
FireflyConfig::set('last_update_check', time());
} catch (FireflyException $e) {
Log::error(sprintf('Could not check for updates: %s', $e->getMessage()));
@ -120,7 +121,12 @@ class UpdateController extends Controller
if ($check === -1) {
// there is a new FF version!
$string = strval(trans('firefly.update_new_version_alert', ['your_version' => $current, 'new_version' => $first->getTitle(), 'date' => $first->getUpdated()->formatLocalized($this->monthAndDayFormat)]));
$string = strval(
trans(
'firefly.update_new_version_alert',
['your_version' => $current, 'new_version' => $first->getTitle(), 'date' => $first->getUpdated()->formatLocalized($this->monthAndDayFormat)]
)
);
}
if ($check === 0) {
// you are running the current version!

View File

@ -59,12 +59,11 @@ class AttachmentController extends Controller
}
/**
* @param Request $request
* @param Attachment $attachment
*
* @return View
*/
public function delete(Request $request, Attachment $attachment)
public function delete(Attachment $attachment)
{
$subTitle = trans('firefly.delete_attachment', ['name' => $attachment->filename]);

View File

@ -64,7 +64,7 @@ class LoginController extends Controller
*
* @param Request $request
*
* @return \Illuminate\Http\Response|\Symfony\Component\HttpFoundation\Response|void
* @return \Illuminate\Http\Response|\Symfony\Component\HttpFoundation\Response
*
* @throws \Illuminate\Validation\ValidationException
*/
@ -102,7 +102,7 @@ class LoginController extends Controller
* @param Request $request
* @param CookieJar $cookieJar
*
* @return $this
* @return $this|\Illuminate\Http\RedirectResponse
*/
public function logout(Request $request, CookieJar $cookieJar)
{

View File

@ -91,12 +91,11 @@ class BillController extends Controller
}
/**
* @param Request $request
* @param Bill $bill
* @param Bill $bill
*
* @return View
*/
public function delete(Request $request, Bill $bill)
public function delete(Bill $bill)
{
// put previous url in session
$this->rememberPreviousUri('bills.delete.uri');
@ -194,7 +193,7 @@ class BillController extends Controller
}
);
// paginate bills
$bills= new LengthAwarePaginator($collection, $total, $pageSize, $page);
$bills = new LengthAwarePaginator($collection, $total, $pageSize, $page);
$bills->setPath(route('bills.index'));
return view('bills.index', compact('bills'));

View File

@ -118,12 +118,11 @@ class BudgetController extends Controller
}
/**
* @param Request $request
* @param Budget $budget
* @param Budget $budget
*
* @return View
*/
public function delete(Request $request, Budget $budget)
public function delete(Budget $budget)
{
$subTitle = trans('firefly.delete_budget', ['name' => $budget->name]);

View File

@ -80,12 +80,11 @@ class CategoryController extends Controller
}
/**
* @param Request $request
* @param Category $category
*
* @return View
*/
public function delete(Request $request, Category $category)
public function delete(Category $category)
{
$subTitle = trans('firefly.delete_category', ['name' => $category->name]);

View File

@ -25,6 +25,7 @@ namespace FireflyIII\Http\Controllers;
use Artisan;
use Carbon\Carbon;
use DB;
use Exception;
use FireflyIII\Events\RequestedVersionCheckStatus;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\JournalCollectorInterface;
@ -39,7 +40,6 @@ use Illuminate\Support\Collection;
use Log;
use Monolog\Handler\RotatingFileHandler;
use Preferences;
use ReflectionException;
use Response;
use Route as RouteFacade;
use View;
@ -186,7 +186,7 @@ class HomeController extends Controller
Log::debug('Call twig:clean...');
try {
Artisan::call('twig:clean');
} catch (ReflectionException $e) {
} catch (Exception $e) {
// dont care
}
Log::debug('Call view:clear...');

View File

@ -60,7 +60,7 @@ class PrerequisitesController extends Controller
*
* @param string $bank
*
* @return \Illuminate\Http\RedirectResponse|null
* @return \Illuminate\View\View|\Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse
*
* @throws FireflyException
*/

View File

@ -108,8 +108,6 @@ class StatusController extends Controller
$result['running'] = true;
}
// TODO cannot handle 'error'
return Response::json($result);
}
}

View File

@ -29,7 +29,6 @@ use FireflyIII\Models\AccountType;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Support\CacheProperties;
use Log;
use Response;
/**

View File

@ -46,6 +46,7 @@ class IntroController
$specificSteps = $this->getSpecificSteps($route, $specificPage);
if (0 === count($specificSteps)) {
Log::debug(sprintf('No specific steps for route "%s" and page "%s"', $route, $specificPage));
return Response::json($steps);
}
if ($this->hasOutroStep($route)) {

View File

@ -238,7 +238,7 @@ class ReportController extends Controller
private function parseAttributes(array $attributes): array
{
$attributes['location'] = $attributes['location'] ?? '';
$attributes['accounts'] = AccountList::routeBinder($attributes['accounts'] ?? '', new Route('get','',[]));
$attributes['accounts'] = AccountList::routeBinder($attributes['accounts'] ?? '', new Route('get', '', []));
try {
$attributes['startDate'] = Carbon::createFromFormat('Ymd', $attributes['startDate']);
} catch (InvalidArgumentException $e) {

View File

@ -26,8 +26,8 @@ use FireflyIII\Http\Requests\TokenFormRequest;
use FireflyIII\Models\AccountType;
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\User\UserRepositoryInterface;
use Illuminate\Http\Request;
use Google2FA;
use Illuminate\Http\Request;
use Preferences;
use Session;
use View;

View File

@ -231,7 +231,7 @@ class ExpenseController extends Controller
$cache->addProperty($accounts->pluck('id')->toArray());
$cache->addProperty($expense->pluck('id')->toArray());
if ($cache->has()) {
//return $cache->get(); // @codeCoverageIgnore
return $cache->get(); // @codeCoverageIgnore
}
$combined = $this->combineAccounts($expense);
$all = new Collection;

View File

@ -59,12 +59,10 @@ class SplitController extends Controller
/** @var CurrencyRepositoryInterface */
private $currencies;
/** @var JournalTaskerInterface */
private $tasker;
/** @var JournalRepositoryInterface */
private $repository;
/** @var JournalTaskerInterface */
private $tasker;
/**
*
@ -81,7 +79,7 @@ class SplitController extends Controller
$this->tasker = app(JournalTaskerInterface::class);
$this->attachments = app(AttachmentHelperInterface::class);
$this->currencies = app(CurrencyRepositoryInterface::class);
$this->repository = app(JournalRepositoryInterface::class);
$this->repository = app(JournalRepositoryInterface::class);
app('view')->share('mainTitleIcon', 'fa-share-alt');
app('view')->share('title', trans('firefly.split-transactions'));
@ -145,8 +143,8 @@ class SplitController extends Controller
}
/**
* @param SplitJournalFormRequest $request
* @param TransactionJournal $journal
* @param SplitJournalFormRequest $request
* @param TransactionJournal $journal
*
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/

View File

@ -72,6 +72,7 @@ class CsvProcessor implements FileProcessorInterface
* @return bool
*
* @throws \League\Csv\Exception
* @throws \Illuminate\Contracts\Filesystem\FileNotFoundException
*/
public function run(): bool
{

View File

@ -330,6 +330,7 @@ class ImportJournal
*/
private function selectAmountInput()
{
$info = [];
$converterClass = '';
if (!is_null($this->amount)) {
Log::debug('Amount value is not NULL, assume this is the correct value.');

View File

@ -236,7 +236,6 @@ class ImportStorage
// match bills if config calls for it.
if (true === $this->matchBills) {
//$this->/applyRules($journal);
Log::info('Cannot match bills (yet).');
$this->matchBills($journal);
}

View File

@ -189,6 +189,7 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param string $fieldName
*
* @return string
@ -206,6 +207,7 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -299,6 +301,7 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param array $types
*/
@ -313,6 +316,7 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param string $name
* @param string $value
@ -331,7 +335,9 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @codeCoverageIgnore
*/
public function setIbanAttribute($value)
@ -341,6 +347,7 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setNameAttribute($value)
@ -352,7 +359,9 @@ class Account extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @codeCoverageIgnore
*/
public function setVirtualBalanceAttribute($value)

View File

@ -69,6 +69,7 @@ class AccountMeta extends Model
/**
* @param $value
*
* @codeCoverageIgnore
*/
public function setDataAttribute($value)

View File

@ -70,6 +70,7 @@ class Attachment extends Model
/**
* Get all of the owning attachable models.
*
* @codeCoverageIgnore
*
* @return MorphTo
@ -81,7 +82,8 @@ class Attachment extends Model
/**
* Returns the expected filename for this attachment.
*@codeCoverageIgnore
*
* @codeCoverageIgnore
* @return string
*/
public function fileName(): string
@ -91,7 +93,8 @@ class Attachment extends Model
/**
* @param $value
*@codeCoverageIgnore
*
* @codeCoverageIgnore
* @return null|string
*/
public function getDescriptionAttribute($value)
@ -105,7 +108,8 @@ class Attachment extends Model
/**
* @param $value
*@codeCoverageIgnore
*
* @codeCoverageIgnore
* @return null|string
*/
public function getFilenameAttribute($value)
@ -119,7 +123,8 @@ class Attachment extends Model
/**
* @param $value
*@codeCoverageIgnore
*
* @codeCoverageIgnore
* @return null|string
*/
public function getMimeAttribute($value)
@ -133,7 +138,8 @@ class Attachment extends Model
/**
* @param $value
*@codeCoverageIgnore
*
* @codeCoverageIgnore
* @return null|string
*/
public function getNotesAttribute($value)
@ -147,7 +153,8 @@ class Attachment extends Model
/**
* @param $value
*@codeCoverageIgnore
*
* @codeCoverageIgnore
* @return null|string
*/
public function getTitleAttribute($value)
@ -161,6 +168,7 @@ class Attachment extends Model
/**
* @codeCoverageIgnore
*
* @param string $value
*/
public function setDescriptionAttribute(string $value)
@ -170,6 +178,7 @@ class Attachment extends Model
/**
* @codeCoverageIgnore
*
* @param string $value
*/
public function setFilenameAttribute(string $value)
@ -179,6 +188,7 @@ class Attachment extends Model
/**
* @codeCoverageIgnore
*
* @param string $value
*/
public function setMimeAttribute(string $value)
@ -188,6 +198,7 @@ class Attachment extends Model
/**
* @codeCoverageIgnore
*
* @param string $value
*/
public function setNotesAttribute(string $value)
@ -197,6 +208,7 @@ class Attachment extends Model
/**
* @codeCoverageIgnore
*
* @param string $value
*/
public function setTitleAttribute(string $value)

View File

@ -96,6 +96,7 @@ class Bill extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -111,6 +112,7 @@ class Bill extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -135,6 +137,7 @@ class Bill extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setAmountMaxAttribute($value)
@ -144,6 +147,7 @@ class Bill extends Model
/**
* @param $value
*
* @codeCoverageIgnore
*/
public function setAmountMinAttribute($value)
@ -153,6 +157,7 @@ class Bill extends Model
/**
* @param $value
*
* @codeCoverageIgnore
*/
public function setMatchAttribute($value)
@ -164,6 +169,7 @@ class Bill extends Model
/**
* @param $value
*
* @codeCoverageIgnore
*/
public function setNameAttribute($value)

View File

@ -84,7 +84,7 @@ class Budget extends Model
}
/**
* @param Budget $value
* @param string $value
*
* @return Budget
*/
@ -111,6 +111,7 @@ class Budget extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -126,6 +127,7 @@ class Budget extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setNameAttribute($value)

View File

@ -77,6 +77,7 @@ class BudgetLimit extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setAmountAttribute($value)

View File

@ -83,7 +83,7 @@ class Category extends Model
}
/**
* @param Category $value
* @param string $value
*
* @return Category
*/
@ -101,6 +101,7 @@ class Category extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -116,6 +117,7 @@ class Category extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setNameAttribute($value)

View File

@ -49,6 +49,7 @@ class Configuration extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return mixed
@ -60,6 +61,7 @@ class Configuration extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setDataAttribute($value)

View File

@ -61,6 +61,7 @@ class ExportJob extends Model
/**
* @codeCoverageIgnore
*
* @param $status
*/
public function change($status)

View File

@ -69,9 +69,9 @@ class PiggyBank extends Model
{
if (auth()->check()) {
$piggyBankId = intval($value);
$piggyBank = PiggyBank::where('piggy_banks.id', $piggyBankId)
->leftJoin('accounts', 'accounts.id', '=', 'piggy_banks.account_id')
->where('accounts.user_id', auth()->user()->id)->first(['piggy_banks.*']);
$piggyBank = self::where('piggy_banks.id', $piggyBankId)
->leftJoin('accounts', 'accounts.id', '=', 'piggy_banks.account_id')
->where('accounts.user_id', auth()->user()->id)->first(['piggy_banks.*']);
if (!is_null($piggyBank)) {
return $piggyBank;
}
@ -111,6 +111,7 @@ class PiggyBank extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -196,6 +197,7 @@ class PiggyBank extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setNameAttribute($value)
@ -207,6 +209,7 @@ class PiggyBank extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setTargetamountAttribute($value)

View File

@ -62,6 +62,7 @@ class PiggyBankEvent extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setAmountAttribute($value)

View File

@ -60,6 +60,7 @@ class PiggyBankRepetition extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param Carbon $start
* @param Carbon $target
@ -73,6 +74,7 @@ class PiggyBankRepetition extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param Carbon $date
*
@ -96,6 +98,7 @@ class PiggyBankRepetition extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setCurrentamountAttribute($value)

View File

@ -80,6 +80,7 @@ class Preference extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setDataAttribute($value)

View File

@ -123,6 +123,7 @@ class Tag extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -138,6 +139,7 @@ class Tag extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -171,6 +173,7 @@ class Tag extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setDescriptionAttribute($value)
@ -180,6 +183,7 @@ class Tag extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setTagAttribute($value)

View File

@ -108,6 +108,7 @@ class Transaction extends Model
/**
* @codeCoverageIgnore
*
* @param Builder $query
* @param string $table
*
@ -168,6 +169,7 @@ class Transaction extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return float|int
@ -179,6 +181,7 @@ class Transaction extends Model
/**
* @codeCoverageIgnore
*
* @param Builder $query
* @param Carbon $date
*/
@ -192,6 +195,7 @@ class Transaction extends Model
/**
* @codeCoverageIgnore
*
* @param Builder $query
* @param Carbon $date
*/
@ -205,6 +209,7 @@ class Transaction extends Model
/**
* @codeCoverageIgnore
*
* @param Builder $query
* @param array $types
*/
@ -222,6 +227,7 @@ class Transaction extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setAmountAttribute($value)

View File

@ -59,7 +59,7 @@ class TransactionCurrency extends Model
{
if (auth()->check()) {
$currencyId = intval($value);
$currency = TransactionCurrency::find($currencyId);
$currency = self::find($currencyId);
if (!is_null($currency)) {
return $currency;
}

View File

@ -141,6 +141,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param string $name
*
* @return bool
@ -163,6 +164,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return string
@ -214,6 +216,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param string $name
*
* @return bool
@ -311,6 +314,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param Carbon $date
*
@ -323,6 +327,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param Carbon $date
*
@ -335,6 +340,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
*/
public function scopeSortCorrectly(EloquentBuilder $query)
@ -346,6 +352,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param EloquentBuilder $query
* @param array $types
*/
@ -361,6 +368,7 @@ class TransactionJournal extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setDescriptionAttribute($value)

View File

@ -72,6 +72,7 @@ class TransactionJournalLink extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return null|string
@ -96,6 +97,7 @@ class TransactionJournalLink extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setCommentAttribute($value): void

View File

@ -50,6 +50,7 @@ class TransactionJournalMeta extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*
* @return mixed
@ -61,6 +62,7 @@ class TransactionJournalMeta extends Model
/**
* @codeCoverageIgnore
*
* @param $value
*/
public function setDataAttribute($value)

View File

@ -190,7 +190,7 @@ class AccountRepository implements AccountRepositoryInterface
// update the account:
$account->name = $data['name'];
$account->active = $data['active'];
$account->virtual_balance = trim($data['virtualBalance']) === '' ? '0': $data['virtualBalance'];
$account->virtual_balance = trim($data['virtualBalance']) === '' ? '0' : $data['virtualBalance'];
$account->iban = $data['iban'];
$account->save();

View File

@ -26,7 +26,6 @@ use FireflyIII\Models\Account;
use FireflyIII\Models\Note;
use FireflyIII\Models\Transaction;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\Models\TransactionJournalLink;
use FireflyIII\Models\TransactionType;
use FireflyIII\User;
use Illuminate\Support\Collection;
@ -54,13 +53,6 @@ interface JournalRepositoryInterface
*/
public function countTransactions(TransactionJournal $journal): int;
/**
* @param TransactionJournal $journal
*
* @return Note|null
*/
public function getNote(TransactionJournal $journal): ?Note;
/**
* Deletes a journal.
*
@ -107,6 +99,13 @@ interface JournalRepositoryInterface
*/
public function getAssetTransaction(TransactionJournal $journal): ?Transaction;
/**
* @param TransactionJournal $journal
*
* @return Note|null
*/
public function getNote(TransactionJournal $journal): ?Note;
/**
* @return Collection
*/

View File

@ -95,7 +95,7 @@ interface LinkTypeRepositoryInterface
/**
* Store link between two journals.
*
* @param array $information
* @param array $information
* @param TransactionJournal $left
* @param TransactionJournal $right
*

View File

@ -37,20 +37,6 @@ interface UserRepositoryInterface
*/
public function all(): Collection;
/**
* Returns the first user in the DB. Generally only works when there is just one.
*
* @return null|User
*/
public function first(): ?User;
/**
* @param array $data
*
* @return User
*/
public function store(array $data): User;
/**
* Gives a user a role.
*
@ -119,6 +105,13 @@ interface UserRepositoryInterface
*/
public function findByEmail(string $email): ?User;
/**
* Returns the first user in the DB. Generally only works when there is just one.
*
* @return null|User
*/
public function first(): ?User;
/**
* Return basic user information.
*
@ -136,6 +129,13 @@ interface UserRepositoryInterface
*/
public function hasRole(User $user, string $role): bool;
/**
* @param array $data
*
* @return User
*/
public function store(array $data): User;
/**
* @param User $user
*/

View File

@ -40,8 +40,6 @@ abstract class SpectreRequest
* @var int
*/
protected $expiresAt = 0;
/** @var ServerPublicKey */
protected $serverPublicKey;
/** @var string */
protected $serviceSecret = '';
/** @var string */
@ -104,22 +102,6 @@ abstract class SpectreRequest
return $this->server;
}
/**
* @return ServerPublicKey
*/
public function getServerPublicKey(): ServerPublicKey
{
return $this->serverPublicKey;
}
/**
* @param ServerPublicKey $serverPublicKey
*/
public function setServerPublicKey(ServerPublicKey $serverPublicKey)
{
$this->serverPublicKey = $serverPublicKey;
}
/**
* @return string
*/
@ -144,14 +126,6 @@ abstract class SpectreRequest
$this->privateKey = $privateKey;
}
/**
* @param string $secret
*/
public function setSecret(string $secret)
{
$this->secret = $secret;
}
/**
* @param string $method
* @param string $uri
@ -169,8 +143,6 @@ abstract class SpectreRequest
if ('get' === strtolower($method) || 'delete' === strtolower($method)) {
$data = '';
}
// base64(sha1_signature(private_key, "Expires-at|request_method|original_url|post_body|md5_of_uploaded_file|")))
// Prepare the signature
$toSign = $this->expiresAt . '|' . strtoupper($method) . '|' . $uri . '|' . $data . ''; // no file so no content there.
Log::debug(sprintf('String to sign: "%s"', $toSign));
$signature = '';

View File

@ -202,7 +202,7 @@ class Amount
/**
* @return \FireflyIII\Models\TransactionCurrency
*
* @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException
*/
public function getDefaultCurrency(): TransactionCurrency
{
@ -216,7 +216,7 @@ class Amount
*
* @return \FireflyIII\Models\TransactionCurrency
*
* @throws FireflyException
* @throws \FireflyIII\Exceptions\FireflyException
*/
public function getDefaultCurrencyByUser(User $user): TransactionCurrency
{

View File

@ -24,7 +24,6 @@ namespace FireflyIII\Support\Binder;
use Carbon\Carbon;
use Exception;
use FireflyIII\Helpers\FiscalHelper;
use FireflyIII\Helpers\FiscalHelperInterface;
use Illuminate\Routing\Route;
use Log;

View File

@ -25,6 +25,7 @@ namespace FireflyIII\Support;
use Amount as Amt;
use Carbon\Carbon;
use Eloquent;
use FireflyIII\Exceptions\FireflyException;
use Illuminate\Support\Collection;
use Illuminate\Support\MessageBag;
use RuntimeException;
@ -36,11 +37,12 @@ use Session;
class ExpandedForm
{
/**
* @param $name
* @param null $value
* @param array $options
* @param string $name
* @param null $value
* @param array $options
*
* @return string
* @throws \FireflyIII\Exceptions\FireflyException
*/
public function amount(string $name, $value = null, array $options = []): string
{
@ -53,6 +55,7 @@ class ExpandedForm
* @param array $options
*
* @return string
* @throws \FireflyIII\Exceptions\FireflyException
*/
public function amountSmall(string $name, $value = null, array $options = []): string
{
@ -65,6 +68,8 @@ class ExpandedForm
* @param array $options
*
* @return string
* @throws \FireflyIII\Exceptions\FireflyException
*
*/
public function balance(string $name, $value = null, array $options = []): string
{
@ -594,8 +599,7 @@ class ExpandedForm
*
* @return string
*
* @throws \Throwable
* @throws Facades\FireflyException
* @throws \FireflyIII\Exceptions\FireflyException
*/
private function currencyField(string $name, string $view, $value = null, array $options = []): string
{

View File

@ -63,6 +63,7 @@ class BunqInformation implements InformationInterface
* @return array
*
* @throws FireflyException
* @throws \Exception
*/
public function getAccounts(): array
{

View File

@ -473,6 +473,7 @@ class Navigation
$date->subMonths($subtract);
Log::debug(sprintf('%s is in modifier map with value %d, execute subMonths with argument %d', $repeatFreq, $modifierMap[$repeatFreq], $subtract));
Log::debug(sprintf('subtractPeriod: resulting date is %s', $date->format('Y-m-d')));
return $date;
}
// a custom range requires the session start

View File

@ -29,6 +29,7 @@ use FireflyIII\Models\TransactionJournal;
* This class will be magical!
*
* Class AbstractTrigger
* @method triggered
*/
class AbstractTrigger
{
@ -43,15 +44,6 @@ class AbstractTrigger
/** @var string Trigger value */
protected $triggerValue;
/**
* AbstractTrigger constructor.
*
* @codeCoverageIgnore
*/
private function __construct()
{
}
/**
* Make a new trigger from the value given in the string.
*

View File

@ -340,7 +340,7 @@ class FireflyValidator extends Validator
*
* @return bool
*/
public function validateUniqueAccountNumberForUser($attribute, $value, $parameters): bool
public function validateUniqueAccountNumberForUser($attribute, $value): bool
{
$accountId = $this->data['id'] ?? 0;

View File

@ -92,7 +92,6 @@ function storeReconcile() {
transactions: ids,
cleared: cleared,
};
console.log
var uri = overviewUri.replace('%start%', $('input[name="start_date"]').val()).replace('%end%', $('input[name="end_date"]').val());

View File

@ -18,7 +18,7 @@
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: chartUri, incomeCategoryUri, expenseCategoryUri, expenseBudgetUri */
/** global: chartUri, incomeCategoryUri, expenseCategoryUri, expenseBudgetUri, token */
var fixHelper = function (e, tr) {
"use strict";

View File

@ -18,6 +18,8 @@
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: updateCheckUri */
$(function () {
"use strict";
@ -31,7 +33,7 @@ function checkUpdate() {
// do post update check:
$.post(updateCheckUri).done(function (data) {
alert(data.result);
}).fail(function() {
}).fail(function () {
alert('Error while checking.');
});

View File

@ -18,7 +18,7 @@
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: infoIncomeUri, spent, budgeted, available, currencySymbol, budgetIndexUri, updateIncomeUri, periodStart, periodEnd, budgetAmountUri, accounting */
/** global: infoIncomeUri, token, spent, budgeted, available, currencySymbol, budgetIndexUri, updateIncomeUri, periodStart, periodEnd, budgetAmountUri, accounting */
/**
*
*/
@ -104,7 +104,7 @@ function updateBudgetedAmounts(e) {
var target = $(e.target);
var id = target.data('id');
var leftCell = $('td[class$="left"][data-id="' + id + '"]');
var link = $('a[data-id="'+id+'"][class="budget-link"]');
var link = $('a[data-id="' + id + '"][class="budget-link"]');
var value = target.val();
var original = target.data('original');
@ -112,7 +112,7 @@ function updateBudgetedAmounts(e) {
target.prop('disabled', true);
// replace link (for now)
link.attr('href','#');
link.attr('href', '#');
// replace "left" with spinner.
leftCell.empty().html('<i class="fa fa-fw fa-spin fa-spinner"></i>');

View File

@ -29,40 +29,37 @@
* @param maxwidth
* @returns {Array}
*/
function formatLabel(str, maxwidth){
function formatLabel(str, maxwidth) {
var sections = [];
var words = str.split(" ");
var temp = "";
words.forEach(function(item, index){
if(temp.length > 0)
{
words.forEach(function (item, index) {
if (temp.length > 0) {
var concat = temp + ' ' + item;
if(concat.length > maxwidth){
if (concat.length > maxwidth) {
sections.push(temp);
temp = "";
}
else{
if(index === (words.length-1))
{
else {
if (index === (words.length - 1)) {
sections.push(concat);
return;
}
else{
else {
temp = concat;
return;
}
}
}
if(index === (words.length-1))
{
if (index === (words.length - 1)) {
sections.push(item);
return;
}
if(item.length < maxwidth) {
if (item.length < maxwidth) {
temp = item;
}
else {

View File

@ -17,7 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: token */
$(function () {
"use strict";
$('#help').click(showHelp);

View File

@ -18,7 +18,7 @@
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: langImportSingleError, langImportMultiError, jobStartUrl, langImportTimeOutError, langImportFinished, langImportFatalError */
/** global: job, langImportSingleError, langImportMultiError, jobStartUrl, langImportTimeOutError, langImportFinished, langImportFatalError */
var timeOutId;
var startInterval = 1000;

View File

@ -17,7 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: token */
var fixHelper = function (e, tr) {
"use strict";
var $originals = tr.children();

View File

@ -1,4 +1,3 @@
/*
* month.js
* Copyright (c) 2017 thegrumpydictator@gmail.com
@ -18,10 +17,10 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: spentUri, categoryUri, budgetUri, expenseUri, incomeUri, mainUri */
$(function () {
"use strict";
drawChart();
doubleYChart(mainUri, 'in-out-chart');
loadAjaxPartial('inOutAccounts', spentUri);
loadAjaxPartial('inOutCategory', categoryUri);
@ -31,9 +30,3 @@ $(function () {
});
function drawChart() {
"use strict";
// month view:
doubleYChart(mainUri, 'in-out-chart');
}

View File

@ -17,7 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: startDate, endDate, accountIds */
function loadAjaxPartial(holder, uri) {
"use strict";
$.get(uri).done(function (data) {

View File

@ -139,7 +139,6 @@ function setOptionalFromCookies() {
$('#inputExpRevAccounts').multiselect(defaultMultiSelect);
}
function catchSubmit() {
@ -161,7 +160,7 @@ function catchSubmit() {
createCookie('report-categories', categories, 365);
createCookie('report-budgets', budgets, 365);
createCookie('report-tags', tags, 365);
createCookie('report-exp-rev', expRev , 365);
createCookie('report-exp-rev', expRev, 365);
createCookie('report-start', moment(picker.startDate).format("YYYYMMDD"), 365);
createCookie('report-end', moment(picker.endDate).format("YYYYMMDD"), 365);

View File

@ -17,7 +17,7 @@
* You should have received a copy of the GNU General Public License
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: token */
var fixHelper = function (e, tr) {
"use strict";
var $originals = tr.children();

View File

@ -18,7 +18,7 @@
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: searchQuery,searchUri */
/** global: searchQuery,searchUri,token */

View File

@ -48,7 +48,7 @@ $(function () {
}).addTo(mymap);
if (doPlaceMarker) {
var marker = L.marker([latitude, longitude]).addTo(mymap);
L.marker([latitude, longitude]).addTo(mymap);
}
}
});

View File

@ -18,7 +18,7 @@
* along with Firefly III. If not, see <http://www.gnu.org/licenses/>.
*/
/** global: edit_selected_txt, delete_selected_txt */
/** global: edit_selected_txt, delete_selected_txt, token */
/**
*

View File

@ -1,37 +1,37 @@
{
"has-headers": true,
"date-format": "Y-m-d",
"delimiter": ",",
"import-account": 1,
"specifics": [],
"column-count": 7,
"column-roles": [
"account-iban",
"opposing-name",
"amount",
"date-transaction",
"description",
"category-name",
"budget-name"
],
"column-do-mapping": [
true,
true,
false,
false,
false,
false,
false
],
"column-roles-complete": false,
"column-mapping-config": {
"0": {
"NL11XOLA6707795988": 1,
"NL81RCQZ7160379858": 3
},
"1": [],
"5": [],
"6": []
"has-headers": true,
"date-format": "Y-m-d",
"delimiter": ",",
"import-account": 1,
"specifics": [],
"column-count": 7,
"column-roles": [
"account-iban",
"opposing-name",
"amount",
"date-transaction",
"description",
"category-name",
"budget-name"
],
"column-do-mapping": [
true,
true,
false,
false,
false,
false,
false
],
"column-roles-complete": false,
"column-mapping-config": {
"0": {
"NL11XOLA6707795988": 1,
"NL81RCQZ7160379858": 3
},
"column-mapping-complete": false
"1": [],
"5": [],
"6": []
},
"column-mapping-complete": false
}

View File

@ -15,7 +15,7 @@
<input type="hidden" name="startBalance" value="{{ startBalance }}"/>
<input type="hidden" name="endBalance" value="{{ endBalance }}"/>
{% for id in transactionIds %}
<input type="hidden" name="transactions[]" value="{{ id }}" />
<input type="hidden" name="transactions[]" value="{{ id }}"/>
{% endfor %}
<table class="table table-striped table-bordered">
@ -33,14 +33,14 @@
</tr>
<tr>
<td>{{ 'submitted_end_balance'|_ }} (date)</td>
<td>{{ formatAmountByAccount(account, endBalance)}}</td>
<td>{{ formatAmountByAccount(account, endBalance) }}</td>
</tr>
<tr>
<td>{{ 'difference'|_ }}</td>
<td>
{{ formatAmountByAccount(account, difference) }}
<input type="hidden" name="difference" value="{{ difference }}" />
<input type="hidden" name="difference" value="{{ difference }}"/>
</td>
</tr>
@ -60,36 +60,36 @@
<input type="hidden" name="reconcile" value="nothing">
{% endif %}
{% if diffCompare != 0 %}
<div class="form-group">
<div class="col-lg-12">
<div class="radio">
<label>
<div class="form-group">
<div class="col-lg-12">
<div class="radio">
<label>
<input type="radio" name="reconcile" value="create">
{% if diffCompare > 0 %}
{{ trans('firefly.create_neg_reconcile_transaction', {amount: formatAmountByAccount(account, (difference*-1))})|raw }}
{% endif %}
{% if diffCompare < 0 %}
{{ trans('firefly.create_pos_reconcile_transaction', {amount: formatAmountByAccount(account, (difference*-1))})|raw }}
{% endif %}
</label>
<input type="radio" name="reconcile" value="create">
{% if diffCompare > 0 %}
{{ trans('firefly.create_neg_reconcile_transaction', {amount: formatAmountByAccount(account, (difference*-1))})|raw }}
{% endif %}
{% if diffCompare < 0 %}
{{ trans('firefly.create_pos_reconcile_transaction', {amount: formatAmountByAccount(account, (difference*-1))})|raw }}
{% endif %}
</label>
</div>
</div>
</div>
</div>
<div class="form-group">
<div class="col-lg-12">
<div class="radio">
<label>
<input type="radio" checked name="reconcile" value="nothing"> {{ 'reconcile_do_nothing'|_ }}
</label>
<div class="form-group">
<div class="col-lg-12">
<div class="radio">
<label>
<input type="radio" checked name="reconcile" value="nothing"> {{ 'reconcile_do_nothing'|_ }}
</label>
</div>
</div>
</div>
</div>
<p>
{{ 'reconcile_go_back'|_ }}
</p>
<p>
{{ 'reconcile_go_back'|_ }}
</p>
{% endif %}
</div>
<div class="modal-footer">

View File

@ -7,41 +7,41 @@
{% block content %}
{{ Form.model(linkType, {'class' : 'form-horizontal','id' : 'update','url' : route('admin.links.update', linkType.id) } ) }}
<input type="hidden" name="id" value="{{ linkType.id }}"/>
<input name="_token" type="hidden" value="{{ csrf_token() }}">
<div class="row">
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">{{ 'mandatoryFields'|_ }}</h3>
</div>
<div class="box-body">
{{ ExpandedForm.text('name', null, {helpText: trans('firefly.link_type_help_name')}) }}
{{ ExpandedForm.text('inward', null, {helpText: trans('firefly.link_type_help_inward')}) }}
{{ ExpandedForm.text('outward', null, {helpText: trans('firefly.link_type_help_outward')}) }}
</div>
<input type="hidden" name="id" value="{{ linkType.id }}"/>
<input name="_token" type="hidden" value="{{ csrf_token() }}">
<div class="row">
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">{{ 'mandatoryFields'|_ }}</h3>
</div>
<div class="box-body">
{{ ExpandedForm.text('name', null, {helpText: trans('firefly.link_type_help_name')}) }}
{{ ExpandedForm.text('inward', null, {helpText: trans('firefly.link_type_help_inward')}) }}
{{ ExpandedForm.text('outward', null, {helpText: trans('firefly.link_type_help_outward')}) }}
</div>
</div>
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
</div>
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<!-- panel for options -->
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'options'|_ }}</h3>
</div>
<div class="box-body">
{{ ExpandedForm.optionsList('update','link_type') }}
</div>
<div class="box-footer">
<button type="submit" class="btn pull-right btn-success">
{{ ('update_link_type')|_ }}
</button>
</div>
<!-- panel for options -->
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'options'|_ }}</h3>
</div>
<div class="box-body">
{{ ExpandedForm.optionsList('update','link_type') }}
</div>
<div class="box-footer">
<button type="submit" class="btn pull-right btn-success">
{{ ('update_link_type')|_ }}
</button>
</div>
</div>
</div>
</div>
</form>

View File

@ -27,8 +27,10 @@
<td>
{% if linkType.editable %}
<div class="btn-group btn-group-xs">
<a class="btn btn-default btn-xs" href="{{ route('admin.links.edit',linkType.id) }}"><i class="fa fa-fw fa-pencil"></i></a>
<a class="btn btn-danger btn-xs" href="{{ route('admin.links.delete',linkType.id) }}"><i class="fa fa-fw fa-trash-o"></i></a>
<a class="btn btn-default btn-xs" href="{{ route('admin.links.edit',linkType.id) }}"><i
class="fa fa-fw fa-pencil"></i></a>
<a class="btn btn-danger btn-xs" href="{{ route('admin.links.delete',linkType.id) }}"><i
class="fa fa-fw fa-trash-o"></i></a>
</div>
{% endif %}
</td>

View File

@ -28,7 +28,8 @@
<td>
<div class="btn-group btn-group-xs">
<a href="{{ route('transactions.link.delete', [link.id]) }}" class="btn btn-danger"><i class="fa fa-trash"></i></a>
<a href="{{ route('transactions.link.switch', [link.id]) }}" class="btn btn-default"><i class="fa fa-fw fa-arrows-h"></i></a>
<a href="{{ route('transactions.link.switch', [link.id]) }}" class="btn btn-default"><i
class="fa fa-fw fa-arrows-h"></i></a>
</div>
</td>
<td data-value="{{ link.source.description }}">

View File

@ -25,7 +25,8 @@
</p>
</div>
<div class="box-footer">
<input type="submit" onclick="return confirm('{{ trans('firefly.are_you_sure')|escape('js') }}');" name="submit" value="{{ trans('form.deletePermanently') }}" class="btn btn-danger pull-right"/>
<input type="submit" onclick="return confirm('{{ trans('firefly.are_you_sure')|escape('js') }}');" 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>

View File

@ -8,29 +8,29 @@
{% if bills.count == 0 %}
{% include 'partials.empty' with {what: 'default', type: 'bills',route: route('bills.create')} %}
{% else %}
<div class="row">
<div class="col-lg-12 col-sm-12 col-md-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ title }}</h3>
<div class="row">
<div class="col-lg-12 col-sm-12 col-md-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ title }}</h3>
<div class="box-tools pull-right">
<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('bills.create') }}"><i class="fa fa-plus fa-fw"></i> {{ 'new_bill'|_ }}</a></li>
</ul>
</div>
</div>
</div>
<div class="box-body table-responsive no-padding">
{% include 'list/bills' %}
<div class="box-tools pull-right">
<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('bills.create') }}"><i class="fa fa-plus fa-fw"></i> {{ 'new_bill'|_ }}</a></li>
</ul>
</div>
</div>
</div>
<div class="box-body table-responsive no-padding">
{% include 'list/bills' %}
</div>
</div>
{% endif %}
</div>
</div>
{% endif %}
{% endblock %}
{% block styles %}

View File

@ -86,12 +86,12 @@
</div>
<div class="box-body no-padding">
{% if bill.notes.count == 1 %}
<table class="table">
<table class="table">
<tr>
<td>{{ trans('list.notes') }}</td>
<td>{{ bill.notes.first.text|markdown }}</td>
</tr>
</table>
</table>
{% endif %}
</div>

View File

@ -5,7 +5,7 @@
</button>
<h4 class="modal-title">
{{ trans('firefly.update_budget_amount_range',
{start: start.formatLocalized(monthAndDayFormat), end: end.formatLocalized(monthAndDayFormat)}) }}
{start: start.formatLocalized(monthAndDayFormat), end: end.formatLocalized(monthAndDayFormat)}) }}
</h4>
</div>

View File

@ -17,10 +17,10 @@
<small>{{ 'budgeted'|_ }}: <span id="budgetedAmount" class="text-success">{{ budgeted|formatAmountPlain }}</span></small>
</div>
<div class="col-lg-9 col-md-9 col-sm-9 col-xs-9" style="text-align:right;margin-bottom:3px;">
<small id="availableBar">{{ trans('firefly.available_between',{start : periodStart, end: periodEnd }) }}:
<span id="available" data-value="{{ available }}">{{ available|formatAmountPlain }}</span>
<a href="#" class="updateIncome btn btn-default btn-xs"><i class="fa fa-pencil"></i></a>
<a href="#" class="infoIncome btn btn-info btn-xs"><i class="fa fa-info-circle"></i></a>
<small id="availableBar">{{ trans('firefly.available_between',{start : periodStart, end: periodEnd }) }}:
<span id="available" data-value="{{ available }}">{{ available|formatAmountPlain }}</span>
<a href="#" class="updateIncome btn btn-default btn-xs"><i class="fa fa-pencil"></i></a>
<a href="#" class="infoIncome btn btn-info btn-xs"><i class="fa fa-info-circle"></i></a>
</small>
</div>
</div>

View File

@ -5,50 +5,50 @@
</button>
<h4 class="modal-title">
{{ trans('firefly.info_on_available_amount',
{start: start.formatLocalized(monthAndDayFormat), end: end.formatLocalized(monthAndDayFormat)}) }}
{start: start.formatLocalized(monthAndDayFormat), end: end.formatLocalized(monthAndDayFormat)}) }}
</h4>
</div>
<div class="modal-body">
<p>
{{ 'available_amount_indication'|_ }}
</p>
<table class="table table-bordered table-striped">
<tr>
<td>
{{ 'budgeted'|_ }}
<small><br />
{{ trans('firefly.average_between', {start:begin.formatLocalized(monthAndDayFormat), end:currentEnd.formatLocalized(monthAndDayFormat)}) }}
</td>
<td>
<span class="pull-right">{{ result.available|formatAmount }}</span>
</td>
</tr>
<tr>
<td>{{ 'earned'|_ }}
<small><br />
{{ trans('firefly.average_between', {start:begin.formatLocalized(monthAndDayFormat), end:currentEnd.formatLocalized(monthAndDayFormat)}) }}
</small>
</td>
<td><span class="pull-right">{{ result.earned|formatAmount }}</span></td>
</tr>
<tr>
<td>{{ 'spent'|_ }}
<small><br />
{{ trans('firefly.average_between', {start:begin.formatLocalized(monthAndDayFormat), end:currentEnd.formatLocalized(monthAndDayFormat)}) }}
</small>
</td>
<td><span class="pull-right">{{ result.spent|formatAmount }}</span></td>
</tr>
<tr>
<td><strong>{{ 'suggested'|_ }}</strong></td>
<td><span class="pull-right">{{ result.suggested|formatAmount }}</span></td>
</tr>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{ 'close'|_ }}</button>
</div>
<div class="modal-body">
<p>
{{ 'available_amount_indication'|_ }}
</p>
<table class="table table-bordered table-striped">
<tr>
<td>
{{ 'budgeted'|_ }}
<small><br/>
{{ trans('firefly.average_between', {start:begin.formatLocalized(monthAndDayFormat), end:currentEnd.formatLocalized(monthAndDayFormat)}) }}
</td>
<td>
<span class="pull-right">{{ result.available|formatAmount }}</span>
</td>
</tr>
<tr>
<td>{{ 'earned'|_ }}
<small><br/>
{{ trans('firefly.average_between', {start:begin.formatLocalized(monthAndDayFormat), end:currentEnd.formatLocalized(monthAndDayFormat)}) }}
</small>
</td>
<td><span class="pull-right">{{ result.earned|formatAmount }}</span></td>
</tr>
<tr>
<td>{{ 'spent'|_ }}
<small><br/>
{{ trans('firefly.average_between', {start:begin.formatLocalized(monthAndDayFormat), end:currentEnd.formatLocalized(monthAndDayFormat)}) }}
</small>
</td>
<td><span class="pull-right">{{ result.spent|formatAmount }}</span></td>
</tr>
<tr>
<td><strong>{{ 'suggested'|_ }}</strong></td>
<td><span class="pull-right">{{ result.suggested|formatAmount }}</span></td>
</tr>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{ 'close'|_ }}</button>
</div>
</div>
</div>

View File

@ -122,27 +122,29 @@
<td>{{ limit.spent|formatAmount }}</td>
</tr>
{% if limit.spent > 0 %}
<tr>
<td colspan="2">
{% set overspent = limit.amount + limit.spent < 0 %}
<tr>
<td colspan="2">
{% set overspent = limit.amount + limit.spent < 0 %}
{% if overspent %}
{% set pct = (limit.spent != 0 ? (limit.amount / (limit.spent*-1))*100 : 0) %} <!-- must have -1 here -->
<div class="progress progress-striped">
<div class="progress-bar progress-bar-warning" role="progressbar" aria-valuenow="{{ pct|round }}" aria-valuemin="0"
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
<div class="progress-bar progress-bar-danger" role="progressbar" aria-valuenow="{{ (100-pct)|round }}"
aria-valuemin="0" aria-valuemax="100" style="width: {{ (100-pct)|round }}%;"></div>
</div>
{% else %}
{% set pct = (limit.amount != 0 ? (((limit.spent*-1) / limit.amount)*100) : 0) %} <!-- must have -1 here -->
<div class="progress progress-striped">
<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="{{ pct|round }}" aria-valuemin="0"
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
</div>
{% endif %}
</td>
</tr>
{% if overspent %}
{% set pct = (limit.spent != 0 ? (limit.amount / (limit.spent*-1))*100 : 0) %} <!-- must have -1 here -->
<div class="progress progress-striped">
<div class="progress-bar progress-bar-warning" role="progressbar" aria-valuenow="{{ pct|round }}"
aria-valuemin="0"
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
<div class="progress-bar progress-bar-danger" role="progressbar" aria-valuenow="{{ (100-pct)|round }}"
aria-valuemin="0" aria-valuemax="100" style="width: {{ (100-pct)|round }}%;"></div>
</div>
{% else %}
{% set pct = (limit.amount != 0 ? (((limit.spent*-1) / limit.amount)*100) : 0) %} <!-- must have -1 here -->
<div class="progress progress-striped">
<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="{{ pct|round }}"
aria-valuemin="0"
aria-valuemax="100" style="width: {{ pct|round }}%;"></div>
</div>
{% endif %}
</td>
</tr>
{% endif %}
</table>
</div>

View File

@ -6,30 +6,30 @@
{% block content %}
{% if categories.count > 0 %}
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'categories'|_ }}</h3>
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">{{ 'categories'|_ }}</h3>
<div class="box-tools pull-right">
<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('categories.create') }}"><i class="fa fa-plus fa-fw"></i> {{ 'new_category'|_ }}</a></li>
</ul>
</div>
</div>
</div>
<div class="box-body no-padding">
{% include 'list/categories' %}
<div class="box-tools pull-right">
<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('categories.create') }}"><i class="fa fa-plus fa-fw"></i> {{ 'new_category'|_ }}</a></li>
</ul>
</div>
</div>
</div>
<div class="box-body no-padding">
{% include 'list/categories' %}
</div>
</div>
{% else %}
</div>
</div>
{% else %}
{% include 'partials.empty' with {what: 'default', type: 'categories',route: route('categories.create')} %}
{% endif %}
{% endblock %}

View File

@ -2,118 +2,120 @@
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8">
{% if env('MAPBOX_API_KEY','') == '' %}
<p class="text-danger">
{{ trans('firefly.mapbox_api_key')|raw }}
</p>
<p class="text-danger">
{{ trans('firefly.mapbox_api_key')|raw }}
</p>
{% else %}
<div id="{{ name }}_map" style="width:100%;height:300px;"></div>
<div id="map-canvas" ></div>
<div id="map-canvas"></div>
<p class="help-block">
{{ 'press_tag_location'|_ }}
<a href="#" id="{{ name }}_clear_location">{{ 'clear_location'|_ }}</a>
</p>
{# latitude #}
{% if old(name~'_latitude') %}
<input type="hidden" name="{{ name }}_latitude" value="{{ old('tag_position_latitude') }}"/>
{% else %}
<input type="hidden" name="{{ name }}_latitude" value="{{ tag.latitude }}"/>
{% endif %}
{# latitude #}
{% if old(name~'_latitude') %}
<input type="hidden" name="{{ name }}_latitude" value="{{ old('tag_position_latitude') }}"/>
{% else %}
<input type="hidden" name="{{ name }}_latitude" value="{{ tag.latitude }}"/>
{% endif %}
{# longitude #}
{% if old('tag_position_longitude') %}
<input type="hidden" name="{{ name }}_longitude" value="{{ old('tag_position_longitude') }}"/>
{% else %}
<input type="hidden" name="{{ name }}_longitude" value="{{ tag.longitude }}"/>
{% endif %}
{# longitude #}
{% if old('tag_position_longitude') %}
<input type="hidden" name="{{ name }}_longitude" value="{{ old('tag_position_longitude') }}"/>
{% else %}
<input type="hidden" name="{{ name }}_longitude" value="{{ tag.longitude }}"/>
{% endif %}
{# zoomlevel #}
{% if old('tag_position_zoomlevel') %}
<input type="hidden" name="{{ name }}_zoomlevel" value="{{ old('tag_position_zoomlevel') }}"/>
{% else %}
<input type="hidden" name="{{ name }}_zoomlevel" value="{{ tag.zoomLevel }}"/>
{% endif %}
{% if tag.zoomLevel and tag.longitude and tag.latitude %}
<input type="hidden" name="{{ name }}_has_tag" value="true"/>
{% else %}
<input type="hidden" name="{{ name }}_has_tag" value="false"/>
{% endif %}
{# zoomlevel #}
{% if old('tag_position_zoomlevel') %}
<input type="hidden" name="{{ name }}_zoomlevel" value="{{ old('tag_position_zoomlevel') }}"/>
{% else %}
<input type="hidden" name="{{ name }}_zoomlevel" value="{{ tag.zoomLevel }}"/>
{% endif %}
{% if tag.zoomLevel and tag.longitude and tag.latitude %}
<input type="hidden" name="{{ name }}_has_tag" value="true"/>
{% else %}
<input type="hidden" name="{{ name }}_has_tag" value="false"/>
{% endif %}
{% include 'form/feedback' %}
{% endif %}
</div>
</div>
{% if env('MAPBOX_API_KEY','') != '' %}
{% set latitudevar = name~'_latitude' %}
{% set longitudevar = name~'_longitude' %}
{% set zoomlevelvar = name~'_zoomlevel' %}
{% set hastagvar = name~'_has_tag' %}
{% set settagvar = name~'_set_tag' %}
{% set clearvar = name~'_clear_location' %}
{% set latitudevar = name~'_latitude' %}
{% set longitudevar = name~'_longitude' %}
{% set zoomlevelvar = name~'_zoomlevel' %}
{% set hastagvar = name~'_has_tag' %}
{% set settagvar = name~'_set_tag' %}
{% set clearvar = name~'_clear_location' %}
<script type="text/javascript">
var mymap;
var marker;
if(typeof {{ latitudevar }} === "undefined") {
var {{ latitudevar }} = "52.3167";
}
if(typeof {{ longitudevar }} === "undefined") {
var {{ longitudevar }} = "5.5500";
}
if(typeof {{ zoomlevelvar }} === "undefined") {
var {{ zoomlevelvar }} = "6";
}
if(typeof mapboxToken === 'undefined') {
var mapboxToken = 'invalid';
}
//
document.getElementById('{{ clearvar }}').addEventListener('click', function() {
if (typeof marker !== 'undefined') {
marker.remove();
$('input[name="{{ hastagvar }}"]').val('false');
<script type="text/javascript">
var mymap;
var marker;
if (typeof {{ latitudevar }} === "undefined") {
var {{ latitudevar }} =
"52.3167";
}
return false;
});
// set location thing:
function setTagLocation(e) {
$('input[name="{{ latitudevar }}"]').val(e.latlng.lat);
$('input[name="{{ longitudevar }}"]').val(e.latlng.lng);
$('input[name="{{ zoomlevelvar }}"]').val(mymap.getZoom());
$('input[name="{{ hastagvar }}"]').val('true');
// remove existing marker:
if(typeof marker !== 'undefined') {
marker.remove();
if (typeof {{ longitudevar }} === "undefined") {
var {{ longitudevar }} =
"5.5500";
}
// new marker
marker = L.marker([e.latlng.lat, e.latlng.lng]).addTo(mymap);
}
console.log({{ longitudevar }});
document.addEventListener("DOMContentLoaded", function() {
"use strict";
// make map:
mymap = L.map('{{ name }}_map').setView([{{ latitudevar }}, {{ longitudevar }}], {{ zoomlevelvar }});
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://mapbox.com">Mapbox</a>',
maxZoom: 18,
id: 'mapbox.streets',
accessToken: mapboxToken
}).addTo(mymap);
mymap.on('contextmenu', setTagLocation);
// add marker
if(typeof {{ settagvar }} !== 'undefined' && {{ settagvar }} === true) {
marker = L.marker([{{ latitudevar }}, {{ longitudevar }}]).addTo(mymap);
if (typeof {{ zoomlevelvar }} === "undefined") {
var {{ zoomlevelvar }} =
"6";
}
});
</script>
if (typeof mapboxToken === 'undefined') {
var mapboxToken = 'invalid';
}
//
document.getElementById('{{ clearvar }}').addEventListener('click', function () {
if (typeof marker !== 'undefined') {
marker.remove();
$('input[name="{{ hastagvar }}"]').val('false');
}
return false;
});
// set location thing:
function setTagLocation(e) {
$('input[name="{{ latitudevar }}"]').val(e.latlng.lat);
$('input[name="{{ longitudevar }}"]').val(e.latlng.lng);
$('input[name="{{ zoomlevelvar }}"]').val(mymap.getZoom());
$('input[name="{{ hastagvar }}"]').val('true');
// remove existing marker:
if (typeof marker !== 'undefined') {
marker.remove();
}
// new marker
marker = L.marker([e.latlng.lat, e.latlng.lng]).addTo(mymap);
}
console.log({{ longitudevar }});
document.addEventListener("DOMContentLoaded", function () {
"use strict";
// make map:
mymap = L.map('{{ name }}_map').setView([{{ latitudevar }}, {{ longitudevar }}], {{ zoomlevelvar }});
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://mapbox.com">Mapbox</a>',
maxZoom: 18,
id: 'mapbox.streets',
accessToken: mapboxToken
}).addTo(mymap);
mymap.on('contextmenu', setTagLocation);
// add marker
if (typeof {{ settagvar }} !== 'undefined' && {{ settagvar }} === true) {
marker = L.marker([{{ latitudevar }}, {{ longitudevar }}]).addTo(mymap);
}
});
</script>
{% endif %}

View File

@ -2,7 +2,7 @@
<label for="{{ options.id }}" class="col-sm-4 control-label">{{ label }}</label>
<div class="col-sm-8">
{{ Form.input('number', name, value, options) }}
{{ Form.input('number', name, value, options) }}
{% include 'form/feedback' %}
</div>
</div>

View File

@ -34,13 +34,13 @@
{% for remoteAccount in remoteAccounts %}
<tr>
<td>
<input type="checkbox" name="do_import[{{ remoteAccount.id }}]" checked id="do_import_{{ remoteAccount.id }}" />
<input type="checkbox" name="do_import[{{ remoteAccount.id }}]" checked id="do_import_{{ remoteAccount.id }}"/>
</td>
<td>
<strong {% if remoteAccount.color !='' %} style="color:{{ remoteAccount.color }}"{% endif %}>
{{ remoteAccount.name }}
</strong>
<br />{{ remoteAccount.number }}
<br/>{{ remoteAccount.number }}
</td>
<td>
{{ remoteAccount.currency }}

View File

@ -79,7 +79,7 @@
<div class="col-sm-8">
<div class="radio"><label>
{{ Form.checkbox('specifics['~type~']', '1',
job.configuration.specifics[type] == '1', {'id': type ~ '_label'}) }}
job.configuration.specifics[type] == '1', {'id': type ~ '_label'}) }}
{{ specific.description }}
</label>
</div>

View File

@ -48,8 +48,8 @@
</td>
<td>
{{ Form.select('mapping['~field.index~']['~option~']',
field.options,
job.configuration['column-mapping-config'][field.index][option], {class: 'form-control'}) }}
field.options,
job.configuration['column-mapping-config'][field.index][option], {class: 'form-control'}) }}
</td>
</tr>
{% endfor %}

View File

@ -63,22 +63,22 @@
</p>
<div class="row">
{% if job.configuration['has-config-file'] != false %}
<div class="col-lg-4">
<a href="{{ route('import.download', [job.key]) }}" class="btn btn-default"><i
class="fa fa-fw fa-download"></i> {{ trans('import.status_ready_config') }}</a>
</div>
<div class="col-lg-4">
<a href="{{ route('import.download', [job.key]) }}" class="btn btn-default"><i
class="fa fa-fw fa-download"></i> {{ trans('import.status_ready_config') }}</a>
</div>
{% endif %}
<div class="col-lg-4">
<button class="btn btn-success start-job"><i class="fa fa-fw fa-gears"></i> {{ trans('import.status_ready_start') }}</button>
</div>
</div>
{% if job.configuration['has-config-file'] != false %}
<p>
&nbsp;
</p>
<p class="text-info">
{{ trans('import.status_ready_share')|raw }}
</p>
<p>
&nbsp;
</p>
<p class="text-info">
{{ trans('import.status_ready_share')|raw }}
</p>
{% endif %}
</div>
</div>

View File

@ -112,7 +112,8 @@
{# EXPENSE ACCOUNTS #}
<div class="box">
<div class="box-header with-border">
<h3 class="box-title"><a href="{{ route('accounts.index',['expense']) }}" title="{{ 'expense_accounts'|_ }}">{{ 'expense_accounts'|_ }}</a></h3>
<h3 class="box-title"><a href="{{ route('accounts.index',['expense']) }}" title="{{ 'expense_accounts'|_ }}">{{ 'expense_accounts'|_ }}</a>
</h3>
</div>
<div class="box-body">
@ -123,7 +124,8 @@
{% if showDeps %}
<div class="box">
<div class="box-header with-border">
<h3 class="box-title"><a href="{{ route('accounts.index',['revenue']) }}" title="{{ 'revenue_accounts'|_ }}">{{ 'revenue_accounts'|_ }}</a></h3>
<h3 class="box-title"><a href="{{ route('accounts.index',['revenue']) }}"
title="{{ 'revenue_accounts'|_ }}">{{ 'revenue_accounts'|_ }}</a></h3>
</div>
<div class="box-body">
@ -146,9 +148,9 @@
<!-- render vertical line with text "today" -->
{% if start.lte(today) and end.gte(today) %}
var today = {{ today.diffInDays(start) + 1 }};
var today = {{ today.diffInDays(start) + 1 }};
{% else %}
var today = -1;
var today = -1;
{% endif %}
</script>

View File

@ -1,4 +1,3 @@
// date ranges
var ranges = {}
{% for title, range in dateRangeConfig.ranges %}
@ -7,22 +6,22 @@ var ranges = {}
// date range meta configuration
var dateRangeMeta = {
title: "{{ dateRangeTitle }}",
uri: "{{ route('daterange') }}",
labels: {
apply: "{{ 'apply'|_ }}",
cancel: "{{ 'cancel'|_ }}",
from: "{{ 'from'|_ }}",
to: "{{ 'to'|_ }}",
customRange: "{{ 'customRange'|_ }}"
}
title: "{{ dateRangeTitle }}",
uri: "{{ route('daterange') }}",
labels: {
apply: "{{ 'apply'|_ }}",
cancel: "{{ 'cancel'|_ }}",
from: "{{ 'from'|_ }}",
to: "{{ 'to'|_ }}",
customRange: "{{ 'customRange'|_ }}"
}
};
// date range actual configuration:
var dateRangeConfig = {
startDate: moment("{{ dateRangeConfig.start }}"),
endDate: moment("{{ dateRangeConfig.end }}"),
ranges: ranges
startDate: moment("{{ dateRangeConfig.start }}"),
endDate: moment("{{ dateRangeConfig.end }}"),
ranges: ranges
};

View File

@ -5,9 +5,10 @@
</div>
<div class="box-body">
{% for entry in info %}
<strong>{{ entry.name }}</strong><br />
<strong>{{ entry.name }}</strong><br/>
<div class="progress">
<div class="progress-bar" role="progressbar" aria-valuenow="{{ entry.percentage }}" aria-valuemin="0" aria-valuemax="100" style="width: {{ entry.percentage }}%;">
<div class="progress-bar" role="progressbar" aria-valuenow="{{ entry.percentage }}" aria-valuemin="0" aria-valuemax="100"
style="width: {{ entry.percentage }}%;">
{% if entry.percentage >=20 %}{{ entry.amount|formatAmountPlain }}{% endif %}
</div>
{% if entry.percentage < 20 %}&nbsp;{{ entry.amount|formatAmountPlain }}{% endif %}

View File

@ -185,7 +185,8 @@
<script src="js/lib/daterangepicker.js?v={{ FF_VERSION }}" type="text/javascript"></script>
<script src="lib/adminlte/js/app.min.js?v={{ FF_VERSION }}" type="text/javascript"></script>
<script type="text/javascript" src="js/lib/accounting.min.js?v={{ FF_VERSION }}"></script>
<script src="{{ route('javascript.variables') }}?ext=.js&amp;v={{ FF_VERSION }}{% if account %}&amp;account={{ account.id }}{% endif %}" type="text/javascript"></script>
<script src="{{ route('javascript.variables') }}?ext=.js&amp;v={{ FF_VERSION }}{% if account %}&amp;account={{ account.id }}{% endif %}"
type="text/javascript"></script>
<script type="text/javascript" src="js/ff/firefly.js?v={{ FF_VERSION }}"></script>
<script type="text/javascript" src="js/ff/help.js?v={{ FF_VERSION }}"></script>
{% if not shownDemo %}

View File

@ -21,7 +21,14 @@
{% for account in accounts %}
<tr>
<td class="hidden-sm hidden-xs">
<div class="btn-group btn-group-xs edit_tr_buttons"><a class="btn btn-default btn-xs" title="{{ 'edit'|_ }}" href="{{ route('accounts.edit',account.id) }}"><i class="fa fa-fw fa-pencil"></i></a>{% if what == 'asset' %}<a class="btn btn-default btn-xs" title="{{ 'reconcile_this_account'|_ }}" href="{{ route('accounts.reconcile',account.id) }}"><i class="fa fa-fw fa-check"></i></a>{% endif %}<a class="btn btn-danger btn-xs" title="{{ 'delete'|_ }}" href="{{ route('accounts.delete',account.id) }}"><i class="fa fa-fw fa-trash-o"></i></a></div>
<div class="btn-group btn-group-xs edit_tr_buttons"><a class="btn btn-default btn-xs" title="{{ 'edit'|_ }}"
href="{{ route('accounts.edit',account.id) }}"><i
class="fa fa-fw fa-pencil"></i></a>{% if what == 'asset' %}<a class="btn btn-default btn-xs"
title="{{ 'reconcile_this_account'|_ }}"
href="{{ route('accounts.reconcile',account.id) }}"><i
class="fa fa-fw fa-check"></i></a>{% endif %}<a class="btn btn-danger btn-xs" title="{{ 'delete'|_ }}"
href="{{ route('accounts.delete',account.id) }}"><i
class="fa fa-fw fa-trash-o"></i></a></div>
</td>
<td data-value="{{ account.name }}"><a href="{{ route('accounts.show',account.id) }}">{{ account.name }}</a></td>
{% if what == "asset" %}

View File

@ -19,7 +19,9 @@
{% for entry in bills %}
<tr>
<td class="hidden-sm hidden-xs">
<div class="btn-group btn-group-xs edit_tr_buttons"><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>
<div class="btn-group btn-group-xs edit_tr_buttons"><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 data-value="{{ entry.name }}">
<a href="{{ route('bills.show',entry.id) }}" title="{{ entry.name }}">{{ entry.name }}</a>

View File

@ -46,12 +46,14 @@
<div class="mass_buttons btn-group btn-group pull-right">
<a href="#" class="btn btn-default mass_select"><i class="fa fa-fw fa-check-square-o"></i> {{ 'select_transactions'|_ }}</a>
<a href="#" class="btn btn-default mass_stop_select" style="display:none;"><i class="fa faw-fw fa-square-o"
></i> {{ 'stop_selection'|_ }}</a>
></i> {{ 'stop_selection'|_ }}</a>
{% if showReconcile == true %}
{% if moment == 'all' %}
<a href="{{ route('accounts.reconcile', [account.id, start.format('Ymd')]) }}" class="btn btn-info mass_reconcile"><i class="fa fa-fw fa-check"></i> {{ 'reconcile_this_account'|_ }}</a>
<a href="{{ route('accounts.reconcile', [account.id, start.format('Ymd')]) }}" class="btn btn-info mass_reconcile"><i
class="fa fa-fw fa-check"></i> {{ 'reconcile_this_account'|_ }}</a>
{% else %}
<a href="{{ route('accounts.reconcile', [account.id, start.format('Ymd'), end.format('Ymd')]) }}" class="btn btn-info mass_reconcile"><i class="fa fa-fw fa-check"></i> {{ 'reconcile_this_account'|_ }}</a>
<a href="{{ route('accounts.reconcile', [account.id, start.format('Ymd'), end.format('Ymd')]) }}" class="btn btn-info mass_reconcile"><i
class="fa fa-fw fa-check"></i> {{ 'reconcile_this_account'|_ }}</a>
{% endif %}
{% endif %}
</div>

View File

@ -1,7 +1,7 @@
<table class="table table-hover">
<tr>
{% if showPiggyBank %}
<th>{{ trans('list.piggy_bank') }}</th>
<th>{{ trans('list.piggy_bank') }}</th>
{% endif %}
<th>{{ trans('list.date') }}</th>
<th>{{ trans('list.amount') }}</th>

View File

@ -159,7 +159,8 @@
class="fa fa-gear fa-fw"></i> {{ 'preferences'|_ }}</a>
</li>
<li class="{{ activeRoutePartial('currencies') }}">
<a class="{{ activeRoutePartial('currencies') }}" href="{{ route('currencies.index') }}"><i class="fa fa-usd fa-fw"></i> {{ 'currencies'|_ }}</a>
<a class="{{ activeRoutePartial('currencies') }}" href="{{ route('currencies.index') }}"><i class="fa fa-usd fa-fw"></i> {{ 'currencies'|_ }}
</a>
</li>
<!-- admin (if user admin) -->
{% if Auth.user.hasRole('owner') %}

Some files were not shown because too many files have changed in this diff Show More