akaunting 3.0 (the last dance)
This commit is contained in:
@ -4,7 +4,7 @@ namespace App\Http\Requests\Auth;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class Permission extends FormRequest
|
||||
class Register extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
@ -23,16 +23,9 @@ class Permission extends FormRequest
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// Check if store or update
|
||||
if ($this->getMethod() == 'PATCH') {
|
||||
$id = is_numeric($this->permission) ? $this->permission : $this->permission->getAttribute('id');
|
||||
} else {
|
||||
$id = null;
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => 'required|string|unique:permissions,name,' . $id,
|
||||
'display_name' => 'required|string',
|
||||
'token' => 'required|uuid|string|max:255',
|
||||
'password' => 'required|string|confirmed',
|
||||
];
|
||||
}
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Auth;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class Role extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
// Check if store or update
|
||||
if ($this->getMethod() == 'PATCH') {
|
||||
$id = is_numeric($this->role) ? $this->role : $this->role->getAttribute('id');
|
||||
} else {
|
||||
$id = null;
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => 'required|string|unique:roles,name,' . $id,
|
||||
'display_name' => 'required|string',
|
||||
'permissions' => 'required'
|
||||
];
|
||||
}
|
||||
}
|
@ -29,14 +29,13 @@ class User extends FormRequest
|
||||
$picture = 'mimes:' . config('filesystems.mimes') . '|between:0,' . config('filesystems.max_size') * 1024 . '|dimensions:max_width=1000,max_height=1000';
|
||||
}
|
||||
|
||||
$email = 'required|email';
|
||||
$email = 'required|email:rfc,dns';
|
||||
|
||||
if ($this->getMethod() == 'PATCH') {
|
||||
// Updating user
|
||||
$id = is_numeric($this->user) ? $this->user : $this->user->getAttribute('id');
|
||||
$password = '';
|
||||
$companies = $this->user->can('read-common-companies') ? 'required' : '';
|
||||
$roles = $this->user->can('read-auth-roles') ? 'required|array' : '';
|
||||
$roles = $this->user->can('read-auth-roles') ? 'required|string' : '';
|
||||
|
||||
if ($this->user->contact) {
|
||||
$email .= '|unique:contacts,NULL,'
|
||||
@ -48,17 +47,22 @@ class User extends FormRequest
|
||||
} else {
|
||||
// Creating user
|
||||
$id = null;
|
||||
$password = 'required|';
|
||||
$companies = 'required';
|
||||
$roles = 'required|array';
|
||||
$roles = 'required|string';
|
||||
}
|
||||
|
||||
$email .= '|unique:users,email,' . $id . ',id,deleted_at,NULL';
|
||||
|
||||
$change_password = $this->request->get('change_password') == true || $this->request->get('change_password') != null;
|
||||
|
||||
$current_password = $change_password ? '|current_password' : '';
|
||||
$password = $change_password ? '|confirmed' : '';
|
||||
|
||||
return [
|
||||
'name' => 'required|string',
|
||||
'email' => $email,
|
||||
'password' => $password . 'confirmed',
|
||||
'current_password' => 'required_if:change_password,true' . $current_password,
|
||||
'password' => 'required_if:change_password,true' . $password,
|
||||
'companies' => $companies,
|
||||
'roles' => $roles,
|
||||
'picture' => $picture,
|
||||
|
@ -13,11 +13,19 @@ class Account extends FormRequest
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
$type = $this->request->get('type', 'bank');
|
||||
$opening_balance = 'required';
|
||||
|
||||
if ($type == 'bank') {
|
||||
$opening_balance = '|amount:0';
|
||||
}
|
||||
|
||||
return [
|
||||
'type' => 'required|string',
|
||||
'name' => 'required|string',
|
||||
'number' => 'required|string',
|
||||
'currency_code' => 'required|string|currency',
|
||||
'opening_balance' => 'required',
|
||||
'opening_balance' => $opening_balance,
|
||||
'enabled' => 'integer|boolean',
|
||||
];
|
||||
}
|
||||
|
@ -20,8 +20,19 @@ class Transaction extends FormRequest
|
||||
$attachment = 'mimes:' . config('filesystems.mimes') . '|between:0,' . config('filesystems.max_size') * 1024;
|
||||
}
|
||||
|
||||
// Check if store or update
|
||||
if ($this->getMethod() == 'PATCH') {
|
||||
$id = $this->transaction->getAttribute('id');
|
||||
} else {
|
||||
$id = null;
|
||||
}
|
||||
|
||||
// Get company id
|
||||
$company_id = (int) $this->request->get('company_id');
|
||||
|
||||
return [
|
||||
'type' => 'required|string',
|
||||
'number' => 'required|string|unique:transactions,NULL,' . $id . ',id,company_id,' . $company_id . ',deleted_at,NULL',
|
||||
'account_id' => 'required|integer',
|
||||
'paid_at' => 'required|date_format:Y-m-d H:i:s',
|
||||
'amount' => 'required|amount',
|
||||
|
22
app/Http/Requests/Banking/TransactionConnect.php
Normal file
22
app/Http/Requests/Banking/TransactionConnect.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Banking;
|
||||
|
||||
use App\Abstracts\Http\FormRequest;
|
||||
|
||||
class TransactionConnect extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'data' => 'required|array',
|
||||
'data.items' => 'required|array',
|
||||
'data.items.*.document_id' => 'required',
|
||||
];
|
||||
}
|
||||
}
|
@ -21,7 +21,7 @@ class Company extends FormRequest
|
||||
|
||||
return [
|
||||
'name' => 'required|string',
|
||||
'email' => 'required|email',
|
||||
'email' => 'required|email:rfc,dns',
|
||||
'currency' => 'required|string',
|
||||
'domain' => 'nullable|string',
|
||||
'logo' => $logo,
|
||||
|
@ -14,13 +14,11 @@ class Contact extends FormRequest
|
||||
public function rules()
|
||||
{
|
||||
$email = '';
|
||||
$required = '';
|
||||
$logo = 'nullable';
|
||||
|
||||
$type = $this->request->get('type', 'customer');
|
||||
|
||||
// @todo must put contact types under a specific array, see category
|
||||
if (empty(config('type.' . $type))) {
|
||||
if (empty(config('type.contact.' . $type))) {
|
||||
$type = null;
|
||||
}
|
||||
|
||||
@ -35,12 +33,8 @@ class Contact extends FormRequest
|
||||
$id = null;
|
||||
}
|
||||
|
||||
if (($this->request->get('create_user', 'false') === 'true') && empty($this->request->get('user_id'))) {
|
||||
$required = 'required|';
|
||||
}
|
||||
|
||||
if (!empty($this->request->get('email'))) {
|
||||
$email .= 'email|unique:contacts,NULL,'
|
||||
$email .= 'email:rfc,dns|unique:contacts,NULL,'
|
||||
. $id . ',id'
|
||||
. ',company_id,' . $company_id
|
||||
. ',type,' . $type
|
||||
@ -61,7 +55,6 @@ class Contact extends FormRequest
|
||||
'email' => $email,
|
||||
'user_id' => 'integer|nullable',
|
||||
'currency_code' => 'required|string|currency',
|
||||
'password' => $required . 'confirmed',
|
||||
'enabled' => 'integer|boolean',
|
||||
'logo' => $logo,
|
||||
];
|
||||
|
22
app/Http/Requests/Common/CustomMail.php
Normal file
22
app/Http/Requests/Common/CustomMail.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Common;
|
||||
|
||||
use App\Abstracts\Http\FormRequest;
|
||||
|
||||
class CustomMail extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'to' => 'required|email',
|
||||
'subject' => 'required|string',
|
||||
'body' => 'required|string',
|
||||
];
|
||||
}
|
||||
}
|
@ -15,6 +15,7 @@ class Dashboard extends FormRequest
|
||||
{
|
||||
return [
|
||||
'name' => 'required|string',
|
||||
'users' => 'required|array',
|
||||
//'enabled' => 'integer|boolean',
|
||||
];
|
||||
}
|
||||
|
@ -13,16 +13,25 @@ class Item extends FormRequest
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
$picture = 'nullable';
|
||||
$picture = $sale_price = $purchase_price = 'nullable';
|
||||
|
||||
if ($this->files->get('picture')) {
|
||||
$picture = 'mimes:' . config('filesystems.mimes') . '|between:0,' . config('filesystems.max_size') * 1024 . '|dimensions:max_width=1000,max_height=1000';
|
||||
}
|
||||
|
||||
if ($this->request->get('sale_information') == 'true') {
|
||||
$sale_price = 'required';
|
||||
}
|
||||
|
||||
if ($this->request->get('purchase_information') == 'true') {
|
||||
$purchase_price = 'required';
|
||||
}
|
||||
|
||||
return [
|
||||
'type' => 'required|string',
|
||||
'name' => 'required|string',
|
||||
'sale_price' => 'required|regex:/^(?=.*?[0-9])[0-9.,]+$/',
|
||||
'purchase_price' => 'required|regex:/^(?=.*?[0-9])[0-9.,]+$/',
|
||||
'sale_price' => $sale_price . '|regex:/^(?=.*?[0-9])[0-9.,]+$/',
|
||||
'purchase_price'=> $purchase_price . '|regex:/^(?=.*?[0-9])[0-9.,]+$/',
|
||||
'tax_ids' => 'nullable|array',
|
||||
'category_id' => 'nullable|integer',
|
||||
'enabled' => 'integer|boolean',
|
||||
|
@ -3,6 +3,7 @@
|
||||
namespace App\Http\Requests\Common;
|
||||
|
||||
use App\Abstracts\Http\FormRequest;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
class Widget extends FormRequest
|
||||
{
|
||||
@ -20,4 +21,11 @@ class Widget extends FormRequest
|
||||
'sort' => 'integer',
|
||||
];
|
||||
}
|
||||
|
||||
public function messages()
|
||||
{
|
||||
return [
|
||||
'class.required' => trans('validation.required', ['attribute' => Str::lower(trans_choice('general.types', 1))]),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ class Document extends FormRequest
|
||||
|
||||
$type = $this->request->get('type', Model::INVOICE_TYPE);
|
||||
|
||||
$type = config('type.' . $type . '.route.parameter');
|
||||
$type = config('type.document.' . $type . '.route.parameter');
|
||||
|
||||
// Check if store or update
|
||||
if ($this->getMethod() == 'PATCH') {
|
||||
@ -65,7 +65,7 @@ class Document extends FormRequest
|
||||
'recurring_interval' => 'exclude_unless:recurring_frequency,custom|gt:0',
|
||||
];
|
||||
|
||||
$items = $this->request->get('items');
|
||||
$items = $this->request->all('items');
|
||||
|
||||
if ($items) {
|
||||
foreach ($items as $key => $item) {
|
||||
@ -76,6 +76,7 @@ class Document extends FormRequest
|
||||
}
|
||||
|
||||
$rules['items.' . $key . '.quantity'] = 'required|max:' . $size;
|
||||
|
||||
$this->items_quantity_size[$key] = $size;
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ class DocumentItem extends FormRequest
|
||||
'type' => 'required|string',
|
||||
'document_id' => 'required|integer',
|
||||
'name' => 'required|string',
|
||||
'quantity' => 'required|max:' . $this->quantity_size,
|
||||
'quantity' => 'required|max:' . $quantity_size,
|
||||
'price' => 'required|amount',
|
||||
'total' => 'required',
|
||||
'tax' => 'required',
|
||||
|
@ -18,7 +18,7 @@ class PaymentShow extends FormRequest
|
||||
}
|
||||
|
||||
// Allow admin to see signed invoice
|
||||
if (user()->can('read-sales-revenues')) {
|
||||
if (user()->can('read-banking-transactions')) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -21,7 +21,7 @@ class Profile extends FormRequest
|
||||
$picture = 'mimes:' . config('filesystems.mimes') . '|between:0,' . config('filesystems.max_size') * 1024 . '|dimensions:max_width=1000,max_height=1000';
|
||||
}
|
||||
|
||||
$email = 'required|email|unique:users,email,' . $id . ',id,deleted_at,NULL';
|
||||
$email = 'required|email:rfc,dns|unique:users,email,' . $id . ',id,deleted_at,NULL';
|
||||
|
||||
if (user()->contact) {
|
||||
$email .= '|unique:contacts,NULL,'
|
||||
@ -34,7 +34,8 @@ class Profile extends FormRequest
|
||||
return [
|
||||
'name' => 'required|string',
|
||||
'email' => $email,
|
||||
'password' => 'confirmed',
|
||||
'current_password' => 'required_if:change_password,true|current_password',
|
||||
'password' => 'required_if:change_password,true|confirmed',
|
||||
'picture' => $picture,
|
||||
];
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ class Currency extends FormRequest
|
||||
'code' => 'required|string|unique:currencies,NULL,' . $id . ',id,company_id,' . $company_id . ',deleted_at,NULL',
|
||||
'rate' => 'required|gt:0',
|
||||
'enabled' => 'integer|boolean',
|
||||
'default_currency' => 'boolean',
|
||||
'default_currency' => 'nullable|boolean',
|
||||
'symbol_first' => 'nullable|boolean',
|
||||
'thousands_separator' => 'different:decimal_mark',
|
||||
];
|
||||
|
21
app/Http/Requests/Setting/EmailTemplate.php
Normal file
21
app/Http/Requests/Setting/EmailTemplate.php
Normal file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Setting;
|
||||
|
||||
use App\Abstracts\Http\FormRequest;
|
||||
|
||||
class EmailTemplate extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
return [
|
||||
'subject' => 'required|string',
|
||||
'body' => 'required|string',
|
||||
];
|
||||
}
|
||||
}
|
@ -16,8 +16,10 @@ class Tax extends FormRequest
|
||||
// Check if store or update
|
||||
if ($this->getMethod() == 'PATCH') {
|
||||
$id = is_numeric($this->tax) ? $this->tax : $this->tax->getAttribute('id');
|
||||
$enabled = 'integer|boolean';
|
||||
} else {
|
||||
$id = null;
|
||||
$enabled = 'nullable';
|
||||
}
|
||||
|
||||
$company_id = (int) $this->request->get('company_id');
|
||||
@ -32,7 +34,7 @@ class Tax extends FormRequest
|
||||
'name' => 'required|string',
|
||||
'rate' => 'required|min:0|max:100',
|
||||
'type' => $type,
|
||||
'enabled' => 'integer|boolean',
|
||||
'enabled' => $enabled,
|
||||
];
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user