mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-02-25 18:45:27 -06:00
Fixed validation rules.
This commit is contained in:
parent
4f934e54cf
commit
262f8a33c6
@ -48,7 +48,6 @@ class RegisterController extends Controller
|
||||
protected function validator(array $data)
|
||||
{
|
||||
return Validator::make($data, [
|
||||
'name' => 'required|string|max:255',
|
||||
'email' => 'required|string|email|max:255|unique:users',
|
||||
'password' => 'required|string|min:6|confirmed',
|
||||
]);
|
||||
@ -63,7 +62,6 @@ class RegisterController extends Controller
|
||||
protected function create(array $data)
|
||||
{
|
||||
return User::create([
|
||||
'name' => $data['name'],
|
||||
'email' => $data['email'],
|
||||
'password' => bcrypt($data['password']),
|
||||
]);
|
||||
|
@ -75,13 +75,13 @@ class AccountFormRequest extends Request
|
||||
return [
|
||||
'id' => $idRule,
|
||||
'name' => $nameRule,
|
||||
'openingBalance' => 'numeric|required_with:openingBalanceDate',
|
||||
'openingBalanceDate' => 'date|required_with:openingBalance',
|
||||
'iban' => 'iban',
|
||||
'BIC' => 'bic',
|
||||
'virtualBalance' => 'numeric',
|
||||
'openingBalance' => 'numeric|required_with:openingBalanceDate|nullable',
|
||||
'openingBalanceDate' => 'date|required_with:openingBalance|nullable',
|
||||
'iban' => 'iban|nullable',
|
||||
'BIC' => 'bic|nullable',
|
||||
'virtualBalance' => 'numeric|nullable',
|
||||
'currency_id' => 'exists:transaction_currencies,id',
|
||||
'accountNumber' => 'between:1,255|uniqueAccountNumberForUser',
|
||||
'accountNumber' => 'between:1,255|uniqueAccountNumberForUser|nullable',
|
||||
'accountRole' => 'in:' . $accountRoles,
|
||||
'active' => 'boolean',
|
||||
'ccType' => 'in:' . $ccPaymentTypes,
|
||||
|
@ -47,7 +47,7 @@ class AttachmentFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
|
||||
// fixed
|
||||
return [
|
||||
'title' => 'between:1,255|nullable',
|
||||
'description' => 'between:1,65536|nullable',
|
||||
|
@ -61,7 +61,7 @@ class BillFormRequest extends Request
|
||||
$nameRule .= ',' . intval($this->get('id'));
|
||||
$matchRule .= ',' . intval($this->get('id'));
|
||||
}
|
||||
|
||||
// is OK
|
||||
$rules = [
|
||||
'name' => $nameRule,
|
||||
'match' => $matchRule,
|
||||
|
@ -47,6 +47,7 @@ class BudgetFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
/** @var BudgetRepositoryInterface $repository */
|
||||
$repository = app(BudgetRepositoryInterface::class);
|
||||
$nameRule = 'required|between:1,100|uniqueObjectForUser:budgets,name';
|
||||
|
@ -35,6 +35,7 @@ class BudgetIncomeRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'amount' => 'numeric|required|min:0',
|
||||
'start' => 'required|date|before:end',
|
||||
|
@ -53,7 +53,7 @@ class CategoryFormRequest extends Request
|
||||
if (!is_null($repository->find(intval($this->get('id')))->id)) {
|
||||
$nameRule = 'required|between:1,100|uniqueObjectForUser:categories,name,' . intval($this->get('id'));
|
||||
}
|
||||
|
||||
// fixed
|
||||
return [
|
||||
'name' => $nameRule,
|
||||
];
|
||||
|
@ -46,6 +46,7 @@ class ConfigurationRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
$rules = [
|
||||
'single_user_mode' => 'between:0,1|numeric',
|
||||
'is_demo_site' => 'between:0,1|numeric',
|
||||
|
@ -48,7 +48,7 @@ class CurrencyFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
|
||||
// fixed
|
||||
$rules = [
|
||||
'name' => 'required|max:48|min:1|unique:transaction_currencies,name',
|
||||
'code' => 'required|min:3|max:3|unique:transaction_currencies,code',
|
||||
|
@ -35,6 +35,7 @@ class DeleteAccountFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'password' => 'required',
|
||||
];
|
||||
|
@ -42,6 +42,8 @@ class ExportFormRequest extends Request
|
||||
$today = Carbon::create()->addDay()->format('Y-m-d');
|
||||
$formats = join(',', array_keys(config('firefly.export_formats')));
|
||||
|
||||
// fixed
|
||||
|
||||
return [
|
||||
'export_start_range' => 'required|date|after:' . $first,
|
||||
'export_end_range' => 'required|date|before:' . $today,
|
||||
|
@ -35,6 +35,7 @@ class ImportUploadRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
$types = array_keys(config('firefly.import_formats'));
|
||||
|
||||
return [
|
||||
|
@ -88,24 +88,24 @@ class JournalFormRequest extends Request
|
||||
'date' => 'required|date',
|
||||
|
||||
// then, custom fields:
|
||||
'interest_date' => 'date',
|
||||
'book_date' => 'date',
|
||||
'process_date' => 'date',
|
||||
'due_date' => 'date',
|
||||
'payment_date' => 'date',
|
||||
'invoice_date' => 'date',
|
||||
'internal_reference' => 'min:1,max:255',
|
||||
'notes' => 'min:1,max:50000',
|
||||
'interest_date' => 'date|nullable',
|
||||
'book_date' => 'date|nullable',
|
||||
'process_date' => 'date|nullable',
|
||||
'due_date' => 'date|nullable',
|
||||
'payment_date' => 'date|nullable',
|
||||
'invoice_date' => 'date|nullable',
|
||||
'internal_reference' => 'min:1,max:255|nullable',
|
||||
'notes' => 'min:1,max:50000|nullable',
|
||||
// and then transaction rules:
|
||||
'description' => 'required|between:1,255',
|
||||
'amount' => 'numeric|required|more:0',
|
||||
'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id',
|
||||
'category' => 'between:1,255',
|
||||
'source_account_id' => 'numeric|belongsToUser:accounts,id',
|
||||
'source_account_name' => 'between:1,255',
|
||||
'destination_account_id' => 'numeric|belongsToUser:accounts,id',
|
||||
'destination_account_name' => 'between:1,255',
|
||||
'piggy_bank_id' => 'between:1,255',
|
||||
'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id|nullable',
|
||||
'category' => 'between:1,255|nullable',
|
||||
'source_account_id' => 'numeric|belongsToUser:accounts,id|nullable',
|
||||
'source_account_name' => 'between:1,255|nullable',
|
||||
'destination_account_id' => 'numeric|belongsToUser:accounts,id|nullable',
|
||||
'destination_account_name' => 'between:1,255|nullable',
|
||||
'piggy_bank_id' => 'between:1,255|nullable',
|
||||
|
||||
// foreign currency amounts
|
||||
'native_amount' => 'numeric|more:0|nullable',
|
||||
@ -133,10 +133,10 @@ class JournalFormRequest extends Request
|
||||
switch ($what) {
|
||||
case strtolower(TransactionType::WITHDRAWAL):
|
||||
$rules['source_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
|
||||
$rules['destination_account_name'] = 'between:1,255';
|
||||
$rules['destination_account_name'] = 'between:1,255|nullable';
|
||||
break;
|
||||
case strtolower(TransactionType::DEPOSIT):
|
||||
$rules['source_account_name'] = 'between:1,255';
|
||||
$rules['source_account_name'] = 'between:1,255|nullable';
|
||||
$rules['destination_account_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
|
||||
break;
|
||||
case strtolower(TransactionType::TRANSFER):
|
||||
|
@ -64,7 +64,7 @@ class JournalLinkRequest extends Request
|
||||
$combinations[] = sprintf('%d_outward', $type->id);
|
||||
}
|
||||
$string = join(',', $combinations);
|
||||
|
||||
// fixed
|
||||
return [
|
||||
'link_type' => sprintf('required|in:%s', $string),
|
||||
'link_other' => 'belongsToUser:transaction_journals',
|
||||
|
@ -36,6 +36,8 @@ class LinkTypeFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
|
||||
/** @var LinkTypeRepositoryInterface $repository */
|
||||
$repository = app(LinkTypeRepositoryInterface::class);
|
||||
$nameRule = 'required|min:1|unique:link_types,name';
|
||||
|
@ -35,6 +35,7 @@ class MassDeleteJournalRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'confirm_mass_delete.*' => 'required|belongsToUser:transaction_journals,id',
|
||||
];
|
||||
|
@ -35,6 +35,8 @@ class MassEditJournalRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
|
||||
return [
|
||||
'description.*' => 'required|min:1,max:255',
|
||||
'source_account_id.*' => 'numeric|belongsToUser:accounts,id',
|
||||
|
@ -35,6 +35,7 @@ class NewUserFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'bank_name' => 'required|between:1,200',
|
||||
'bank_balance' => 'required|numeric',
|
||||
|
@ -54,7 +54,6 @@ class PiggyBankFormRequest extends Request
|
||||
{
|
||||
|
||||
$nameRule = 'required|between:1,255|uniquePiggyBankForUser';
|
||||
$targetDateRule = 'date';
|
||||
if (intval($this->get('id'))) {
|
||||
$nameRule = 'required|between:1,255|uniquePiggyBankForUser:' . intval($this->get('id'));
|
||||
}
|
||||
@ -66,7 +65,7 @@ class PiggyBankFormRequest extends Request
|
||||
'targetamount' => 'required|numeric|more:0',
|
||||
'amount_currency_id_targetamount' => 'required|exists:transaction_currencies,id',
|
||||
'startdate' => 'date',
|
||||
'targetdate' => $targetDateRule,
|
||||
'targetdate' => 'date|nullable',
|
||||
'order' => 'integer|min:1',
|
||||
|
||||
];
|
||||
|
@ -35,6 +35,7 @@ class ProfileFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'current_password' => 'required',
|
||||
'new_password' => 'required|confirmed|secure_password',
|
||||
|
@ -44,6 +44,7 @@ class ReportFormRequest extends Request
|
||||
*/
|
||||
public function getAccountList(): Collection
|
||||
{
|
||||
// fixed
|
||||
/** @var AccountRepositoryInterface $repository */
|
||||
$repository = app(AccountRepositoryInterface::class);
|
||||
$set = $this->get('accounts');
|
||||
|
@ -72,7 +72,7 @@ class RuleFormRequest extends Request
|
||||
}
|
||||
$rules = [
|
||||
'title' => $titleRule,
|
||||
'description' => 'between:1,5000',
|
||||
'description' => 'between:1,5000|nullable',
|
||||
'stop_processing' => 'boolean',
|
||||
'rule_group_id' => 'required|belongsToUser:rule_groups',
|
||||
'trigger' => 'required|in:store-journal,update-journal',
|
||||
|
@ -48,6 +48,7 @@ class RuleGroupFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
/** @var RuleGroupRepositoryInterface $repository */
|
||||
$repository = app(RuleGroupRepositoryInterface::class);
|
||||
$titleRule = 'required|between:1,100|uniqueObjectForUser:rule_groups,title';
|
||||
|
@ -37,10 +37,10 @@ class SelectTransactionsRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
$sessionFirst = clone session('first');
|
||||
|
||||
$first = $sessionFirst->subDay()->format('Y-m-d');
|
||||
$today = Carbon::create()->addDay()->format('Y-m-d');
|
||||
$first = $sessionFirst->subDay()->format('Y-m-d');
|
||||
$today = Carbon::create()->addDay()->format('Y-m-d');
|
||||
|
||||
return [
|
||||
'start_date' => 'required|date|after:' . $first,
|
||||
|
@ -68,16 +68,16 @@ class SplitJournalFormRequest extends Request
|
||||
'journal_source_account_name.*' => 'between:1,255',
|
||||
'journal_currency_id' => 'required|exists:transaction_currencies,id',
|
||||
'date' => 'required|date',
|
||||
'interest_date' => 'date',
|
||||
'book_date' => 'date',
|
||||
'process_date' => 'date',
|
||||
'interest_date' => 'date|nullable',
|
||||
'book_date' => 'date|nullable',
|
||||
'process_date' => 'date|nullable',
|
||||
'transactions.*.description' => 'required|between:1,255',
|
||||
'transactions.*.destination_account_id' => 'numeric|belongsToUser:accounts,id',
|
||||
'transactions.*.destination_account_name' => 'between:1,255',
|
||||
'transactions.*.destination_account_name' => 'between:1,255|nullable',
|
||||
'transactions.*.amount' => 'required|numeric',
|
||||
'transactions.*.budget_id' => 'belongsToUser:budgets,id',
|
||||
'transactions.*.category' => 'between:1,255',
|
||||
'transactions.*.piggy_bank_id' => 'between:1,255',
|
||||
'transactions.*.category' => 'between:1,255|nullable',
|
||||
'transactions.*.piggy_bank_id' => 'between:1,255|nullable',
|
||||
];
|
||||
}
|
||||
|
||||
|
@ -77,11 +77,11 @@ class TagFormRequest extends Request
|
||||
return [
|
||||
'tag' => $tagRule,
|
||||
'id' => $idRule,
|
||||
'description' => 'min:1',
|
||||
'date' => 'date',
|
||||
'latitude' => 'numeric|min:-90|max:90',
|
||||
'longitude' => 'numeric|min:-90|max:90',
|
||||
'zoomLevel' => 'numeric|min:0|max:80',
|
||||
'description' => 'min:1|nullable',
|
||||
'date' => 'date|nullable',
|
||||
'latitude' => 'numeric|min:-90|max:90|nullable',
|
||||
'longitude' => 'numeric|min:-90|max:90|nullable',
|
||||
'zoomLevel' => 'numeric|min:0|max:80|nullable',
|
||||
];
|
||||
}
|
||||
}
|
||||
|
@ -35,7 +35,7 @@ class TestRuleFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
|
||||
// fixed
|
||||
$validTriggers = array_keys(config('firefly.rule-triggers'));
|
||||
$rules = [
|
||||
'rule-trigger.*' => 'required|min:1|in:' . join(',', $validTriggers),
|
||||
|
@ -35,7 +35,7 @@ class TokenFormRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
|
||||
// fixed
|
||||
$rules = [
|
||||
'code' => 'required|2faCode',
|
||||
];
|
||||
|
@ -52,7 +52,7 @@ class UserFormRequest extends Request
|
||||
'id' => 'required|exists:users,id',
|
||||
'email' => 'email|required',
|
||||
'password' => 'confirmed|secure_password',
|
||||
'blocked_code' => 'between:0,30',
|
||||
'blocked_code' => 'between:0,30|nullable',
|
||||
'blocked' => 'between:0,1|numeric',
|
||||
];
|
||||
}
|
||||
|
@ -33,6 +33,7 @@ class UserRegistrationRequest extends Request
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'email' => 'email|required',
|
||||
'password' => 'confirmed|secure_password',
|
||||
|
Loading…
Reference in New Issue
Block a user