added new, edit and delete functionality for users and refined tests

This commit is contained in:
mwalbeck 2016-09-01 21:21:36 +02:00
commit f36e6a2c9d
14 changed files with 226 additions and 74 deletions
app/Http/Controllers

View file

@ -5,7 +5,8 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Test;
use App\Company;
use App\Group;
use App\User;
class AdminController extends Controller
{
@ -20,12 +21,17 @@ class AdminController extends Controller
return view('admin.admin');
}
public function showTest()
public function showTests()
{
$tests = Test::all();
return view('admin.show.tests', compact('tests'));
}
public function showTest(Test $test)
{
return view('admin.show.test', compact('test'));
}
public function test()
{
return view('admin.new.test');
@ -34,9 +40,13 @@ class AdminController extends Controller
public function addTest()
{
$user = \Auth::user();
$company = Company::find($user->company_id);
$test = new Test(request()->all());
$company->tests()->save($test);
if ($user->company_id) {
$group = Group::find($user->company_id);
$group->tests()->save($test);
return redirect('/admin/tests');
}
$test->save();
return redirect('/admin/tests');
}
@ -61,4 +71,63 @@ class AdminController extends Controller
$test->delete();
return redirect('/admin/tests');
}
public function showUser()
{
$users = User::all();
return view('admin.show.users', compact('users'));
}
public function editUser(User $user)
{
return view('admin.edit.user', compact('user'));
}
public function updateUser(User $user)
{
$user->name = request()->name;
$user->email = request()->email;
if (!empty(request()->password)) {
$user->password = bcrypt(request()->password);
}
$user->update();
return redirect('/admin/users');
}
public function delUser(User $user)
{
return view('admin.delete.user', compact('user'));
}
public function deleteUser(User $user)
{
$user->delete();
return redirect('/admin/users');
}
public function user()
{
return view('admin.new.user');
}
public function addUser()
{
$user = new User;
$user->name = request()->name;
$user->email = request()->email;
$user->password = bcrypt('request()->password');
if (!empty(request()->group_id)) {
$user->group_id = request()->group_id;
}
if (!empty(request()->enabled)) {
$user->enabled = request()->enabled;
}
if (!empty(request()->access_level)) {
$user->access_level = request()->access_level;
}
$user->save();
return redirect('/admin/users');
}
}