Skip to content

Commit

Permalink
close #398 Added: Add custom validation type : currency
Browse files Browse the repository at this point in the history
  • Loading branch information
cuneytsenturk committed Jun 27, 2018
1 parent e7c7a47 commit 896bc1f
Show file tree
Hide file tree
Showing 11 changed files with 32 additions and 9 deletions.
2 changes: 1 addition & 1 deletion app/Http/Requests/Banking/Account.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public function rules()
return [
'name' => 'required|string',
'number' => 'required|string',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'opening_balance' => 'required',
];
}
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Expense/Bill.php
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ public function rules()
'billed_at' => 'required|date',
'due_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'vendor_id' => 'required|integer',
'vendor_name' => 'required|string',
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Expense/BillPayment.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public function rules()
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'payment_method' => 'required|string',
'attachment' => 'mimes:' . setting('general.file_types', 'pdf,jpeg,jpg,png'),
];
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Expense/Payment.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public function rules()
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'category_id' => 'required|integer',
'payment_method' => 'required|string',
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Expense/Vendor.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ public function rules()
return [
'name' => 'required|string',
'email' => $email,
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
];
}
}
2 changes: 1 addition & 1 deletion app/Http/Requests/Income/Customer.php
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public function rules()
return [
'name' => 'required|string',
'email' => $email,
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'password' => $required . 'confirmed',
];
}
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Income/Invoice.php
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ public function rules()
'invoiced_at' => 'required|date',
'due_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'customer_id' => 'required|integer',
'customer_name' => 'required|string',
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Income/InvoicePayment.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public function rules()
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'payment_method' => 'required|string',
'attachment' => 'mimes:jpeg,jpg,png,pdf',
];
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Requests/Income/Revenue.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public function rules()
'account_id' => 'required|integer',
'paid_at' => 'required|date',
'amount' => 'required',
'currency_code' => 'required|string',
'currency_code' => 'required|string|currency',
'currency_rate' => 'required',
'category_id' => 'required|integer',
'payment_method' => 'required|string',
Expand Down
22 changes: 22 additions & 0 deletions app/Http/Requests/Request.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,33 @@

namespace App\Http\Requests;

use App\Models\Setting\Currency;

use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Factory as ValidationFactory;

class Request extends FormRequest
{

public function __construct(ValidationFactory $validation)
{
$validation->extend(
'currency',
function ($attribute, $currency_code, $parameters) {
$currency = false;
$currencies = Currency::enabled()->pluck('name', 'code')->toArray();

if (array_key_exists($currency_code, $currencies)) {
$currency = true;
}

return $currency;
},
trans('validation.custom.invalid_currency', ['attribute' => $currency_code])
);

}

/**
* Set the company id to the request.
*
Expand Down
1 change: 1 addition & 0 deletions resources/lang/en-GB/validation.php
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@
'attribute-name' => [
'rule-name' => 'custom-message',
],
'invalid_currency' => 'The :attribute code is invalid.',
],

/*
Expand Down

0 comments on commit 896bc1f

Please sign in to comment.