mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-05 04:03:26 +00:00
Clean up min/max sizes of requests.
This commit is contained in:
@@ -108,7 +108,7 @@ class AccountFormRequest extends FormRequest
|
||||
'BIC' => 'bic|nullable',
|
||||
'virtual_balance' => ['nullable', new IsValidAmount()],
|
||||
'currency_id' => 'exists:transaction_currencies,id',
|
||||
'account_number' => 'between:1,255|uniqueAccountNumberForUser|nullable',
|
||||
'account_number' => 'min:1|max:255|uniqueAccountNumberForUser|nullable',
|
||||
'account_role' => 'in:'.$accountRoles,
|
||||
'active' => 'boolean',
|
||||
'cc_type' => 'in:'.$ccPaymentTypes,
|
||||
|
@@ -53,7 +53,7 @@ class AttachmentFormRequest extends FormRequest
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'title' => 'between:1,255|nullable',
|
||||
'title' => 'min:1|max:255|nullable',
|
||||
'notes' => 'min:1|max:32768|nullable',
|
||||
];
|
||||
}
|
||||
|
@@ -64,7 +64,7 @@ class BillStoreRequest extends FormRequest
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'name' => 'required|between:1,255|uniqueObjectForUser:bills,name',
|
||||
'name' => 'required|min:1|max:255|uniqueObjectForUser:bills,name',
|
||||
'amount_min' => ['required', new IsValidPositiveAmount()],
|
||||
'amount_max' => ['required', new IsValidPositiveAmount()],
|
||||
'transaction_currency_id' => 'required|exists:transaction_currencies,id',
|
||||
|
@@ -68,7 +68,7 @@ class BillUpdateRequest extends FormRequest
|
||||
$bill = $this->route()->parameter('bill');
|
||||
|
||||
return [
|
||||
'name' => sprintf('required|between:1,255|uniqueObjectForUser:bills,name,%d', $bill->id),
|
||||
'name' => sprintf('required|min:1|max:255|uniqueObjectForUser:bills,name,%d', $bill->id),
|
||||
'amount_min' => ['required', new IsValidPositiveAmount()],
|
||||
'amount_max' => ['required', new IsValidPositiveAmount()],
|
||||
'transaction_currency_id' => 'required|exists:transaction_currencies,id',
|
||||
|
@@ -61,8 +61,8 @@ class BudgetFormStoreRequest extends FormRequest
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'name' => 'required|between:1,100|uniqueObjectForUser:budgets,name',
|
||||
'active' => 'numeric|between:0,1',
|
||||
'name' => 'required|min:1|max:255|uniqueObjectForUser:budgets,name',
|
||||
'active' => 'numeric|min:0|max:1',
|
||||
'auto_budget_type' => 'numeric|integer|gte:0|lte:3',
|
||||
'auto_budget_currency_id' => 'exists:transaction_currencies,id',
|
||||
'auto_budget_amount' => ['required_if:auto_budget_type,1', 'required_if:auto_budget_type,2', new IsValidPositiveAmount()],
|
||||
|
@@ -60,18 +60,18 @@ class BudgetFormUpdateRequest extends FormRequest
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
$nameRule = 'required|between:1,100|uniqueObjectForUser:budgets,name';
|
||||
$nameRule = 'required|min:1|max:255|uniqueObjectForUser:budgets,name';
|
||||
|
||||
/** @var null|Budget $budget */
|
||||
$budget = $this->route()->parameter('budget');
|
||||
|
||||
if (null !== $budget) {
|
||||
$nameRule = 'required|between:1,100|uniqueObjectForUser:budgets,name,'.$budget->id;
|
||||
$nameRule = 'required|min:1|max:255|uniqueObjectForUser:budgets,name,'.$budget->id;
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => $nameRule,
|
||||
'active' => 'numeric|between:0,1',
|
||||
'active' => 'numeric|min:0|max:1',
|
||||
'auto_budget_type' => 'numeric|integer|gte:0|lte:31',
|
||||
'auto_budget_currency_id' => 'exists:transaction_currencies,id',
|
||||
'auto_budget_amount' => ['required_if:auto_budget_type,1', 'required_if:auto_budget_type,2|numeric', new IsValidPositiveAmount()],
|
||||
|
@@ -52,13 +52,13 @@ class CategoryFormRequest extends FormRequest
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
$nameRule = 'required|between:1,100|uniqueObjectForUser:categories,name';
|
||||
$nameRule = 'required|min:1|max:255|uniqueObjectForUser:categories,name';
|
||||
|
||||
/** @var null|Category $category */
|
||||
$category = $this->route()->parameter('category');
|
||||
|
||||
if (null !== $category) {
|
||||
$nameRule = 'required|between:1,100|uniqueObjectForUser:categories,name,'.$category->id;
|
||||
$nameRule = 'required|min:1|max:255|uniqueObjectForUser:categories,name,'.$category->id;
|
||||
}
|
||||
|
||||
// fixed
|
||||
|
@@ -51,8 +51,8 @@ class ConfigurationRequest extends FormRequest
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'single_user_mode' => 'between:0,1|numeric',
|
||||
'is_demo_site' => 'between:0,1|numeric',
|
||||
'single_user_mode' => 'min:0|max:1|numeric',
|
||||
'is_demo_site' => 'min:0|max:1|numeric',
|
||||
];
|
||||
}
|
||||
}
|
||||
|
@@ -43,7 +43,7 @@ class NewUserFormRequest extends FormRequest
|
||||
{
|
||||
// fixed
|
||||
return [
|
||||
'bank_name' => 'required|between:1,200',
|
||||
'bank_name' => 'required|min:1|max:255',
|
||||
'bank_balance' => ['required', new IsValidAmount()],
|
||||
'savings_balance' => ['nullable', new IsValidAmount()],
|
||||
'credit_card_limit' => ['nullable', new IsValidAmount()],
|
||||
|
@@ -53,10 +53,10 @@ class ObjectGroupFormRequest extends FormRequest
|
||||
{
|
||||
/** @var null|ObjectGroup $objectGroup */
|
||||
$objectGroup = $this->route()->parameter('objectGroup');
|
||||
$titleRule = 'required|between:1,255|uniqueObjectGroup';
|
||||
$titleRule = 'required|min:1|max:255|uniqueObjectGroup';
|
||||
|
||||
if (null !== $objectGroup) {
|
||||
$titleRule = sprintf('required|between:1,255|uniqueObjectGroup:%d', $objectGroup->id);
|
||||
$titleRule = sprintf('required|min:1|max:255|uniqueObjectGroup:%d', $objectGroup->id);
|
||||
}
|
||||
|
||||
return [
|
||||
|
@@ -58,7 +58,7 @@ class PiggyBankStoreRequest extends FormRequest
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'name' => 'required|between:1,255|uniquePiggyBankForUser',
|
||||
'name' => 'required|min:1|max:255|uniquePiggyBankForUser',
|
||||
'account_id' => 'required|belongsToUser:accounts',
|
||||
'targetamount' => ['nullable', new IsValidPositiveAmount()],
|
||||
'startdate' => 'date',
|
||||
|
@@ -62,7 +62,7 @@ class PiggyBankUpdateRequest extends FormRequest
|
||||
$piggy = $this->route()->parameter('piggyBank');
|
||||
|
||||
return [
|
||||
'name' => sprintf('required|between:1,255|uniquePiggyBankForUser:%d', $piggy->id),
|
||||
'name' => sprintf('required|min:1|max:255|uniquePiggyBankForUser:%d', $piggy->id),
|
||||
'account_id' => 'required|belongsToUser:accounts',
|
||||
'targetamount' => ['nullable', new IsValidPositiveAmount()],
|
||||
'startdate' => 'date',
|
||||
|
@@ -159,26 +159,26 @@ class RecurrenceFormRequest extends FormRequest
|
||||
$before = today(config('app.timezone'))->addYears(25);
|
||||
$rules = [
|
||||
// mandatory info for recurrence.
|
||||
'title' => 'required|between:1,255|uniqueObjectForUser:recurrences,title',
|
||||
'title' => 'required|min:1|max:255|uniqueObjectForUser:recurrences,title',
|
||||
'first_date' => sprintf('required|date|before:%s|after:%s', $before->format('Y-m-d'), $today->format('Y-m-d')),
|
||||
'repetition_type' => ['required', new ValidRecurrenceRepetitionValue(), new ValidRecurrenceRepetitionType(), 'between:1,20'],
|
||||
'repetition_type' => ['required', new ValidRecurrenceRepetitionValue(), new ValidRecurrenceRepetitionType(), 'min:1', 'max:32'],
|
||||
'skip' => 'required|numeric|integer|gte:0|lte:31',
|
||||
'notes' => 'min:1|max:32768|nullable',
|
||||
// optional for recurrence:
|
||||
'recurring_description' => 'between:0,65000',
|
||||
'active' => 'numeric|between:0,1',
|
||||
'apply_rules' => 'numeric|between:0,1',
|
||||
'recurring_description' => 'min:0|max:32768',
|
||||
'active' => 'numeric|min:0|max:1',
|
||||
'apply_rules' => 'numeric|min:0|max:1',
|
||||
|
||||
// mandatory for transaction:
|
||||
'transaction_description' => 'required|between:1,255',
|
||||
'transaction_description' => 'required|min:1|max:255',
|
||||
'transaction_type' => 'required|in:withdrawal,deposit,transfer',
|
||||
'transaction_currency_id' => 'required|exists:transaction_currencies,id',
|
||||
'amount' => ['required', new IsValidPositiveAmount()],
|
||||
// mandatory account info:
|
||||
'source_id' => 'numeric|belongsToUser:accounts,id|nullable',
|
||||
'source_name' => 'between:1,255|nullable',
|
||||
'source_name' => 'min:1|max:255|nullable',
|
||||
'destination_id' => 'numeric|belongsToUser:accounts,id|nullable',
|
||||
'destination_name' => 'between:1,255|nullable',
|
||||
'destination_name' => 'min:1|max:255|nullable',
|
||||
|
||||
// foreign amount data:
|
||||
'foreign_amount' => ['nullable', new IsValidPositiveAmount()],
|
||||
@@ -186,8 +186,8 @@ class RecurrenceFormRequest extends FormRequest
|
||||
// optional fields:
|
||||
'budget_id' => 'mustExist:budgets,id|belongsToUser:budgets,id|nullable',
|
||||
'bill_id' => 'mustExist:bills,id|belongsToUser:bills,id|nullable',
|
||||
'category' => 'between:1,255|nullable',
|
||||
'tags' => 'between:1,255|nullable',
|
||||
'category' => 'min:1|max:255|nullable',
|
||||
'tags' => 'min:1|max:255|nullable',
|
||||
];
|
||||
if ($this->convertInteger('foreign_currency_id') > 0) {
|
||||
$rules['foreign_currency_id'] = 'exists:transaction_currencies,id';
|
||||
@@ -195,7 +195,7 @@ class RecurrenceFormRequest extends FormRequest
|
||||
|
||||
// if ends after X repetitions, set another rule
|
||||
if ('times' === $this->convertString('repetition_end')) {
|
||||
$rules['repetitions'] = 'required|numeric|between:0,254';
|
||||
$rules['repetitions'] = 'required|numeric|min:0|max:255';
|
||||
}
|
||||
// if foreign amount, currency must be different.
|
||||
if (null !== $this->convertFloat('foreign_amount')) { // intentional float, used because it defaults to null.
|
||||
@@ -211,10 +211,10 @@ class RecurrenceFormRequest extends FormRequest
|
||||
$type = strtolower($this->convertString('transaction_type'));
|
||||
if (strtolower(TransactionType::WITHDRAWAL) === $type) {
|
||||
$rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
|
||||
$rules['destination_name'] = 'between:1,255|nullable';
|
||||
$rules['destination_name'] = 'min:1|max:255|nullable';
|
||||
}
|
||||
if (strtolower(TransactionType::DEPOSIT) === $type) {
|
||||
$rules['source_name'] = 'between:1,255|nullable';
|
||||
$rules['source_name'] = 'min:1|max:255|nullable';
|
||||
$rules['destination_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
|
||||
}
|
||||
if (strtolower(TransactionType::TRANSFER) === $type) {
|
||||
@@ -228,7 +228,7 @@ class RecurrenceFormRequest extends FormRequest
|
||||
$recurrence = $this->route()->parameter('recurrence');
|
||||
if ($recurrence instanceof Recurrence) {
|
||||
$rules['id'] = 'required|numeric|exists:recurrences,id';
|
||||
$rules['title'] = 'required|between:1,255|uniqueObjectForUser:recurrences,title,'.$recurrence->id;
|
||||
$rules['title'] = 'required|min:1|max:255|uniqueObjectForUser:recurrences,title,'.$recurrence->id;
|
||||
$rules['first_date'] = 'required|date';
|
||||
}
|
||||
|
||||
|
@@ -97,8 +97,8 @@ class RuleFormRequest extends FormRequest
|
||||
|
||||
// initial set of rules:
|
||||
$rules = [
|
||||
'title' => 'required|between:1,100|uniqueObjectForUser:rules,title',
|
||||
'description' => 'between:1,5000|nullable',
|
||||
'title' => 'required|min:1|max:255|uniqueObjectForUser:rules,title',
|
||||
'description' => 'min:1|max:32768|nullable',
|
||||
'stop_processing' => 'boolean',
|
||||
'rule_group_id' => 'required|belongsToUser:rule_groups',
|
||||
'trigger' => 'required|in:store-journal,update-journal',
|
||||
@@ -113,7 +113,7 @@ class RuleFormRequest extends FormRequest
|
||||
$rule = $this->route()->parameter('rule');
|
||||
|
||||
if (null !== $rule) {
|
||||
$rules['title'] = 'required|between:1,100|uniqueObjectForUser:rules,title,'.$rule->id;
|
||||
$rules['title'] = 'required|min:1|max:255|uniqueObjectForUser:rules,title,'.$rule->id;
|
||||
}
|
||||
|
||||
return $rules;
|
||||
|
@@ -59,18 +59,18 @@ class RuleGroupFormRequest extends FormRequest
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
$titleRule = 'required|between:1,100|uniqueObjectForUser:rule_groups,title';
|
||||
$titleRule = 'required|min:1|max:255|uniqueObjectForUser:rule_groups,title';
|
||||
|
||||
/** @var null|RuleGroup $ruleGroup */
|
||||
$ruleGroup = $this->route()->parameter('ruleGroup');
|
||||
|
||||
if (null !== $ruleGroup) {
|
||||
$titleRule = 'required|between:1,100|uniqueObjectForUser:rule_groups,title,'.$ruleGroup->id;
|
||||
$titleRule = 'required|min:1|max:255|uniqueObjectForUser:rule_groups,title,'.$ruleGroup->id;
|
||||
}
|
||||
|
||||
return [
|
||||
'title' => $titleRule,
|
||||
'description' => 'between:1,5000|nullable',
|
||||
'description' => 'min:1|max:32768|nullable',
|
||||
'active' => [new IsBoolean()],
|
||||
];
|
||||
}
|
||||
|
@@ -58,9 +58,9 @@ class UserFormRequest extends FormRequest
|
||||
'id' => 'required|exists:users,id',
|
||||
'email' => 'email|required',
|
||||
'password' => 'confirmed|secure_password',
|
||||
'blocked_code' => 'between:0,30|nullable',
|
||||
'blocked' => 'between:0,1|numeric',
|
||||
'is_owner' => 'between:0,1|numeric',
|
||||
'blocked_code' => 'min:0|max:32|nullable',
|
||||
'blocked' => 'min:0|max:1|numeric',
|
||||
'is_owner' => 'min:0|max:1|numeric',
|
||||
];
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user