Restructure code to rename a variable.

This commit is contained in:
James Cole 2018-06-30 05:21:21 +02:00
parent 2d7b7c2f3f
commit c9356c1237
No known key found for this signature in database
GPG Key ID: C16961E655E74B5E
50 changed files with 325 additions and 321 deletions

View File

@ -78,8 +78,8 @@ class PiggyBankRequest extends Request
case 'PUT': case 'PUT':
case 'PATCH': case 'PATCH':
/** @var PiggyBank $piggyBank */ /** @var PiggyBank $piggyBank */
$piggyBank = $this->route()->parameter('piggyBank'); $piggyBank = $this->route()->parameter('piggyBank');
$rules['name'] = 'required|between:1,255|uniquePiggyBankForUser:' . $piggyBank->id; $rules['name'] = 'required|between:1,255|uniquePiggyBankForUser:' . $piggyBank->id;
break; break;
} }

View File

@ -64,7 +64,7 @@ class RecurrenceRequest extends Request
'meta' => [ 'meta' => [
'piggy_bank_id' => $this->integer('piggy_bank_id'), 'piggy_bank_id' => $this->integer('piggy_bank_id'),
'piggy_bank_name' => $this->string('piggy_bank_name'), 'piggy_bank_name' => $this->string('piggy_bank_name'),
'tags' => explode(',', $this->string('tags')), 'tags' => explode(',', $this->string('tags')),
], ],
'transactions' => [], 'transactions' => [],
'repetitions' => [], 'repetitions' => [],
@ -88,26 +88,26 @@ class RecurrenceRequest extends Request
/** @var array $transaction */ /** @var array $transaction */
foreach ($transactions as $transaction) { foreach ($transactions as $transaction) {
$return['transactions'][] = [ $return['transactions'][] = [
'amount' => $transaction['amount'], 'amount' => $transaction['amount'],
'currency_id' => isset($transaction['currency_id']) ? (int)$transaction['currency_id'] : null, 'currency_id' => isset($transaction['currency_id']) ? (int)$transaction['currency_id'] : null,
'currency_code' => $transaction['currency_code'] ?? null, 'currency_code' => $transaction['currency_code'] ?? null,
'foreign_amount' => $transaction['foreign_amount'] ?? null, 'foreign_amount' => $transaction['foreign_amount'] ?? null,
'foreign_currency_id' => isset($transaction['foreign_currency_id']) ? (int)$transaction['foreign_currency_id'] : null, 'foreign_currency_id' => isset($transaction['foreign_currency_id']) ? (int)$transaction['foreign_currency_id'] : null,
'foreign_currency_code' => $transaction['foreign_currency_code'] ?? null, 'foreign_currency_code' => $transaction['foreign_currency_code'] ?? null,
'budget_id' => isset($transaction['budget_id']) ? (int)$transaction['budget_id'] : null, 'budget_id' => isset($transaction['budget_id']) ? (int)$transaction['budget_id'] : null,
'budget_name' => $transaction['budget_name'] ?? null, 'budget_name' => $transaction['budget_name'] ?? null,
'category_id' => isset($transaction['category_id']) ? (int)$transaction['category_id'] : null, 'category_id' => isset($transaction['category_id']) ? (int)$transaction['category_id'] : null,
'category_name' => $transaction['category_name'] ?? null, 'category_name' => $transaction['category_name'] ?? null,
'source_id' => isset($transaction['source_id']) ? (int)$transaction['source_id'] : null, 'source_id' => isset($transaction['source_id']) ? (int)$transaction['source_id'] : null,
'source_name' => isset($transaction['source_name']) ? (string)$transaction['source_name'] : null, 'source_name' => isset($transaction['source_name']) ? (string)$transaction['source_name'] : null,
'destination_id' => isset($transaction['destination_id']) ? (int)$transaction['destination_id'] : null, 'destination_id' => isset($transaction['destination_id']) ? (int)$transaction['destination_id'] : null,
'destination_name' => isset($transaction['destination_name']) ? (string)$transaction['destination_name'] : null, 'destination_name' => isset($transaction['destination_name']) ? (string)$transaction['destination_name'] : null,
'description' => $transaction['description'], 'description' => $transaction['description'],
]; ];
} }

View File

@ -49,10 +49,12 @@ class AutomationHandler
$user = $repository->findNull($event->userId); $user = $repository->findNull($event->userId);
if (null === $user) { if (null === $user) {
Log::debug('User is NULL'); Log::debug('User is NULL');
return true; return true;
} }
if ($event->journals->count() === 0) { if ($event->journals->count() === 0) {
Log::debug('No journals.'); Log::debug('No journals.');
return true; return true;
} }

View File

