File: D:/HostingSpaces/SBogers10/topswtw.komma.pro/app/KommaApp/Shop/FormValidation/FullCustomerForm.php
<?php
namespace KommaApp\Shop\FormValidation;
use KommaApp\Shop\Shop;
use Illuminate\Validation\Factory as Validator;
class FullCustomerForm extends BaseForm
{
/**
* @var Shop $shop
*/
protected $shop;
public $rules = [
'username' => 'required|email|unique_customer',
'email' => 'required|email|unique_customer',
'password' => 'required|confirmed|min:6',
'title' => 'required',
'first_name' => 'required',
'last_name' => 'required',
'postal' => 'required',
'house_number' => 'required|numeric|min:1',
'street' => 'required',
'city' => 'required',
'country' => 'required',
'company_vat' => 'vat_requirement:company,country|vat',
];
function __construct(Validator $validatorFactory, Shop $shop)
{
parent::__construct($validatorFactory);
$this->messages = [
'email.unique' => \Lang::get('customer/create.error_user_exists'),
'email.email' => \Lang::get('customer/create.error_email_invalid'),
'password.confirmed' => \Lang::get('customer/create.error_password_confirmation'),
'password.min' => \Lang::get('customer/create.error_password_min'),
'company_vat.vat_requirement' => \Lang::get('customer/create.error_vat_required'),
'company_vat.vat' => \Lang::get('customer/create.error_vat_invalid'),
];
$this->validatorFactory->extend('vat', 'KommaApp\Shop\FormValidation\ValidationRules\CustomValidationRules@validateVat');
$this->validatorFactory->extendImplicit('vatRequirement', 'KommaApp\Shop\FormValidation\ValidationRules\CustomValidationRules@validateVatRequirement');
$this->shop = $shop;
$this->parseRules();
}
protected function parseRules()
{
foreach ($this->rules as $ruleKey => $ruleValue) {
$this->rules[$ruleKey] = str_replace('||shopId||', $this->shop->getId(), $ruleValue);
}
return $this->rules;
}
public function translateMessages()
{
$messages = [
'email.unique' => \Lang::get('customer/create.error_user_exists'),
'email.email' => \Lang::get('customer/create.error_email_invalid'),
'password.confirmed' => \Lang::get('customer/create.error_password_confirmation'),
'password.min' => \Lang::get('customer/create.error_password_min'),
'company_vat.vat_requirement' => \Lang::get('customer/create.error_vat_required'),
'company_vat.vat' => \Lang::get('customer/create.error_vat_invalid'),
];
$this->messages = array_merge($this->messages, $messages);
}
}