close #72 Fixed: Validation for create customer
This commit is contained in:
parent
b95414b921
commit
73a7b21c25
@ -4,6 +4,7 @@ namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\Auth\User as Request;
|
||||
use Illuminate\Http\Request as ARequest;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Auth\Role;
|
||||
|
||||
@ -226,4 +227,31 @@ class Users extends Controller
|
||||
// Redirect to items
|
||||
return redirect('items/items');
|
||||
}
|
||||
|
||||
public function autocomplete(ARequest $request)
|
||||
{
|
||||
$user = false;
|
||||
|
||||
$column = $request['column'];
|
||||
$value = $request['value'];
|
||||
|
||||
if (!empty($column) && !empty($value)) {
|
||||
switch ($column) {
|
||||
case 'id':
|
||||
$user = User::find();
|
||||
break;
|
||||
case 'email':
|
||||
$user = User::where('email', $value)->first();
|
||||
break;
|
||||
default:
|
||||
$user = User::where($column, $value)->first();
|
||||
}
|
||||
}
|
||||
|
||||
return response()->json([
|
||||
'errors' => ($user) ? false: true,
|
||||
'success' => ($user) ? true: false,
|
||||
'data' => $user
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
@ -44,10 +44,24 @@ class Customers extends Controller
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
$customer = Customer::create($request->all());
|
||||
if (empty($request->input('create_user'))) {
|
||||
Customer::create($request->all());
|
||||
} else {
|
||||
$user = User::where('email', $request['email'])->first();
|
||||
|
||||
if (!empty($request->input('create_user'))) {
|
||||
$user = User::create($request->input());
|
||||
if (!empty($user)) {
|
||||
$message = trans('messages.error.customer', ['name' => $user->name]);
|
||||
|
||||
flash($message)->error();
|
||||
|
||||
return redirect()->back()->withInput($request->except('create_user'))->withErrors(
|
||||
['email' => trans('customer.error.email')]
|
||||
);
|
||||
|
||||
//$user = User::create($request->input());
|
||||
}
|
||||
|
||||
$customer = Customer::create($request->all());
|
||||
|
||||
$request['user_id'] = $user->id;
|
||||
$request['roles'] = array('3');
|
||||
@ -93,10 +107,22 @@ class Customers extends Controller
|
||||
*/
|
||||
public function update(Customer $customer, Request $request)
|
||||
{
|
||||
$customer->update($request->all());
|
||||
if (empty($request->input('create_user'))) {
|
||||
$customer->update($request->all());
|
||||
} else {
|
||||
$user = User::where('email', $request['email'])->first();
|
||||
|
||||
if (!empty($request->input('create_user'))) {
|
||||
$user = User::create($request->input());
|
||||
if (!empty($user)) {
|
||||
$message = trans('messages.error.customer', ['name' => $user->name]);
|
||||
|
||||
flash($message)->error();
|
||||
|
||||
return redirect()->back()->withInput($request->except('create_user'))->withErrors(
|
||||
['email' => trans('customer.error.email')]
|
||||
);
|
||||
|
||||
//$user = User::create($request->input());
|
||||
}
|
||||
|
||||
$request['user_id'] = $user->id;
|
||||
$request['roles'] = array('3');
|
||||
|
@ -58,5 +58,4 @@ class Modules extends Controller
|
||||
|
||||
return redirect('settings/apps/' . $alias);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ class Customer extends Request
|
||||
$id = null;
|
||||
}
|
||||
|
||||
if (!empty($this->request->get('create_user'))) {
|
||||
if (!empty($this->request->get('create_user')) && empty($this->request->get('user_id'))) {
|
||||
$required = 'required|';
|
||||
}
|
||||
|
||||
|
@ -2,4 +2,8 @@
|
||||
|
||||
return [
|
||||
'all' => 'All Customers',
|
||||
|
||||
'error' => [
|
||||
'email' => 'The email has already been taken.'
|
||||
]
|
||||
];
|
||||
|
@ -9,6 +9,7 @@ return [
|
||||
],
|
||||
'error' => [
|
||||
'not_user_company' => 'Error: You are not allowed to manage this company!',
|
||||
'customer' => 'Error: You can not created customer! :name use this email address.',
|
||||
],
|
||||
'warning' => [
|
||||
'deleted' => 'Warning: You are not allowed to delete <b>:name</b> because it has :text related.',
|
||||
|
@ -77,10 +77,32 @@
|
||||
});
|
||||
|
||||
$('#create_user').on('ifClicked', function (event) {
|
||||
$('input[name="user_id"]').remove();
|
||||
|
||||
if ($(this).prop('checked')) {
|
||||
$('.col-md-6.password').addClass('hidden');
|
||||
} else {
|
||||
$('.col-md-6.password').removeClass('hidden');
|
||||
$.ajax({
|
||||
url: '{{ url("auth/users/autocomplete") }}',
|
||||
type: 'GET',
|
||||
dataType: 'JSON',
|
||||
data: {column: 'email', value: $('input[name="email"]').val()},
|
||||
beforeSend: function() {
|
||||
$('.box-footer .btn').attr('disabled', true);
|
||||
},
|
||||
complete: function() {
|
||||
$('.box-footer .btn').attr('disabled', false);
|
||||
},
|
||||
success: function(json) {
|
||||
if (json['errors']) {
|
||||
$('.col-md-6.password').removeClass('hidden');
|
||||
}
|
||||
|
||||
if (json['success']) {
|
||||
$('input[name="password_confirmation"]').after('<input name="user_id" type="hidden" value="' + json['data']['id'] + '" id="user-id">');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -82,10 +82,32 @@
|
||||
});
|
||||
|
||||
$('#create_user').on('ifClicked', function (event) {
|
||||
$('input[name="user_id"]').remove();
|
||||
|
||||
if ($(this).prop('checked')) {
|
||||
$('.col-md-6.password').addClass('hidden');
|
||||
} else {
|
||||
$('.col-md-6.password').removeClass('hidden');
|
||||
$.ajax({
|
||||
url: '{{ url("auth/users/autocomplete") }}',
|
||||
type: 'GET',
|
||||
dataType: 'JSON',
|
||||
data: {column: 'email', value: $('input[name="email"]').val()},
|
||||
beforeSend: function() {
|
||||
$('.box-footer .btn').attr('disabled', true);
|
||||
},
|
||||
complete: function() {
|
||||
$('.box-footer .btn').attr('disabled', false);
|
||||
},
|
||||
success: function(json) {
|
||||
if (json['errors']) {
|
||||
$('.col-md-6.password').removeClass('hidden');
|
||||
}
|
||||
|
||||
if (json['success']) {
|
||||
$('input[name="password_confirmation"]').after('<input name="user_id" type="hidden" value="' + json['data']['id'] + '" id="user-id">');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -29,6 +29,7 @@ Route::group(['middleware' => 'language'], function () {
|
||||
|
||||
Route::group(['prefix' => 'auth'], function () {
|
||||
Route::get('logout', 'Auth\Login@destroy')->name('logout');
|
||||
Route::get('users/autocomplete', 'Auth\Users@autocomplete');
|
||||
Route::get('users/{user}/read-bills', 'Auth\Users@readUpcomingBills');
|
||||
Route::get('users/{user}/read-invoices', 'Auth\Users@readOverdueInvoices');
|
||||
Route::get('users/{user}/read-items', 'Auth\Users@readItemsOutOfStock');
|
||||
|
Loading…
x
Reference in New Issue
Block a user