@ -321,6 +321,14 @@ class JournalCollector implements JournalCollectorInterface
return $journals; return $journals;
} }
/**
* @return EloquentBuilder
*/
public function getQuery(): EloquentBuilder
{
return $this->query;
}
/** /**
* @return JournalCollectorInterface * @return JournalCollectorInterface
*/ */
@ -768,14 +776,6 @@ class JournalCollector implements JournalCollectorInterface
return $this; return $this;
} }
/**
* @return EloquentBuilder
*/
public function getQuery(): EloquentBuilder
{
return $this->query;
}
/** /**
* @param Collection $set * @param Collection $set
* *

View File

@ -110,7 +110,7 @@ class ProfileController extends Controller
$image = Google2FA::getQRCodeInline($domain, auth()->user()->email, $secret, 200); $image = Google2FA::getQRCodeInline($domain, auth()->user()->email, $secret, 200);
return view('profile.code', compact('image','secret')); return view('profile.code', compact('image', 'secret'));
} }
/** /**

View File

@ -48,7 +48,7 @@ class DeleteController extends Controller
// todo actual number. // todo actual number.
$journalsCreated = 5; $journalsCreated = 5;
return view('recurring.delete', compact('recurrence', 'subTitle','journalsCreated')); return view('recurring.delete', compact('recurrence', 'subTitle', 'journalsCreated'));
} }
/** /**

View File

@ -56,7 +56,7 @@ class BalanceController extends Controller
$balance = $helper->getBalanceReport($accounts, $start, $end); $balance = $helper->getBalanceReport($accounts, $start, $end);
$result = view('reports.partials.balance', compact( 'balance'))->render(); $result = view('reports.partials.balance', compact('balance'))->render();
$cache->store($result); $cache->store($result);
return $result; return $result;

View File

@ -181,11 +181,11 @@ class MassController extends Controller
if (null !== $journal) { if (null !== $journal) {
// get optional fields: // get optional fields:
$what = strtolower($this->repository->getTransactionType($journal)); $what = strtolower($this->repository->getTransactionType($journal));
$sourceAccountId = $request->get('source_account_id')[$journal->id] ?? null; $sourceAccountId = $request->get('source_id')[$journal->id] ?? null;
$currencyId = $request->get('transaction_currency_id')[$journal->id] ?? 1; $currencyId = $request->get('transaction_currency_id')[$journal->id] ?? 1;
$sourceAccountName = $request->get('source_account_name')[$journal->id] ?? null; $sourceAccountName = $request->get('source_name')[$journal->id] ?? null;
$destAccountId = $request->get('destination_account_id')[$journal->id] ?? null; $destAccountId = $request->get('destination_id')[$journal->id] ?? null;
$destAccountName = $request->get('destination_account_name')[$journal->id] ?? null; $destAccountName = $request->get('destination_name')[$journal->id] ?? null;
$budgetId = (int)($request->get('budget_id')[$journal->id] ?? 0.0); $budgetId = (int)($request->get('budget_id')[$journal->id] ?? 0.0);
$category = $request->get('category')[$journal->id]; $category = $request->get('category')[$journal->id];
$tags = $journal->tags->pluck('tag')->toArray(); $tags = $journal->tags->pluck('tag')->toArray();

View File

@ -99,10 +99,10 @@ class SingleController extends Controller
$preFilled = [ $preFilled = [
'description' => $journal->description, 'description' => $journal->description,
'source_account_id' => $source->id, 'source_id' => $source->id,
'source_account_name' => $source->name, 'source_name' => $source->name,
'destination_account_id' => $destination->id, 'destination_id' => $destination->id,
'destination_account_name' => $destination->name, 'destination_name' => $destination->name,
'amount' => $amount, 'amount' => $amount,
'source_amount' => $amount, 'source_amount' => $amount,
'destination_amount' => $foreignAmount, 'destination_amount' => $foreignAmount,
@ -152,10 +152,10 @@ class SingleController extends Controller
$source = (int)$request->get('source'); $source = (int)$request->get('source');
if (($what === 'withdrawal' || $what === 'transfer') && $source > 0) { if (($what === 'withdrawal' || $what === 'transfer') && $source > 0) {
$preFilled['source_account_id'] = $source; $preFilled['source_id'] = $source;
} }
if ($what === 'deposit' && $source > 0) { if ($what === 'deposit' && $source > 0) {
$preFilled['destination_account_id'] = $source; $preFilled['destination_id'] = $source;
} }
session()->put('preFilled', $preFilled); session()->put('preFilled', $preFilled);
@ -259,35 +259,35 @@ class SingleController extends Controller
$pTransaction = $repository->getFirstPosTransaction($journal); $pTransaction = $repository->getFirstPosTransaction($journal);
$foreignCurrency = $pTransaction->foreignCurrency ?? $pTransaction->transactionCurrency; $foreignCurrency = $pTransaction->foreignCurrency ?? $pTransaction->transactionCurrency;
$preFilled = [ $preFilled = [
'date' => $repository->getJournalDate($journal, null), // $journal->dateAsString() 'date' => $repository->getJournalDate($journal, null), // $journal->dateAsString()
'interest_date' => $repository->getJournalDate($journal, 'interest_date'), 'interest_date' => $repository->getJournalDate($journal, 'interest_date'),
'book_date' => $repository->getJournalDate($journal, 'book_date'), 'book_date' => $repository->getJournalDate($journal, 'book_date'),
'process_date' => $repository->getJournalDate($journal, 'process_date'), 'process_date' => $repository->getJournalDate($journal, 'process_date'),
'category' => $repository->getJournalCategoryName($journal), 'category' => $repository->getJournalCategoryName($journal),
'budget_id' => $repository->getJournalBudgetId($journal), 'budget_id' => $repository->getJournalBudgetId($journal),
'tags' => implode(',', $repository->getTags($journal)), 'tags' => implode(',', $repository->getTags($journal)),
'source_account_id' => $sourceAccounts->first()->id, 'source_id' => $sourceAccounts->first()->id,
'source_account_name' => $sourceAccounts->first()->edit_name, 'source_name' => $sourceAccounts->first()->edit_name,
'destination_account_id' => $destinationAccounts->first()->id, 'destination_id' => $destinationAccounts->first()->id,
'destination_account_name' => $destinationAccounts->first()->edit_name, 'destination_name' => $destinationAccounts->first()->edit_name,
// new custom fields: // new custom fields:
'due_date' => $repository->getJournalDate($journal, 'due_date'), 'due_date' => $repository->getJournalDate($journal, 'due_date'),
'payment_date' => $repository->getJournalDate($journal, 'payment_date'), 'payment_date' => $repository->getJournalDate($journal, 'payment_date'),
'invoice_date' => $repository->getJournalDate($journal, 'invoice_date'), 'invoice_date' => $repository->getJournalDate($journal, 'invoice_date'),
'interal_reference' => $repository->getMetaField($journal, 'internal_reference'), 'interal_reference' => $repository->getMetaField($journal, 'internal_reference'),
'notes' => $repository->getNoteText($journal), 'notes' => $repository->getNoteText($journal),
// amount fields // amount fields
'amount' => $pTransaction->amount, 'amount' => $pTransaction->amount,
'source_amount' => $pTransaction->amount, 'source_amount' => $pTransaction->amount,
'native_amount' => $pTransaction->amount, 'native_amount' => $pTransaction->amount,
'destination_amount' => $pTransaction->foreign_amount, 'destination_amount' => $pTransaction->foreign_amount,
'currency' => $pTransaction->transactionCurrency, 'currency' => $pTransaction->transactionCurrency,
'source_currency' => $pTransaction->transactionCurrency, 'source_currency' => $pTransaction->transactionCurrency,
'native_currency' => $pTransaction->transactionCurrency, 'native_currency' => $pTransaction->transactionCurrency,
'foreign_currency' => $foreignCurrency, 'foreign_currency' => $foreignCurrency,
'destination_currency' => $foreignCurrency, 'destination_currency' => $foreignCurrency,
]; ];
// amounts for withdrawals and deposits: // amounts for withdrawals and deposits:

View File

@ -184,30 +184,30 @@ class SplitController extends Controller
$sourceAccounts = $this->repository->getJournalSourceAccounts($journal); $sourceAccounts = $this->repository->getJournalSourceAccounts($journal);
$destinationAccounts = $this->repository->getJournalDestinationAccounts($journal); $destinationAccounts = $this->repository->getJournalDestinationAccounts($journal);
$array = [ $array = [
'journal_description' => $request->old('journal_description', $journal->description), 'journal_description' => $request->old('journal_description', $journal->description),
'journal_amount' => '0', 'journal_amount' => '0',
'journal_foreign_amount' => '0', 'journal_foreign_amount' => '0',
'sourceAccounts' => $sourceAccounts, 'sourceAccounts' => $sourceAccounts,
'journal_source_account_id' => $request->old('journal_source_account_id', $sourceAccounts->first()->id), 'journal_source_id' => $request->old('journal_source_id', $sourceAccounts->first()->id),
'journal_source_account_name' => $request->old('journal_source_account_name', $sourceAccounts->first()->name), 'journal_source_name' => $request->old('journal_source_name', $sourceAccounts->first()->name),
'journal_destination_account_id' => $request->old('journal_destination_account_id', $destinationAccounts->first()->id), 'journal_destination_id' => $request->old('journal_destination_id', $destinationAccounts->first()->id),
'destinationAccounts' => $destinationAccounts, 'destinationAccounts' => $destinationAccounts,
'what' => strtolower($this->repository->getTransactionType($journal)), 'what' => strtolower($this->repository->getTransactionType($journal)),
'date' => $request->old('date', $this->repository->getJournalDate($journal, null)), 'date' => $request->old('date', $this->repository->getJournalDate($journal, null)),
'tags' => implode(',', $journal->tags->pluck('tag')->toArray()), 'tags' => implode(',', $journal->tags->pluck('tag')->toArray()),
// all custom fields: // all custom fields:
'interest_date' => $request->old('interest_date', $this->repository->getMetaField($journal, 'interest_date')), 'interest_date' => $request->old('interest_date', $this->repository->getMetaField($journal, 'interest_date')),
'book_date' => $request->old('book_date', $this->repository->getMetaField($journal, 'book_date')), 'book_date' => $request->old('book_date', $this->repository->getMetaField($journal, 'book_date')),
'process_date' => $request->old('process_date', $this->repository->getMetaField($journal, 'process_date')), 'process_date' => $request->old('process_date', $this->repository->getMetaField($journal, 'process_date')),
'due_date' => $request->old('due_date', $this->repository->getMetaField($journal, 'due_date')), 'due_date' => $request->old('due_date', $this->repository->getMetaField($journal, 'due_date')),
'payment_date' => $request->old('payment_date', $this->repository->getMetaField($journal, 'payment_date')), 'payment_date' => $request->old('payment_date', $this->repository->getMetaField($journal, 'payment_date')),
'invoice_date' => $request->old('invoice_date', $this->repository->getMetaField($journal, 'invoice_date')), 'invoice_date' => $request->old('invoice_date', $this->repository->getMetaField($journal, 'invoice_date')),
'internal_reference' => $request->old('internal_reference', $this->repository->getMetaField($journal, 'internal_reference')), 'internal_reference' => $request->old('internal_reference', $this->repository->getMetaField($journal, 'internal_reference')),
'notes' => $request->old('notes', $this->repository->getNoteText($journal)), 'notes' => $request->old('notes', $this->repository->getNoteText($journal)),
// transactions. // transactions.
'transactions' => $this->getTransactionDataFromJournal($journal), 'transactions' => $this->getTransactionDataFromJournal($journal),
]; ];
// update transactions array with old request data. // update transactions array with old request data.
$array['transactions'] = $this->updateWithPrevious($array['transactions'], $request->old()); $array['transactions'] = $this->updateWithPrevious($array['transactions'], $request->old());

View File

@ -81,10 +81,10 @@ class JournalFormRequest extends Request
'budget_name' => null, 'budget_name' => null,
'category_id' => null, 'category_id' => null,
'category_name' => $this->string('category'), 'category_name' => $this->string('category'),
'source_id' => $this->integer('source_account_id'), 'source_id' => $this->integer('source_id'),
'source_name' => $this->string('source_account_name'), 'source_name' => $this->string('source_name'),
'destination_id' => $this->integer('destination_account_id'), 'destination_id' => $this->integer('destination_id'),
'destination_name' => $this->string('destination_account_name'), 'destination_name' => $this->string('destination_name'),
'foreign_currency_id' => null, 'foreign_currency_id' => null,
'foreign_currency_code' => null, 'foreign_currency_code' => null,
'foreign_amount' => null, 'foreign_amount' => null,
@ -161,11 +161,11 @@ class JournalFormRequest extends Request
'amount' => 'numeric|required|more:0', 'amount' => 'numeric|required|more:0',
'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id|nullable', 'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id|nullable',
'category' => 'between:1,255|nullable', 'category' => 'between:1,255|nullable',
'source_account_id' => 'numeric|belongsToUser:accounts,id|nullable', 'source_id' => 'numeric|belongsToUser:accounts,id|nullable',
'source_account_name' => 'between:1,255|nullable', 'source_name' => 'between:1,255|nullable',
'destination_account_id' => 'numeric|belongsToUser:accounts,id|nullable', 'destination_id' => 'numeric|belongsToUser:accounts,id|nullable',
'destination_account_name' => 'between:1,255|nullable', 'destination_name' => 'between:1,255|nullable',
'piggy_bank_id' => 'between:1,255|nullable', 'piggy_bank_id' => 'numeric|nullable',
// foreign currency amounts // foreign currency amounts
'native_amount' => 'numeric|more:0|nullable', 'native_amount' => 'numeric|more:0|nullable',
@ -193,17 +193,17 @@ class JournalFormRequest extends Request
{ {
switch ($what) { switch ($what) {
case strtolower(TransactionType::WITHDRAWAL): case strtolower(TransactionType::WITHDRAWAL):
$rules['source_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts'; $rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
$rules['destination_account_name'] = 'between:1,255|nullable'; $rules['destination_name'] = 'between:1,255|nullable';
break; break;
case strtolower(TransactionType::DEPOSIT): case strtolower(TransactionType::DEPOSIT):
$rules['source_account_name'] = 'between:1,255|nullable'; $rules['source_name'] = 'between:1,255|nullable';
$rules['destination_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts'; $rules['destination_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
break; break;
case strtolower(TransactionType::TRANSFER): case strtolower(TransactionType::TRANSFER):
// this may not work: // this may not work:
$rules['source_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:destination_account_id'; $rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:destination_id';
$rules['destination_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:source_account_id'; $rules['destination_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:source_id';
break; break;
default: default:

View File

@ -45,11 +45,11 @@ class MassEditJournalRequest extends Request
// fixed // fixed
return [ return [
'description.*' => 'required|min:1,max:255', 'description.*' => 'required|min:1,max:255',
'source_account_id.*' => 'numeric|belongsToUser:accounts,id', 'source_id.*' => 'numeric|belongsToUser:accounts,id',
'destination_account_id.*' => 'numeric|belongsToUser:accounts,id', 'destination_id.*' => 'numeric|belongsToUser:accounts,id',
'revenue_account' => 'max:255', 'revenue_account' => 'max:255',
'expense_account' => 'max:255', 'expense_account' => 'max:255',
]; ];
} }
} }

View File

@ -104,16 +104,16 @@ class RecurrenceFormRequest extends Request
default: default:
throw new FireflyException(sprintf('Cannot handle transaction type "%s"', $this->string('transaction_type'))); throw new FireflyException(sprintf('Cannot handle transaction type "%s"', $this->string('transaction_type')));
case 'withdrawal': case 'withdrawal':
$return['transactions'][0]['source_account_id'] = $this->integer('source_account_id'); $return['transactions'][0]['source_id'] = $this->integer('source_id');
$return['transactions'][0]['destination_account_name'] = $this->string('destination_account_name'); $return['transactions'][0]['destination_name'] = $this->string('destination_name');
break; break;
case 'deposit': case 'deposit':
$return['transactions'][0]['source_account_name'] = $this->string('source_account_name'); $return['transactions'][0]['source_name'] = $this->string('source_name');
$return['transactions'][0]['destination_account_id'] = $this->integer('destination_account_id'); $return['transactions'][0]['destination_id'] = $this->integer('destination_id');
break; break;
case 'transfer': case 'transfer':
$return['transactions'][0]['source_account_id'] = $this->integer('source_account_id'); $return['transactions'][0]['source_id'] = $this->integer('source_id');
$return['transactions'][0]['destination_account_id'] = $this->integer('destination_account_id'); $return['transactions'][0]['destination_id'] = $this->integer('destination_id');
break; break;
} }
@ -131,34 +131,34 @@ class RecurrenceFormRequest extends Request
$tomorrow->addDay(); $tomorrow->addDay();
$rules = [ $rules = [
// mandatory info for recurrence. // mandatory info for recurrence.
'title' => 'required|between:1,255|uniqueObjectForUser:recurrences,title', 'title' => 'required|between:1,255|uniqueObjectForUser:recurrences,title',
'first_date' => 'required|date|after:' . $today->format('Y-m-d'), 'first_date' => 'required|date|after:' . $today->format('Y-m-d'),
'repetition_type' => ['required', new ValidRecurrenceRepetitionValue, new ValidRecurrenceRepetitionType, 'between:1,20'], 'repetition_type' => ['required', new ValidRecurrenceRepetitionValue, new ValidRecurrenceRepetitionType, 'between:1,20'],
'skip' => 'required|numeric|between:0,31', 'skip' => 'required|numeric|between:0,31',
// optional for recurrence: // optional for recurrence:
'recurring_description' => 'between:0,65000', 'recurring_description' => 'between:0,65000',
'active' => 'numeric|between:0,1', 'active' => 'numeric|between:0,1',
'apply_rules' => 'numeric|between:0,1', 'apply_rules' => 'numeric|between:0,1',
// mandatory for transaction: // mandatory for transaction:
'transaction_description' => 'required|between:1,255', 'transaction_description' => 'required|between:1,255',
'transaction_type' => 'required|in:withdrawal,deposit,transfer', 'transaction_type' => 'required|in:withdrawal,deposit,transfer',
'transaction_currency_id' => 'required|exists:transaction_currencies,id', 'transaction_currency_id' => 'required|exists:transaction_currencies,id',
'amount' => 'numeric|required|more:0', 'amount' => 'numeric|required|more:0',
// mandatory account info: // mandatory account info:
'source_account_id' => 'numeric|belongsToUser:accounts,id|nullable', 'source_id' => 'numeric|belongsToUser:accounts,id|nullable',
'source_account_name' => 'between:1,255|nullable', 'source_name' => 'between:1,255|nullable',
'destination_account_id' => 'numeric|belongsToUser:accounts,id|nullable', 'destination_id' => 'numeric|belongsToUser:accounts,id|nullable',
'destination_account_name' => 'between:1,255|nullable', 'destination_name' => 'between:1,255|nullable',
// foreign amount data: // foreign amount data:
'foreign_amount' => 'nullable|more:0', 'foreign_amount' => 'nullable|more:0',
// optional fields: // optional fields:
'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id|nullable', 'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id|nullable',
'category' => 'between:1,255|nullable', 'category' => 'between:1,255|nullable',
'tags' => 'between:1,255|nullable', 'tags' => 'between:1,255|nullable',
]; ];
if ($this->integer('foreign_currency_id') > 0) { if ($this->integer('foreign_currency_id') > 0) {
$rules['foreign_currency_id'] = 'exists:transaction_currencies,id'; $rules['foreign_currency_id'] = 'exists:transaction_currencies,id';
@ -181,17 +181,17 @@ class RecurrenceFormRequest extends Request
// switchc on type to expand rules for source and destination accounts: // switchc on type to expand rules for source and destination accounts:
switch ($this->string('transaction_type')) { switch ($this->string('transaction_type')) {
case strtolower(TransactionType::WITHDRAWAL): case strtolower(TransactionType::WITHDRAWAL):
$rules['source_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts'; $rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
$rules['destination_account_name'] = 'between:1,255|nullable'; $rules['destination_name'] = 'between:1,255|nullable';
break; break;
case strtolower(TransactionType::DEPOSIT): case strtolower(TransactionType::DEPOSIT):
$rules['source_account_name'] = 'between:1,255|nullable'; $rules['source_name'] = 'between:1,255|nullable';
$rules['destination_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts'; $rules['destination_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
break; break;
case strtolower(TransactionType::TRANSFER): case strtolower(TransactionType::TRANSFER):
// this may not work: // this may not work:
$rules['source_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:destination_account_id'; $rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:destination_id';
$rules['destination_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:source_account_id'; $rules['destination_id'] = 'required|exists:accounts,id|belongsToUser:accounts|different:source_id';
break; break;
default: default:

View File

@ -64,16 +64,16 @@ class SplitJournalFormRequest extends Request
foreach ($this->get('transactions') as $index => $transaction) { foreach ($this->get('transactions') as $index => $transaction) {
switch ($data['type']) { switch ($data['type']) {
case 'withdrawal': case 'withdrawal':
$sourceId = $this->integer('journal_source_account_id'); $sourceId = $this->integer('journal_source_id');
$destinationName = $transaction['destination_name'] ?? ''; $destinationName = $transaction['destination_name'] ?? '';
break; break;
case 'deposit': case 'deposit':
$sourceName = $transaction['source_name'] ?? ''; $sourceName = $transaction['source_name'] ?? '';
$destinationId = $this->integer('journal_destination_account_id'); $destinationId = $this->integer('journal_destination_id');
break; break;
case 'transfer': case 'transfer':
$sourceId = $this->integer('journal_source_account_id'); $sourceId = $this->integer('journal_source_id');
$destinationId = $this->integer('journal_destination_account_id'); $destinationId = $this->integer('journal_destination_id');
break; break;
} }
$foreignAmount = $transaction['foreign_amount'] ?? null; $foreignAmount = $transaction['foreign_amount'] ?? null;
@ -112,20 +112,20 @@ class SplitJournalFormRequest extends Request
'what' => 'required|in:withdrawal,deposit,transfer', 'what' => 'required|in:withdrawal,deposit,transfer',
'journal_description' => 'required|between:1,255', 'journal_description' => 'required|between:1,255',
'id' => 'numeric|belongsToUser:transaction_journals,id', 'id' => 'numeric|belongsToUser:transaction_journals,id',
'journal_source_account_id' => 'numeric|belongsToUser:accounts,id', 'journal_source_id' => 'numeric|belongsToUser:accounts,id',
'journal_source_account_name.*' => 'between:1,255', 'journal_source_name.*' => 'between:1,255',
'journal_currency_id' => 'required|exists:transaction_currencies,id', 'journal_currency_id' => 'required|exists:transaction_currencies,id',
'date' => 'required|date', 'date' => 'required|date',
'interest_date' => 'date|nullable', 'interest_date' => 'date|nullable',
'book_date' => 'date|nullable', 'book_date' => 'date|nullable',
'process_date' => 'date|nullable', 'process_date' => 'date|nullable',
'transactions.*.transaction_description' => 'required|between:1,255', 'transactions.*.transaction_description' => 'required|between:1,255',
'transactions.*.destination_account_id' => 'numeric|belongsToUser:accounts,id', 'transactions.*.destination_id' => 'numeric|belongsToUser:accounts,id',
'transactions.*.destination_name' => 'between:1,255|nullable', 'transactions.*.destination_name' => 'between:1,255|nullable',
'transactions.*.amount' => 'required|numeric', 'transactions.*.amount' => 'required|numeric',
'transactions.*.budget_id' => 'belongsToUser:budgets,id', 'transactions.*.budget_id' => 'belongsToUser:budgets,id',
'transactions.*.category_name' => 'between:1,255|nullable', 'transactions.*.category_name' => 'between:1,255|nullable',
'transactions.*.piggy_bank_id' => 'between:1,255|nullable', 'transactions.*.piggy_bank_id' => 'numeric|nullable',
]; ];
} }
@ -155,8 +155,8 @@ class SplitJournalFormRequest extends Request
/** @var array $array */ /** @var array $array */
foreach ($transactions as $array) { foreach ($transactions as $array) {
if ($array['destination_id'] !== null && $array['source_id'] !== null && $array['destination_id'] === $array['source_id']) { if ($array['destination_id'] !== null && $array['source_id'] !== null && $array['destination_id'] === $array['source_id']) {
$validator->errors()->add('journal_source_account_id', trans('validation.source_equals_destination')); $validator->errors()->add('journal_source_id', trans('validation.source_equals_destination'));
$validator->errors()->add('journal_destination_account_id', trans('validation.source_equals_destination')); $validator->errors()->add('journal_destination_id', trans('validation.source_equals_destination'));
} }
} }

