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\Controllers\Controller;
|
||||||
use App\Http\Requests\Auth\User as Request;
|
use App\Http\Requests\Auth\User as Request;
|
||||||
|
use Illuminate\Http\Request as ARequest;
|
||||||
use App\Models\Auth\User;
|
use App\Models\Auth\User;
|
||||||
use App\Models\Auth\Role;
|
use App\Models\Auth\Role;
|
||||||
|
|
||||||
@ -226,4 +227,31 @@ class Users extends Controller
|
|||||||
// Redirect to items
|
// Redirect to items
|
||||||
return redirect('items/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)
|
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'))) {
|
if (!empty($user)) {
|
||||||
$user = User::create($request->input());
|
$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['user_id'] = $user->id;
|
||||||
$request['roles'] = array('3');
|
$request['roles'] = array('3');
|
||||||
@ -93,10 +107,22 @@ class Customers extends Controller
|
|||||||
*/
|
*/
|
||||||
public function update(Customer $customer, Request $request)
|
public function update(Customer $customer, Request $request)
|
||||||
{
|
{
|
||||||
|
if (empty($request->input('create_user'))) {
|
||||||
$customer->update($request->all());
|
$customer->update($request->all());
|
||||||
|
} else {
|
||||||
|
$user = User::where('email', $request['email'])->first();
|
||||||
|
|
||||||
if (!empty($request->input('create_user'))) {
|
if (!empty($user)) {
|
||||||
$user = User::create($request->input());
|
$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['user_id'] = $user->id;
|
||||||
$request['roles'] = array('3');
|
$request['roles'] = array('3');
|
||||||
|
@ -58,5 +58,4 @@ class Modules extends Controller
|
|||||||
|
|
||||||
return redirect('settings/apps/' . $alias);
|
return redirect('settings/apps/' . $alias);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ class Customer extends Request
|
|||||||
$id = null;
|
$id = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($this->request->get('create_user'))) {
|
if (!empty($this->request->get('create_user')) && empty($this->request->get('user_id'))) {
|
||||||
$required = 'required|';
|
$required = 'required|';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,4 +2,8 @@
|
|||||||
|
|
||||||
return [
|
return [
|
||||||
'all' => 'All Customers',
|
'all' => 'All Customers',
|
||||||
|
|
||||||
|
'error' => [
|
||||||
|
'email' => 'The email has already been taken.'
|
||||||
|
]
|
||||||
];
|
];
|
||||||
|
@ -9,6 +9,7 @@ return [
|
|||||||
],
|
],
|
||||||
'error' => [
|
'error' => [
|
||||||
'not_user_company' => 'Error: You are not allowed to manage this company!',
|
'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' => [
|
'warning' => [
|
||||||
'deleted' => 'Warning: You are not allowed to delete <b>:name</b> because it has :text related.',
|
'deleted' => 'Warning: You are not allowed to delete <b>:name</b> because it has :text related.',
|
||||||
|
@ -77,11 +77,33 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
$('#create_user').on('ifClicked', function (event) {
|
$('#create_user').on('ifClicked', function (event) {
|
||||||
|
$('input[name="user_id"]').remove();
|
||||||
|
|
||||||
if ($(this).prop('checked')) {
|
if ($(this).prop('checked')) {
|
||||||
$('.col-md-6.password').addClass('hidden');
|
$('.col-md-6.password').addClass('hidden');
|
||||||
} else {
|
} else {
|
||||||
|
$.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');
|
$('.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">');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
@ -82,11 +82,33 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
$('#create_user').on('ifClicked', function (event) {
|
$('#create_user').on('ifClicked', function (event) {
|
||||||
|
$('input[name="user_id"]').remove();
|
||||||
|
|
||||||
if ($(this).prop('checked')) {
|
if ($(this).prop('checked')) {
|
||||||
$('.col-md-6.password').addClass('hidden');
|
$('.col-md-6.password').addClass('hidden');
|
||||||
} else {
|
} else {
|
||||||
|
$.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');
|
$('.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">');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
@ -29,6 +29,7 @@ Route::group(['middleware' => 'language'], function () {
|
|||||||
|
|
||||||
Route::group(['prefix' => 'auth'], function () {
|
Route::group(['prefix' => 'auth'], function () {
|
||||||
Route::get('logout', 'Auth\Login@destroy')->name('logout');
|
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-bills', 'Auth\Users@readUpcomingBills');
|
||||||
Route::get('users/{user}/read-invoices', 'Auth\Users@readOverdueInvoices');
|
Route::get('users/{user}/read-invoices', 'Auth\Users@readOverdueInvoices');
|
||||||
Route::get('users/{user}/read-items', 'Auth\Users@readItemsOutOfStock');
|
Route::get('users/{user}/read-items', 'Auth\Users@readItemsOutOfStock');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user