diff --git a/app/Http/Requests/AccountFormRequest.php b/app/Http/Requests/AccountFormRequest.php index 3d01ff4a3c..33d3310334 100644 --- a/app/Http/Requests/AccountFormRequest.php +++ b/app/Http/Requests/AccountFormRequest.php @@ -24,6 +24,7 @@ namespace FireflyIII\Http\Requests; use FireflyIII\Models\Account; use FireflyIII\Rules\UniqueIban; +use FireflyIII\Rules\ZeroOrMore; /** * Class AccountFormRequest. @@ -116,7 +117,7 @@ class AccountFormRequest extends Request ]; if ('liabilities' === $this->get('what')) { - $rules['openingBalance'] = 'numeric|required|more:0'; + $rules['openingBalance'] = ['numeric', 'required', new ZeroOrMore]; $rules['openingBalanceDate'] = 'date|required'; } diff --git a/app/Rules/ZeroOrMore.php b/app/Rules/ZeroOrMore.php new file mode 100644 index 0000000000..07e1d8c46b --- /dev/null +++ b/app/Rules/ZeroOrMore.php @@ -0,0 +1,45 @@ + 0) { + return false; + } + + return true; + } +} diff --git a/resources/lang/en_US/validation.php b/resources/lang/en_US/validation.php index 39f4f3f50c..9f8f7b9d50 100644 --- a/resources/lang/en_US/validation.php +++ b/resources/lang/en_US/validation.php @@ -24,6 +24,7 @@ declare(strict_types=1); return [ 'iban' => 'This is not a valid IBAN.', + 'zero_or_more' => 'The value cannot be negative.', 'source_equals_destination' => 'The source account equals the destination account.', 'unique_account_number_for_user' => 'It looks like this account number is already in use.', 'unique_iban_for_user' => 'It looks like this IBAN is already in use.',