View File

@ -415,7 +415,7 @@ class ImportArrayStorage
// store the journal. // store the journal.
try { try {
$journal = $this->journalRepos->store($store); $journal = $this->journalRepos->store($store);
} catch(FireflyException $e) { } catch (FireflyException $e) {
Log::error($e->getMessage()); Log::error($e->getMessage());
Log::error($e->getTraceAsString()); Log::error($e->getTraceAsString());
$this->repository->addErrorMessage($this->importJob, sprintf('Row #%d could not be imported. %s', $index, $e->getMessage())); $this->repository->addErrorMessage($this->importJob, sprintf('Row #%d could not be imported. %s', $index, $e->getMessage()));

View File

@ -44,7 +44,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property AccountType $accountType * @property AccountType $accountType
* @property bool $active * @property bool $active
* @property string $virtual_balance * @property string $virtual_balance
* @property User $user * @property User $user
*/ */
class Account extends Model class Account extends Model
{ {

View File

@ -45,11 +45,11 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property TransactionCurrency $transactionCurrency * @property TransactionCurrency $transactionCurrency
* @property Carbon $created_at * @property Carbon $created_at
* @property Carbon $updated_at * @property Carbon $updated_at
* @property Carbon $date * @property Carbon $date
* @property string $repeat_freq * @property string $repeat_freq
* @property int $skip * @property int $skip
* @property bool $automatch * @property bool $automatch
* @property User $user * @property User $user
*/ */
class Bill extends Model class Bill extends Model
{ {

View File

@ -31,9 +31,10 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/** /**
* Class Budget. * Class Budget.
* @property int $id *
* @property int $id
* @property string $name * @property string $name
* @property bool $active * @property bool $active
*/ */
class Budget extends Model class Budget extends Model
{ {

View File

@ -33,7 +33,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* Class Category. * Class Category.
* *
* @property string $name * @property string $name
* @property int $id * @property int $id
*/ */
class Category extends Model class Category extends Model
{ {

View File

@ -39,7 +39,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property string $name * @property string $name
* @property Carbon $updated_at * @property Carbon $updated_at
* @property Carbon $created_at * @property Carbon $created_at
* @property int $id * @property int $id
*/ */
class Preference extends Model class Preference extends Model
{ {

View File

@ -37,8 +37,8 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Carbon $updated_at * @property Carbon $updated_at
* @property string $title * @property string $title
* @property string $text * @property string $text
* @property int $id * @property int $id
* @property int $order * @property int $order
*/ */
class RuleGroup extends Model class RuleGroup extends Model
{ {

View File

@ -73,7 +73,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property bool $is_split * @property bool $is_split
* @property int $attachmentCount * @property int $attachmentCount
* @property int $transaction_currency_id * @property int $transaction_currency_id
* @property int $foreign_currency_id * @property int $foreign_currency_id
*/ */
class Transaction extends Model class Transaction extends Model
{ {

View File

@ -32,7 +32,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property string $code * @property string $code
* @property string $symbol * @property string $symbol
* @property int $decimal_places * @property int $decimal_places
* @property int $id * @property int $id
* *
*/ */
class TransactionCurrency extends Model class TransactionCurrency extends Model

View File

@ -39,8 +39,8 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/** /**
* Class TransactionJournal. * Class TransactionJournal.
* *
* @property User $user * @property User $user
* @property int $bill_id * @property int $bill_id
* @property Collection $categories * @property Collection $categories
*/ */
class TransactionJournal extends Model class TransactionJournal extends Model

View File

@ -30,7 +30,7 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* Class TransactionType. * Class TransactionType.
* *
* @property string $type * @property string $type
* @property int $id * @property int $id
*/ */
class TransactionType extends Model class TransactionType extends Model
{ {

View File

@ -158,7 +158,7 @@ trait FindAccountsTrait
Log::debug(sprintf('Found #%d (%s) with type id %d', $account->id, $account->name, $account->account_type_id)); Log::debug(sprintf('Found #%d (%s) with type id %d', $account->id, $account->name, $account->account_type_id));
return $account; return $account;
} else{ } else {
Log::debug(sprintf('"%s" does not equal "%s"', $account->name, $name)); Log::debug(sprintf('"%s" does not equal "%s"', $account->name, $name));
} }
} }

View File

@ -250,6 +250,13 @@ interface BudgetRepositoryInterface
*/ */
public function store(array $data): Budget; public function store(array $data): Budget;
/**
* @param array $data
*
* @return BudgetLimit
*/
public function storeBudgetLimit(array $data): BudgetLimit;
/** /**
* @param Budget $budget * @param Budget $budget
* @param array $data * @param array $data
@ -274,13 +281,6 @@ interface BudgetRepositoryInterface
*/ */
public function updateBudgetLimit(BudgetLimit $budgetLimit, array $data): BudgetLimit; public function updateBudgetLimit(BudgetLimit $budgetLimit, array $data): BudgetLimit;
/**
* @param array $data
*
* @return BudgetLimit
*/
public function storeBudgetLimit(array $data): BudgetLimit;
/** /**
* @param Budget $budget * @param Budget $budget
* @param Carbon $start * @param Carbon $start

View File

@ -326,6 +326,7 @@ interface JournalRepositoryInterface
/** /**
* @param array $data * @param array $data
*
* @throws FireflyException * @throws FireflyException
* @return TransactionJournal * @return TransactionJournal
*/ */

View File

@ -62,13 +62,6 @@ interface LinkTypeRepositoryInterface
*/ */
public function find(int $id): LinkType; public function find(int $id): LinkType;
/**
* @param int $id
*
* @return LinkType|null
*/
public function findNull(int $id): ?LinkType;
/** /**
* Find link type by name. * Find link type by name.
* *
@ -88,6 +81,13 @@ interface LinkTypeRepositoryInterface
*/ */
public function findLink(TransactionJournal $one, TransactionJournal $two): bool; public function findLink(TransactionJournal $one, TransactionJournal $two): bool;
/**
* @param int $id
*
* @return LinkType|null
*/
public function findNull(int $id): ?LinkType;
/** /**
* See if such a link already exists (and get it). * See if such a link already exists (and get it).
* *

View File

@ -102,17 +102,12 @@ interface PiggyBankRepositoryInterface
/** /**
* @param int $piggyBankid * @param int $piggyBankid
*
* @deprecated * @deprecated
* @return PiggyBank * @return PiggyBank
*/ */
public function find(int $piggyBankid): PiggyBank; public function find(int $piggyBankid): PiggyBank;
/**
* @param int $piggyBankId
* @return PiggyBank|null
*/
public function findNull(int $piggyBankId): ?PiggyBank;
/** /**
* Find by name or return NULL. * Find by name or return NULL.
* *
@ -122,6 +117,13 @@ interface PiggyBankRepositoryInterface
*/ */
public function findByName(string $name): ?PiggyBank; public function findByName(string $name): ?PiggyBank;
/**
* @param int $piggyBankId
*
* @return PiggyBank|null
*/
public function findNull(int $piggyBankId): ?PiggyBank;
/** /**
* Get current amount saved in piggy bank. * Get current amount saved in piggy bank.
* *

View File

@ -79,7 +79,7 @@ class IsValidAttachmentModel implements Rule
/** @var JournalRepositoryInterface $repository */ /** @var JournalRepositoryInterface $repository */
$repository = app(JournalRepositoryInterface::class); $repository = app(JournalRepositoryInterface::class);
$repository->setUser($user); $repository->setUser($user);
$result = $repository->findNull((int)$value); $result = $repository->findNull((int)$value);
return null !== $result; return null !== $result;
break; break;

View File

@ -49,7 +49,7 @@ class FixerIOv2 implements ExchangeRateInterface
public function getRate(TransactionCurrency $fromCurrency, TransactionCurrency $toCurrency, Carbon $date): CurrencyExchangeRate public function getRate(TransactionCurrency $fromCurrency, TransactionCurrency $toCurrency, Carbon $date): CurrencyExchangeRate
{ {
// create new exchange rate with default values. // create new exchange rate with default values.
$rate = 0; $rate = 0;
$exchangeRate = new CurrencyExchangeRate; $exchangeRate = new CurrencyExchangeRate;
$exchangeRate->user()->associate($this->user); $exchangeRate->user()->associate($this->user);
$exchangeRate->fromCurrency()->associate($fromCurrency); $exchangeRate->fromCurrency()->associate($fromCurrency);

View File

@ -25,10 +25,10 @@ namespace FireflyIII\Transformers;
use FireflyIII\Models\Attachment; use FireflyIII\Models\Attachment;
use League\Fractal\Resource\Collection as FractalCollection;
use League\Fractal\Resource\Item; use League\Fractal\Resource\Item;
use League\Fractal\TransformerAbstract; use League\Fractal\TransformerAbstract;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
use League\Fractal\Resource\Collection as FractalCollection;
/** /**
* Class AttachmentTransformer * Class AttachmentTransformer
@ -40,13 +40,13 @@ class AttachmentTransformer extends TransformerAbstract
* *
* @var array * @var array
*/ */
protected $availableIncludes = ['user','notes']; protected $availableIncludes = ['user', 'notes'];
/** /**
* List of resources to automatically include * List of resources to automatically include
* *
* @var array * @var array
*/ */
protected $defaultIncludes = ['user','notes']; protected $defaultIncludes = ['user', 'notes'];
/** @var ParameterBag */ /** @var ParameterBag */
protected $parameters; protected $parameters;
@ -63,20 +63,6 @@ class AttachmentTransformer extends TransformerAbstract
$this->parameters = $parameters; $this->parameters = $parameters;
} }
/**
* Attach the user.
*
* @codeCoverageIgnore
*
* @param Attachment $attachment
*
* @return Item
*/
public function includeUser(Attachment $attachment): Item
{
return $this->item($attachment->user, new UserTransformer($this->parameters), 'users');
}
/** /**
* Attach the notes. * Attach the notes.
* *
@ -91,6 +77,20 @@ class AttachmentTransformer extends TransformerAbstract
return $this->collection($attachment->notes, new NoteTransformer($this->parameters), 'notes'); return $this->collection($attachment->notes, new NoteTransformer($this->parameters), 'notes');
} }
/**
* Attach the user.
*
* @codeCoverageIgnore
*
* @param Attachment $attachment
*
* @return Item
*/
public function includeUser(Attachment $attachment): Item
{
return $this->item($attachment->user, new UserTransformer($this->parameters), 'users');
}
/** /**
* Transform attachment. * Transform attachment.
* *

View File

@ -22,6 +22,7 @@
declare(strict_types=1); declare(strict_types=1);
namespace FireflyIII\Transformers; namespace FireflyIII\Transformers;
use FireflyIII\Models\BudgetLimit; use FireflyIII\Models\BudgetLimit;
use League\Fractal\Resource\Item; use League\Fractal\Resource\Item;
use League\Fractal\TransformerAbstract; use League\Fractal\TransformerAbstract;

View File

@ -157,19 +157,19 @@ class RecurrenceTransformer extends TransformerAbstract
/** @var RecurrenceTransaction $transaction */ /** @var RecurrenceTransaction $transaction */
foreach ($recurrence->recurrenceTransactions as $transaction) { foreach ($recurrence->recurrenceTransactions as $transaction) {
$transactionArray = [ $transactionArray = [
'currency_id' => $transaction->transaction_currency_id, 'currency_id' => $transaction->transaction_currency_id,
'currency_code' => $transaction->transactionCurrency->code, 'currency_code' => $transaction->transactionCurrency->code,
'currency_symbol' => $transaction->transactionCurrency->symbol, 'currency_symbol' => $transaction->transactionCurrency->symbol,
'currency_dp' => $transaction->transactionCurrency->decimal_places, 'currency_dp' => $transaction->transactionCurrency->decimal_places,
'foreign_currency_id' => $transaction->foreign_currency_id, 'foreign_currency_id' => $transaction->foreign_currency_id,
'source_account_id' => $transaction->source_account_id, 'source_id' => $transaction->source_id,
'source_account_name' => $transaction->sourceAccount->name, 'source_name' => $transaction->sourceAccount->name,
'destination_account_id' => $transaction->destination_account_id, 'destination_id' => $transaction->destination_id,
'destination_account_name' => $transaction->destinationAccount->name, 'destination_name' => $transaction->destinationAccount->name,
'amount' => $transaction->amount, 'amount' => $transaction->amount,
'foreign_amount' => $transaction->foreign_amount, 'foreign_amount' => $transaction->foreign_amount,
'description' => $transaction->description, 'description' => $transaction->description,
'meta' => [], 'meta' => [],
]; ];
if (null !== $transaction->foreign_currency_id) { if (null !== $transaction->foreign_currency_id) {
$transactionArray['foreign_currency_code'] = $transaction->foreignCurrency->code; $transactionArray['foreign_currency_code'] = $transaction->foreignCurrency->code;

View File

@ -25,7 +25,6 @@ namespace FireflyIII\Transformers;
use FireflyIII\Models\RuleAction; use FireflyIII\Models\RuleAction;
use FireflyIII\Models\RuleTrigger;
use League\Fractal\TransformerAbstract; use League\Fractal\TransformerAbstract;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
@ -75,8 +74,8 @@ class RuleActionTransformer extends TransformerAbstract
'id' => (int)$ruleAction->id, 'id' => (int)$ruleAction->id,
'updated_at' => $ruleAction->updated_at->toAtomString(), 'updated_at' => $ruleAction->updated_at->toAtomString(),
'created_at' => $ruleAction->created_at->toAtomString(), 'created_at' => $ruleAction->created_at->toAtomString(),
'action_type' => $ruleAction->action_type, 'action_type' => $ruleAction->action_type,
'action_value' => $ruleAction->action_value, 'action_value' => $ruleAction->action_value,
'order' => $ruleAction->order, 'order' => $ruleAction->order,
'active' => $ruleAction->active, 'active' => $ruleAction->active,
'stop_processing' => $ruleAction->stop_processing, 'stop_processing' => $ruleAction->stop_processing,

View File

@ -25,10 +25,10 @@ namespace FireflyIII\Transformers;
use FireflyIII\Models\Rule; use FireflyIII\Models\Rule;
use League\Fractal\Resource\Collection as FractalCollection;
use League\Fractal\Resource\Item; use League\Fractal\Resource\Item;
use League\Fractal\TransformerAbstract; use League\Fractal\TransformerAbstract;
use Symfony\Component\HttpFoundation\ParameterBag; use Symfony\Component\HttpFoundation\ParameterBag;
use League\Fractal\Resource\Collection as FractalCollection;
/** /**
* Class RuleTransformer * Class RuleTransformer
@ -68,8 +68,22 @@ class RuleTransformer extends TransformerAbstract
* *
* @return FractalCollection * @return FractalCollection
*/ */
public function includeRuleTriggers(Rule $rule): FractalCollection { public function includeRuleActions(Rule $rule): FractalCollection
return $this->collection($rule->ruleTriggers, new RuleTriggerTransformer($this->parameters), 'rule_triggers'); {
return $this->collection($rule->ruleActions, new RuleActionTransformer($this->parameters), 'rule_actions');
}
/**
* Include the rule group.
*
* @param Rule $rule
*
* @codeCoverageIgnore
* @return Item
*/
public function includeRuleGroup(Rule $rule): Item
{
return $this->item($rule->ruleGroup, new RuleGroupTransformer($this->parameters), 'rule_groups');
} }
/** /**
@ -77,8 +91,9 @@ class RuleTransformer extends TransformerAbstract
* *
* @return FractalCollection * @return FractalCollection
*/ */
public function includeRuleActions(Rule $rule): FractalCollection { public function includeRuleTriggers(Rule $rule): FractalCollection
return $this->collection($rule->ruleActions, new RuleActionTransformer($this->parameters), 'rule_actions'); {
return $this->collection($rule->ruleTriggers, new RuleTriggerTransformer($this->parameters), 'rule_triggers');
} }
/** /**
@ -94,20 +109,6 @@ class RuleTransformer extends TransformerAbstract
return $this->item($rule->user, new UserTransformer($this->parameters), 'users'); return $this->item($rule->user, new UserTransformer($this->parameters), 'users');
} }
/**
* Include the rule group.
*
* @param Rule $rule
*
* @codeCoverageIgnore
* @return Item
*/
public function includeRuleGroup(Rule $rule): Item
{
return $this->item($rule->ruleGroup, new RuleGroupTransformer($this->parameters), 'rule_groups');
}
/** /**
* Transform the rule. * Transform the rule.
* *

View File

@ -245,13 +245,13 @@ $factory->define(
'transaction_amount' => (string)$faker->randomFloat(2, -100, 100), 'transaction_amount' => (string)$faker->randomFloat(2, -100, 100),
'destination_amount' => (string)$faker->randomFloat(2, -100, 100), 'destination_amount' => (string)$faker->randomFloat(2, -100, 100),
'opposing_account_id' => $faker->numberBetween(1, 10), 'opposing_account_id' => $faker->numberBetween(1, 10),
'source_account_id' => $faker->numberBetween(1, 10), 'source_id' => $faker->numberBetween(1, 10),
'opposing_account_name' => $faker->words(3, true), 'opposing_account_name' => $faker->words(3, true),
'description' => $faker->words(3, true), 'description' => $faker->words(3, true),
'source_account_name' => $faker->words(3, true), 'source_name' => $faker->words(3, true),
'destination_account_id' => $faker->numberBetween(1, 10), 'destination_id' => $faker->numberBetween(1, 10),
'date' => new Carbon, 'date' => new Carbon,
'destination_account_name' => $faker->words(3, true), 'destination_name' => $faker->words(3, true),
'amount' => (string)$faker->randomFloat(2, -100, 100), 'amount' => (string)$faker->randomFloat(2, -100, 100),
'budget_id' => 0, 'budget_id' => 0,
'category' => $faker->words(3, true), 'category' => $faker->words(3, true),

View File

@ -24,16 +24,16 @@ $(document).ready(function () {
"use strict"; "use strict";
// destination account names: // destination account names:
if ($('input[name^="destination_account_name["]').length > 0) { if ($('input[name^="destination_name["]').length > 0) {
$.getJSON('json/expense-accounts').done(function (data) { $.getJSON('json/expense-accounts').done(function (data) {
$('input[name^="destination_account_name["]').typeahead({source: data, autoSelect: false}); $('input[name^="destination_name["]').typeahead({source: data, autoSelect: false});
}); });
} }
// source account name // source account name
if ($('input[name^="source_account_name["]').length > 0) { if ($('input[name^="source_name["]').length > 0) {
$.getJSON('json/revenue-accounts').done(function (data) { $.getJSON('json/revenue-accounts').done(function (data) {
$('input[name^="source_account_name["]').typeahead({source: data, autoSelect: false}); $('input[name^="source_name["]').typeahead({source: data, autoSelect: false});
}); });
} }

View File

@ -65,15 +65,15 @@ function setCommonAutocomplete() {
}); });
if ($('input[name="destination_account_name"]').length > 0) { if ($('input[name="destination_name"]').length > 0) {
$.getJSON('json/expense-accounts').done(function (data) { $.getJSON('json/expense-accounts').done(function (data) {
$('input[name="destination_account_name"]').typeahead({source: data, autoSelect: false}); $('input[name="destination_name"]').typeahead({source: data, autoSelect: false});
}); });
} }
if ($('input[name="source_account_name"]').length > 0) { if ($('input[name="source_name"]').length > 0) {
$.getJSON('json/revenue-accounts').done(function (data) { $.getJSON('json/revenue-accounts').done(function (data) {
$('input[name="source_account_name"]').typeahead({source: data, autoSelect: false}); $('input[name="source_name"]').typeahead({source: data, autoSelect: false});
}); });
} }
@ -160,8 +160,8 @@ function updateNativeAmount(data) {
* Instructions for transfers * Instructions for transfers
*/ */
function getTransferExchangeInstructions() { function getTransferExchangeInstructions() {
var sourceAccount = $('select[name="source_account_id"]').val(); var sourceAccount = $('select[name="source_id"]').val();
var destAccount = $('select[name="destination_account_id"]').val(); var destAccount = $('select[name="destination_id"]').val();
var sourceCurrency = accountInfo[sourceAccount].preferredCurrency; var sourceCurrency = accountInfo[sourceAccount].preferredCurrency;
var destinationCurrency = accountInfo[destAccount].preferredCurrency; var destinationCurrency = accountInfo[destAccount].preferredCurrency;
@ -180,8 +180,8 @@ function validateCurrencyForTransfer() {
return; return;
} }
$('#source_amount_holder').show(); $('#source_amount_holder').show();
var sourceAccount = $('select[name="source_account_id"]').val(); var sourceAccount = $('select[name="source_id"]').val();
var destAccount = $('select[name="destination_account_id"]').val(); var destAccount = $('select[name="destination_id"]').val();
var sourceCurrency = accountInfo[sourceAccount].preferredCurrency; var sourceCurrency = accountInfo[sourceAccount].preferredCurrency;
var sourceSymbol = currencyInfo[sourceCurrency].symbol; var sourceSymbol = currencyInfo[sourceCurrency].symbol;
var destinationCurrency = accountInfo[destAccount].preferredCurrency; var destinationCurrency = accountInfo[destAccount].preferredCurrency;
@ -208,8 +208,8 @@ function validateCurrencyForTransfer() {
* *
*/ */
function convertSourceToDestination() { function convertSourceToDestination() {
var sourceAccount = $('select[name="source_account_id"]').val(); var sourceAccount = $('select[name="source_id"]').val();
var destAccount = $('select[name="destination_account_id"]').val(); var destAccount = $('select[name="destination_id"]').val();
var sourceCurrency = accountInfo[sourceAccount].preferredCurrency; var sourceCurrency = accountInfo[sourceAccount].preferredCurrency;
var destinationCurrency = accountInfo[destAccount].preferredCurrency; var destinationCurrency = accountInfo[destAccount].preferredCurrency;

View File

@ -38,20 +38,17 @@ $(document).ready(function () {
// when user changes source account or destination, native currency may be different. // when user changes source account or destination, native currency may be different.
$('select[name="source_account_id"]').on('change', function() { $('select[name="source_id"]').on('change', function() {
selectsDifferentSource(); selectsDifferentSource();
// do something for transfers: // do something for transfers:
validateCurrencyForTransfer(); validateCurrencyForTransfer();
}); });
$('select[name="destination_account_id"]').on('change', function() { $('select[name="destination_id"]').on('change', function() {
selectsDifferentDestination(); selectsDifferentDestination();
// do something for transfers: // do something for transfers:
validateCurrencyForTransfer(); validateCurrencyForTransfer();
}); });
//$('select[name="source_account_id"]').on('change', updateNativeCurrency);
//$('select[name="destination_account_id"]').on('change', updateNativeCurrency);
// convert foreign currency to native currency (when input changes, exchange rate) // convert foreign currency to native currency (when input changes, exchange rate)
$('#ffInput_amount').on('change', convertForeignToNative); $('#ffInput_amount').on('change', convertForeignToNative);
@ -74,7 +71,7 @@ function selectsDifferentSource() {
return; return;
} }
// store original currency ID of the selected account in a separate var: // store original currency ID of the selected account in a separate var:
var sourceId = $('select[name="source_account_id"]').val(); var sourceId = $('select[name="source_id"]').val();
var sourceCurrency = accountInfo[sourceId].preferredCurrency; var sourceCurrency = accountInfo[sourceId].preferredCurrency;
$('input[name="source_account_currency"]').val(sourceCurrency); $('input[name="source_account_currency"]').val(sourceCurrency);
console.log('selectsDifferenctSource(): Set source account currency to ' + sourceCurrency); console.log('selectsDifferenctSource(): Set source account currency to ' + sourceCurrency);
@ -82,7 +79,7 @@ function selectsDifferentSource() {
// change input thing: // change input thing:
$('.currency-option[data-id="' + sourceCurrency + '"]').click(); $('.currency-option[data-id="' + sourceCurrency + '"]').click();
$('[data-toggle="dropdown"]').parent().removeClass('open'); $('[data-toggle="dropdown"]').parent().removeClass('open');
$('select[name="source_account_id"]').focus(); $('select[name="source_id"]').focus();
} }
/** /**
@ -96,7 +93,7 @@ function selectsDifferentDestination() {
return; return;
} }
// store original currency ID of the selected account in a separate var: // store original currency ID of the selected account in a separate var:
var destinationId = $('select[name="destination_account_id"]').val(); var destinationId = $('select[name="destination_id"]').val();
var destinationCurrency = accountInfo[destinationId].preferredCurrency; var destinationCurrency = accountInfo[destinationId].preferredCurrency;
$('input[name="destination_account_currency"]').val(destinationCurrency); $('input[name="destination_account_currency"]').val(destinationCurrency);
console.log('selectsDifferentDestination(): Set destinationId account currency to ' + destinationCurrency); console.log('selectsDifferentDestination(): Set destinationId account currency to ' + destinationCurrency);
@ -104,7 +101,7 @@ function selectsDifferentDestination() {
// change input thing: // change input thing:
$('.currency-option[data-id="' + destinationCurrency + '"]').click(); $('.currency-option[data-id="' + destinationCurrency + '"]').click();
$('[data-toggle="dropdown"]').parent().removeClass('open'); $('[data-toggle="dropdown"]').parent().removeClass('open');
$('select[name="destination_account_id"]').focus(); $('select[name="destination_id"]').focus();
} }
@ -153,19 +150,19 @@ function updateForm() {
$('input[name="what"]').val(what); $('input[name="what"]').val(what);
var destName = $('#ffInput_destination_account_name'); var destName = $('#ffInput_destination_name');
var srcName = $('#ffInput_source_account_name'); var srcName = $('#ffInput_source_name');
switch (what) { switch (what) {
case 'withdrawal': case 'withdrawal':
// show source_id and dest_name // show source_id and dest_name
document.getElementById('source_account_id_holder').style.display = 'block'; document.getElementById('source_id_holder').style.display = 'block';
document.getElementById('destination_account_name_holder').style.display = 'block'; document.getElementById('destination_name_holder').style.display = 'block';
// hide others: // hide others:
document.getElementById('source_account_name_holder').style.display = 'none'; document.getElementById('source_name_holder').style.display = 'none';
document.getElementById('destination_account_id_holder').style.display = 'none'; document.getElementById('destination_id_holder').style.display = 'none';
document.getElementById('budget_id_holder').style.display = 'block'; document.getElementById('budget_id_holder').style.display = 'block';
// hide piggy bank: // hide piggy bank:
@ -185,12 +182,12 @@ function updateForm() {
break; break;
case 'deposit': case 'deposit':
// show source_name and dest_id: // show source_name and dest_id:
document.getElementById('source_account_name_holder').style.display = 'block'; document.getElementById('source_name_holder').style.display = 'block';
document.getElementById('destination_account_id_holder').style.display = 'block'; document.getElementById('destination_id_holder').style.display = 'block';
// hide others: // hide others:
document.getElementById('source_account_id_holder').style.display = 'none'; document.getElementById('source_id_holder').style.display = 'none';
document.getElementById('destination_account_name_holder').style.display = 'none'; document.getElementById('destination_name_holder').style.display = 'none';
// hide budget // hide budget
document.getElementById('budget_id_holder').style.display = 'none'; document.getElementById('budget_id_holder').style.display = 'none';
@ -212,12 +209,12 @@ function updateForm() {
break; break;
case 'transfer': case 'transfer':
// show source_id and dest_id: // show source_id and dest_id:
document.getElementById('source_account_id_holder').style.display = 'block'; document.getElementById('source_id_holder').style.display = 'block';
document.getElementById('destination_account_id_holder').style.display = 'block'; document.getElementById('destination_id_holder').style.display = 'block';
// hide others: // hide others:
document.getElementById('source_account_name_holder').style.display = 'none'; document.getElementById('source_name_holder').style.display = 'none';
document.getElementById('destination_account_name_holder').style.display = 'none'; document.getElementById('destination_name_holder').style.display = 'none';
// hide budget // hide budget
document.getElementById('budget_id_holder').style.display = 'none'; document.getElementById('budget_id_holder').style.display = 'none';
@ -288,10 +285,10 @@ function clickButton(e) {
*/ */
function getAccountId() { function getAccountId() {
if (what === "withdrawal") { if (what === "withdrawal") {
return $('select[name="source_account_id"]').val(); return $('select[name="source_id"]').val();
} }
if (what === "deposit" || what === "transfer") { if (what === "deposit" || what === "transfer") {
return $('select[name="destination_account_id"]').val(); return $('select[name="destination_id"]').val();
} }
return undefined; return undefined;
} }

View File

@ -38,12 +38,12 @@ $(document).ready(function () {
$('#ffInput_amount').on('change', convertForeignToNative); $('#ffInput_amount').on('change', convertForeignToNative);
// respond to transfer changes: // respond to transfer changes:
$('#ffInput_source_account_id').on('change', function () { $('#ffInput_source_id').on('change', function () {
validateCurrencyForTransfer(); validateCurrencyForTransfer();
// update the two source account currency ID fields (initial value): // update the two source account currency ID fields (initial value):
initCurrencyIdValues(); initCurrencyIdValues();
}); });
$('#ffInput_destination_account_id').on('change', function () { $('#ffInput_destination_id').on('change', function () {
validateCurrencyForTransfer(); validateCurrencyForTransfer();
// update the two source account currency ID fields (initial value): // update the two source account currency ID fields (initial value):
initCurrencyIdValues(); initCurrencyIdValues();
@ -77,9 +77,9 @@ function initCurrencyIdValues() {
$('input[name="destination_account_currency"]').val(currencyId); $('input[name="destination_account_currency"]').val(currencyId);
return; return;
} }
var sourceAccount = $('select[name="source_account_id"]').val(); var sourceAccount = $('select[name="source_id"]').val();
console.log('Source account is ' + sourceAccount); console.log('Source account is ' + sourceAccount);
var destAccount = $('select[name="destination_account_id"]').val(); var destAccount = $('select[name="destination_id"]').val();
console.log('Destination account is ' + destAccount); console.log('Destination account is ' + destAccount);
var sourceCurrency = parseInt(accountInfo[sourceAccount].preferredCurrency); var sourceCurrency = parseInt(accountInfo[sourceAccount].preferredCurrency);
@ -134,10 +134,10 @@ function updateInitialPage() {
function getAccountId() { function getAccountId() {
console.log('in getAccountId()'); console.log('in getAccountId()');
if (journal.transaction_type.type === "Withdrawal") { if (journal.transaction_type.type === "Withdrawal") {
return $('select[name="source_account_id"]').val(); return $('select[name="source_id"]').val();
} }
if (journal.transaction_type.type === "Deposit") { if (journal.transaction_type.type === "Deposit") {
return $('select[name="destination_account_id"]').val(); return $('select[name="destination_id"]').val();
} }
alert('Cannot handle ' + journal.transaction_type.type); alert('Cannot handle ' + journal.transaction_type.type);

View File

@ -191,12 +191,12 @@ function resetDivSplits() {
var input = $(v); var input = $(v);
input.attr('name', 'transactions[' + i + '][transaction_description]'); input.attr('name', 'transactions[' + i + '][transaction_description]');
}); });
// ends with ][destination_account_name] // ends with ][destination_name]
$.each($('input[name$="][destination_name]"]'), function (i, v) { $.each($('input[name$="][destination_name]"]'), function (i, v) {
var input = $(v); var input = $(v);
input.attr('name', 'transactions[' + i + '][destination_name]'); input.attr('name', 'transactions[' + i + '][destination_name]');
}); });
// ends with ][source_account_name] // ends with ][source_name]
$.each($('input[name$="][source_name]"]'), function (i, v) { $.each($('input[name$="][source_name]"]'), function (i, v) {
var input = $(v); var input = $(v);
input.attr('name', 'transactions[' + i + '][source_name]'); input.attr('name', 'transactions[' + i + '][source_name]');

View File

@ -70,7 +70,7 @@
<td> <td>
{# SOURCE ACCOUNT ID FOR TRANSFER OR WITHDRAWAL #} {# SOURCE ACCOUNT ID FOR TRANSFER OR WITHDRAWAL #}
{% if transaction.type == 'Transfer' or transaction.type == 'Withdrawal' %} {% if transaction.type == 'Transfer' or transaction.type == 'Withdrawal' %}
<select class="form-control input-sm" name="source_account_id[{{ transaction.journal_id }}]"> <select class="form-control input-sm" name="source_id[{{ transaction.journal_id }}]">
{% for account in accounts %} {% for account in accounts %}
<!-- {{ transaction.type }}: {{ transaction.source_name }} --> <!-- {{ transaction.type }}: {{ transaction.source_name }} -->
<option value="{{ account.id }}"{% if account.id == transaction.source_id %} selected{% endif %} label="{{ account.name }}">{{ account.name }}</option> <option value="{{ account.id }}"{% if account.id == transaction.source_id %} selected{% endif %} label="{{ account.name }}">{{ account.name }}</option>
@ -79,13 +79,13 @@
{% else %} {% else %}
{# SOURCE ACCOUNT NAME FOR DEPOSIT #} {# SOURCE ACCOUNT NAME FOR DEPOSIT #}
<input class="form-control input-sm" placeholder="{% if transaction.source_type != 'Cash account' %}{{ transaction.source_name }}{% endif %}" autocomplete="off" <input class="form-control input-sm" placeholder="{% if transaction.source_type != 'Cash account' %}{{ transaction.source_name }}{% endif %}" autocomplete="off"
name="source_account_name[{{ transaction.journal_id }}]" type="text" value="{% if transaction.source_type != 'Cash account' %}{{ transaction.source_name }}{% endif %}"> name="source_name[{{ transaction.journal_id }}]" type="text" value="{% if transaction.source_type != 'Cash account' %}{{ transaction.source_name }}{% endif %}">
{% endif %} {% endif %}
</td> </td>
<td> <td>
{% if transaction.type == 'Transfer' or transaction.type == 'Deposit' %} {% if transaction.type == 'Transfer' or transaction.type == 'Deposit' %}
{# DESTINATION ACCOUNT NAME FOR TRANSFER AND DEPOSIT #} {# DESTINATION ACCOUNT NAME FOR TRANSFER AND DEPOSIT #}
<select class="form-control input-sm" name="destination_account_id[{{ transaction.journal_id }}]"> <select class="form-control input-sm" name="destination_id[{{ transaction.journal_id }}]">
{% for account in accounts %} {% for account in accounts %}
<option value="{{ account.id }}"{% if account.id == transaction.destination_id %} selected="selected"{% endif %} <option value="{{ account.id }}"{% if account.id == transaction.destination_id %} selected="selected"{% endif %}
label="{{ account.name }}">{{ account.name }}</option> label="{{ account.name }}">{{ account.name }}</option>
@ -95,7 +95,7 @@
{# DESTINATION ACCOUNT NAME FOR EXPENSE #} {# DESTINATION ACCOUNT NAME FOR EXPENSE #}
<input class="form-control input-sm" placeholder="{% if transaction.destination_type != 'Cash account' %}{{ transaction.destination_name }}{% endif %}" <input class="form-control input-sm" placeholder="{% if transaction.destination_type != 'Cash account' %}{{ transaction.destination_name }}{% endif %}"
name="destination_account_name[{{ transaction.journal_id }}]" type="text" autocomplete="off" name="destination_name[{{ transaction.journal_id }}]" type="text" autocomplete="off"
value="{% if transaction.destination_type != 'Cash account' %}{{ transaction.destination_name }}{% endif %}"> value="{% if transaction.destination_type != 'Cash account' %}{{ transaction.destination_name }}{% endif %}">
{% endif %} {% endif %}
</td> </td>

View File

@ -33,16 +33,16 @@
{{ ExpandedForm.text('description') }} {{ ExpandedForm.text('description') }}
{# SELECTABLE SOURCE ACCOUNT ONLY FOR WITHDRAWALS AND TRANSFERS #} {# SELECTABLE SOURCE ACCOUNT ONLY FOR WITHDRAWALS AND TRANSFERS #}
{{ ExpandedForm.activeAssetAccountList('source_account_id', null, {label: trans('form.asset_source_account')}) }} {{ ExpandedForm.activeAssetAccountList('source_id', null, {label: trans('form.asset_source_account')}) }}
{# FREE FORMAT SOURCE ACCOUNT ONLY FOR DEPOSITS #} {# FREE FORMAT SOURCE ACCOUNT ONLY FOR DEPOSITS #}
{{ ExpandedForm.text('source_account_name', null, {label: trans('form.revenue_account')}) }} {{ ExpandedForm.text('source_name', null, {label: trans('form.revenue_account')}) }}
{# FREE FORMAT DESTINATION ACCOUNT ONLY FOR EXPENSES #} {# FREE FORMAT DESTINATION ACCOUNT ONLY FOR EXPENSES #}
{{ ExpandedForm.text('destination_account_name', null, {label: trans('form.expense_account')}) }} {{ ExpandedForm.text('destination_name', null, {label: trans('form.expense_account')}) }}
{# SELECTABLE DESTINATION ACCOUNT ONLY FOR TRANSFERS AND DEPOSITS #} {# SELECTABLE DESTINATION ACCOUNT ONLY FOR TRANSFERS AND DEPOSITS #}
{{ ExpandedForm.activeAssetAccountList('destination_account_id', null, {label: trans('form.asset_destination_account')} ) }} {{ ExpandedForm.activeAssetAccountList('destination_id', null, {label: trans('form.asset_destination_account')} ) }}
{# ALWAYS SHOW AMOUNT #} {# ALWAYS SHOW AMOUNT #}
{{ ExpandedForm.amount('amount') }} {{ ExpandedForm.amount('amount') }}

View File

@ -39,22 +39,22 @@
{# SELECTABLE SOURCE ACCOUNT ONLY FOR WITHDRAWALS AND TRANSFERS #} {# SELECTABLE SOURCE ACCOUNT ONLY FOR WITHDRAWALS AND TRANSFERS #}
{% if what == 'transfer' or what == 'withdrawal' %} {% if what == 'transfer' or what == 'withdrawal' %}
{{ ExpandedForm.assetAccountList('source_account_id', data.source_account_id, {label: trans('form.asset_source_account')}) }} {{ ExpandedForm.assetAccountList('source_id', data.source_id, {label: trans('form.asset_source_account')}) }}
{% endif %} {% endif %}
{# FREE FORMAT SOURCE ACCOUNT ONLY FOR DEPOSITS #} {# FREE FORMAT SOURCE ACCOUNT ONLY FOR DEPOSITS #}
{% if what == 'deposit' %} {% if what == 'deposit' %}
{{ ExpandedForm.text('source_account_name',data.source_account_name, {label: trans('form.revenue_account')}) }} {{ ExpandedForm.text('source_name',data.source_name, {label: trans('form.revenue_account')}) }}
{% endif %} {% endif %}
{# FREE FORMAT DESTINATION ACCOUNT ONLY FOR EXPENSES #} {# FREE FORMAT DESTINATION ACCOUNT ONLY FOR EXPENSES #}
{% if what == 'withdrawal' %} {% if what == 'withdrawal' %}
{{ ExpandedForm.text('destination_account_name',data.destination_account_name, {label: trans('form.expense_account')}) }} {{ ExpandedForm.text('destination_name',data.destination_name, {label: trans('form.expense_account')}) }}
{% endif %} {% endif %}
{# SELECTABLE DESTINATION ACCOUNT ONLY FOR TRANSFERS AND DEPOSITS #} {# SELECTABLE DESTINATION ACCOUNT ONLY FOR TRANSFERS AND DEPOSITS #}
{% if what == 'transfer' or what == 'deposit' %} {% if what == 'transfer' or what == 'deposit' %}
{{ ExpandedForm.assetAccountList('destination_account_id', data.destination_account_id, {label: trans('form.asset_destination_account')} ) }} {{ ExpandedForm.assetAccountList('destination_id', data.destination_id, {label: trans('form.asset_destination_account')} ) }}
{% endif %} {% endif %}
{# ALWAYS SHOW AMOUNT #} {# ALWAYS SHOW AMOUNT #}

View File

@ -42,12 +42,12 @@
{# show source if withdrawal or transfer #} {# show source if withdrawal or transfer #}
{% if preFilled.what == 'withdrawal' or preFilled.what == 'transfer' %} {% if preFilled.what == 'withdrawal' or preFilled.what == 'transfer' %}
{{ ExpandedForm.activeAssetAccountList('journal_source_account_id', preFilled.journal_source_account_id) }} {{ ExpandedForm.activeAssetAccountList('journal_source_id', preFilled.journal_source_id) }}
{% endif %} {% endif %}
{# show destination account id, if deposit (is asset): #} {# show destination account id, if deposit (is asset): #}
{% if preFilled.what == 'deposit' or preFilled.what == 'transfer' %} {% if preFilled.what == 'deposit' or preFilled.what == 'transfer' %}
{{ ExpandedForm.activeAssetAccountList('journal_destination_account_id', preFilled.journal_destination_account_id) }} {{ ExpandedForm.activeAssetAccountList('journal_destination_id', preFilled.journal_destination_id) }}
{% endif %} {% endif %}
{# show amount and some helper text when making splits: #} {# show amount and some helper text when making splits: #}

View File

@ -200,8 +200,8 @@ class MassControllerTest extends TestCase
'amount' => [$deposit->id => 1600], 'amount' => [$deposit->id => 1600],
'amount_currency_id_amount_' . $deposit->id => 1, 'amount_currency_id_amount_' . $deposit->id => 1,
'date' => [$deposit->id => '2014-07-24'], 'date' => [$deposit->id => '2014-07-24'],
'source_account_name' => [$deposit->id => 'Job'], 'source_name' => [$deposit->id => 'Job'],
'destination_account_id' => [$deposit->id => 1], 'destination_id' => [$deposit->id => 1],
'category' => [$deposit->id => 'Salary'], 'category' => [$deposit->id => 'Salary'],
]; ];

View File

@ -306,7 +306,7 @@ class SingleControllerTest extends TestCase
$response->assertStatus(200); $response->assertStatus(200);
// has bread crumb // has bread crumb
$response->assertSee('<ol class="breadcrumb">'); $response->assertSee('<ol class="breadcrumb">');
$response->assertSee(' name="source_account_name" type="text" value="">'); $response->assertSee(' name="source_name" type="text" value="">');
} }
/** /**
@ -352,7 +352,7 @@ class SingleControllerTest extends TestCase
$response->assertStatus(200); $response->assertStatus(200);
// has bread crumb // has bread crumb
$response->assertSee('<ol class="breadcrumb">'); $response->assertSee('<ol class="breadcrumb">');
$response->assertSee(' name="destination_account_name" type="text" value="">'); $response->assertSee(' name="destinationt_name" type="text" value="">');
} }
/** /**
@ -592,8 +592,8 @@ class SingleControllerTest extends TestCase
'what' => 'withdrawal', 'what' => 'withdrawal',
'amount' => '10', 'amount' => '10',
'amount_currency_id_amount' => 1, 'amount_currency_id_amount' => 1,
'source_account_id' => 1, 'source_id' => 1,
'destination_account_name' => 'Some destination', 'destination_name' => 'Some destination',
'date' => '2016-01-01', 'date' => '2016-01-01',
'description' => 'Test descr', 'description' => 'Test descr',
]; ];
@ -645,8 +645,8 @@ class SingleControllerTest extends TestCase
'what' => 'withdrawal', 'what' => 'withdrawal',
'amount' => '10', 'amount' => '10',
'amount_currency_id_amount' => 1, 'amount_currency_id_amount' => 1,
'source_account_id' => 1, 'source_id' => 1,
'destination_account_name' => 'Some destination', 'destination_name' => 'Some destination',
'date' => '2016-01-01', 'date' => '2016-01-01',
'description' => 'Test descr', 'description' => 'Test descr',
]; ];
@ -700,8 +700,8 @@ class SingleControllerTest extends TestCase
'what' => 'deposit', 'what' => 'deposit',
'amount' => '10', 'amount' => '10',
'amount_currency_id_amount' => 1, 'amount_currency_id_amount' => 1,
'destination_account_id' => 1, 'destination_id' => 1,
'source_account_name' => 'Some source', 'source_name' => 'Some source',
'date' => '2016-01-01', 'date' => '2016-01-01',
'description' => 'Test descr', 'description' => 'Test descr',
]; ];
@ -756,8 +756,8 @@ class SingleControllerTest extends TestCase
'what' => 'transfer', 'what' => 'transfer',
'amount' => '10', 'amount' => '10',
'amount_currency_id_amount' => 1, 'amount_currency_id_amount' => 1,
'destination_account_id' => 1, 'destination_id' => 1,
'source_account_id' => 2, 'source_id' => 2,
'date' => '2016-01-01', 'date' => '2016-01-01',
'description' => 'Test descr', 'description' => 'Test descr',
]; ];
@ -814,8 +814,8 @@ class SingleControllerTest extends TestCase
'amount_currency_id_amount' => 1, 'amount_currency_id_amount' => 1,
'source_account_currency' => 1, 'source_account_currency' => 1,
'destination_account_currency' => 2, 'destination_account_currency' => 2,
'destination_account_id' => 1, 'destination_id' => 1,
'source_account_id' => 2, 'source_id' => 2,
'date' => '2016-01-01', 'date' => '2016-01-01',
'description' => 'Test descr', 'description' => 'Test descr',
]; ];
@ -872,8 +872,8 @@ class SingleControllerTest extends TestCase
'id' => 123, 'id' => 123,
'what' => 'withdrawal', 'what' => 'withdrawal',
'description' => 'Updated groceries', 'description' => 'Updated groceries',
'source_account_id' => 1, 'source_id' => 1,
'destination_account_name' => 'PLUS', 'destination_name' => 'PLUS',
'amount' => '123', 'amount' => '123',
'amount_currency_id_amount' => 1, 'amount_currency_id_amount' => 1,
'budget_id' => 1, 'budget_id' => 1,

View File

@ -296,7 +296,7 @@ class SplitControllerTest extends TestCase
'what' => 'deposit', 'what' => 'deposit',
'journal_description' => 'Updated salary', 'journal_description' => 'Updated salary',
'journal_currency_id' => 1, 'journal_currency_id' => 1,
'journal_destination_account_id' => 1, 'journal_destination_id' => 1,
'journal_amount' => 1591, 'journal_amount' => 1591,
'date' => '2014-01-24', 'date' => '2014-01-24',
'tags' => '', 'tags' => '',
@ -346,7 +346,7 @@ class SplitControllerTest extends TestCase
'what' => 'opening balance', 'what' => 'opening balance',
'journal_description' => 'Updated salary', 'journal_description' => 'Updated salary',
'journal_currency_id' => 1, 'journal_currency_id' => 1,
'journal_destination_account_id' => 1, 'journal_destination_id' => 1,
'journal_amount' => 1591, 'journal_amount' => 1591,
'date' => '2014-01-24', 'date' => '2014-01-24',
'tags' => '', 'tags' => '',
@ -394,14 +394,14 @@ class SplitControllerTest extends TestCase
'what' => 'transfer', 'what' => 'transfer',
'journal_description' => 'Some updated withdrawal', 'journal_description' => 'Some updated withdrawal',
'journal_currency_id' => 1, 'journal_currency_id' => 1,
'journal_source_account_id' => 1, 'journal_source_id' => 1,
'journal_amount' => 1591, 'journal_amount' => 1591,
'date' => '2014-01-24', 'date' => '2014-01-24',
'tags' => '', 'tags' => '',
'transactions' => [ 'transactions' => [
[ [
'transaction_description' => 'Split #1', 'transaction_description' => 'Split #1',
'source_account_id' => '1', 'source_id' => '1',
'destination_id' => '2', 'destination_id' => '2',
'transaction_currency_id' => 1, 'transaction_currency_id' => 1,
'amount' => 1591, 'amount' => 1591,
@ -450,7 +450,7 @@ class SplitControllerTest extends TestCase
'what' => 'withdrawal', 'what' => 'withdrawal',
'journal_description' => 'Some updated withdrawal', 'journal_description' => 'Some updated withdrawal',
'journal_currency_id' => 1, 'journal_currency_id' => 1,
'journal_source_account_id' => 1, 'journal_source_id' => 1,
'journal_amount' => 1591, 'journal_amount' => 1591,
'date' => '2014-01-24', 'date' => '2014-01-24',
'tags' => '', 'tags' => '',