A few small tweaks for new groups
This commit is contained in:
@@ -43,9 +43,12 @@ class GroupsController extends Controller
|
||||
$permissions = config('permissions');
|
||||
$groupPermissions = Helper::selectedPermissionsArray($permissions, $permissions);
|
||||
$selectedPermissions = $request->old('permissions', $groupPermissions);
|
||||
|
||||
$users = \App\Models\User::get();
|
||||
// Show the page
|
||||
return view('groups/edit', compact('permissions', 'selectedPermissions', 'groupPermissions'))->with('group', $group);
|
||||
return view('groups/edit', compact('permissions', 'selectedPermissions', 'groupPermissions'))
|
||||
->with('group', $group)
|
||||
->with('associated_users', [])
|
||||
->with('unselected_users', $users);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -60,12 +63,23 @@ class GroupsController extends Controller
|
||||
// create a new group instance
|
||||
$group = new Group();
|
||||
$group->name = $request->input('name');
|
||||
|
||||
if ($request->filled('permission')) {
|
||||
$group->permissions = json_encode($request->array('permission'));
|
||||
} else {
|
||||
$group->permissions = null;
|
||||
}
|
||||
|
||||
$group->permissions = json_encode($request->input('permission'));
|
||||
$group->created_by = auth()->id();
|
||||
$group->notes = $request->input('notes');
|
||||
|
||||
if ($group->save()) {
|
||||
$group->users()->sync($request->input('associated_users'));
|
||||
|
||||
if ($request->filled('users_to_add')) {
|
||||
$associated_users = explode(',',$request->input('users_to_add'));
|
||||
$group->users()->sync($associated_users);
|
||||
}
|
||||
return redirect()->route('groups.index')->with('success', trans('admin/groups/message.success.create'));
|
||||
}
|
||||
|
||||
@@ -92,8 +106,7 @@ class GroupsController extends Controller
|
||||
$associated_users = $group->users()->get();
|
||||
|
||||
// Get the unselected users
|
||||
$users = \App\Models\User::get();
|
||||
$unselected_users = $users->diffKeys($associated_users);
|
||||
$unselected_users = \App\Models\User::whereNotIn('id', $associated_users->pluck('id')->toArray())->orderBy('first_name', 'asc')->get();
|
||||
|
||||
return view('groups.edit', compact('group', 'permissions', 'selected_array', 'groupPermissions'))->with('associated_users', $associated_users)->with('unselected_users', $unselected_users);
|
||||
}
|
||||
@@ -122,8 +135,11 @@ class GroupsController extends Controller
|
||||
if (! config('app.lock_passwords')) {
|
||||
if ($group->save()) {
|
||||
|
||||
$associated_users = explode(',',$request->input('users_to_add'));
|
||||
$group->users()->sync($associated_users);
|
||||
if ($request->filled('users_to_add')) {
|
||||
$associated_users = explode(',',$request->input('users_to_add'));
|
||||
$group->users()->sync($associated_users);
|
||||
}
|
||||
|
||||
return redirect()->route('groups.index')->with('success', trans('admin/groups/message.success.update'));
|
||||
}
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
<div class="col-md-12">
|
||||
|
||||
<!-- This hidden input will store the selected user IDs as a comma-separated string to avoid max_input_vars and max_multipart_body_parts php.ini issues -->
|
||||
<input type="hidden" name="users_to_add" id="hidden_ids_box" class="form-control" value="{{ implode(",", $associated_users->pluck('id')->toArray()) }}"/>
|
||||
<input type="hidden" name="users_to_add" id="hidden_ids_box" class="form-control" value="{{ ($associated_users && is_array($associated_users)) ? implode(",", $associated_users->pluck('id')->toArray()) : '' }}"/>
|
||||
|
||||
<div class="addremove-multiselect">
|
||||
<div class="col-lg-5 col-sm-5 col-xs-12">
|
||||
|
||||
Reference in New Issue
Block a user