Replace Laravel binder with own binder. This will save in queries and increase security.

This commit is contained in:
James Cole
2017-12-25 08:45:23 +01:00
parent 96ccce5db3
commit bf390b65d9
37 changed files with 1671 additions and 142 deletions

View File

@@ -83,21 +83,20 @@ class TransactionJournal extends Model
];
/**
* @param $value
* @param string $value
*
* @return mixed
*
* @throws NotFoundHttpException
* @return TransactionJournal
*/
public static function routeBinder($value)
public static function routeBinder(string $value): TransactionJournal
{
if (auth()->check()) {
$object = self::where('transaction_journals.id', $value)
->with('transactionType')
->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id')
->where('user_id', auth()->user()->id)->first(['transaction_journals.*']);
if (null !== $object) {
return $object;
$journalId = intval($value);
$journal = auth()->user()->transactionJournals()->where('transaction_journals.id', $journalId)
->with('transactionType')
->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id')
->first(['transaction_journals.*']);
if (!is_null($journal)) {
return $journal;
}
}
@@ -105,6 +104,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\MorphMany
*/
public function attachments()
@@ -113,6 +113,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function bill()
@@ -121,6 +122,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
public function budgets(): BelongsToMany
@@ -129,6 +131,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
public function categories(): BelongsToMany
@@ -137,6 +140,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param string $name
*
* @return bool
@@ -149,6 +153,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return HasMany
*/
public function destinationJournalLinks(): HasMany
@@ -157,6 +162,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param $value
*
* @return string
@@ -171,6 +177,7 @@ class TransactionJournal extends Model
}
/**
*
* @param string $name
*
* @return string
@@ -206,6 +213,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param string $name
*
* @return bool
@@ -216,6 +224,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return bool
*/
public function isDeposit(): bool
@@ -228,6 +237,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return bool
*/
public function isOpeningBalance(): bool
@@ -240,6 +250,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return bool
*/
public function isTransfer(): bool
@@ -252,6 +263,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return bool
*/
public function isWithdrawal(): bool
@@ -264,6 +276,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* Get all of the notes.
*/
public function notes()
@@ -272,6 +285,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\HasMany
*/
public function piggyBankEvents(): HasMany
@@ -280,6 +294,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* Save the model to the database.
*
* @param array $options
@@ -295,6 +310,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param EloquentBuilder $query
* @param Carbon $date
*
@@ -306,6 +322,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param EloquentBuilder $query
* @param Carbon $date
*
@@ -317,6 +334,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param EloquentBuilder $query
*/
public function scopeSortCorrectly(EloquentBuilder $query)
@@ -327,6 +345,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param EloquentBuilder $query
* @param array $types
*/
@@ -341,6 +360,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @param $value
*/
public function setDescriptionAttribute($value)
@@ -388,6 +408,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return HasMany
*/
public function sourceJournalLinks(): HasMany
@@ -396,6 +417,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
public function tags()
@@ -404,6 +426,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function transactionCurrency()
@@ -412,6 +435,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return HasMany
*/
public function transactionJournalMeta(): HasMany
@@ -420,6 +444,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function transactionType()
@@ -428,6 +453,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return HasMany
*/
public function transactions(): HasMany
@@ -436,6 +462,7 @@ class TransactionJournal extends Model
}
/**
* @codeCoverageIgnore
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
*/
public function user()