did a bit more refactoring

This commit is contained in:
mwalbeck 2016-09-11 16:14:32 +02:00
parent 75253b0b64
commit 5a330b1e64
3 changed files with 51 additions and 24 deletions

View file

@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Http\Requests;
use App\Test;
use App\Group;
@ -52,9 +53,6 @@ class AdminController extends Controller
return redirect('/admin/users');
}
public function showTests()
{
$tests = Test::all();
@ -74,14 +72,8 @@ class AdminController extends Controller
public function addTest()
{
$user = \Auth::user();
$test = new Test(request()->all());
if ($user->company_id) {
$group = Group::find($user->company_id);
$group->tests()->save($test);
return redirect('/admin/tests');
}
$test->save();
$test = new Test();
$test->createTest(request()->all());
return redirect('/admin/tests');
}
@ -90,17 +82,26 @@ class AdminController extends Controller
return view('admin.edit.test', compact('test'));
}
public function delTest(Test $test)
{
return view('admin.delete.test', compact('test'));
}
public function delQuestion(Question $question)
{
return view('admin.delete.question', compact('question'));
}
/* REFACTOR */
public function updateTest(Test $test)
{
$test->update(request()->all());
return redirect("/admin/tests/$test->id");
}
public function delTest(Test $test)
{
return view('admin.delete.test', compact('test'));
}
public function deleteTest(Test $test)
{
$questions = $test->questions;
@ -147,11 +148,6 @@ class AdminController extends Controller
return redirect("/admin/tests/$test->id");
}
public function delQuestion(Question $question)
{
return view('admin.delete.question', compact('question'));
}
public function deleteQuestion(Question $question)
{
$test = $question->test;

View file

@ -3,6 +3,7 @@
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Auth;
class Test extends Model
{
@ -38,4 +39,17 @@ class Test extends Model
}
return false;
}
public function createTest($request)
{
$this->title = $request["title"];
$this->question_count = $request["question_count"];
$this->question_count_to_fail = $request["question_count_to_fail"];
if (Auth::user()->group_id) {
Group::find(Auth::user()->group_id)->tests()->save($this);
return true;
}
$this->save();
return true;
}
}

View file

@ -3,6 +3,7 @@
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Support\Facades\Auth;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
@ -57,6 +58,22 @@ class User extends Authenticatable
return password_verify($password, $hash);
}
public function isModerator()
{
if (!$this->access_level == 2) {
return false;
}
return true;
}
public function isAdministrator()
{
if (!$this->access_level == 3) {
return false;
}
return true;
}
/**
*
* Function for adding a user.
@ -89,17 +106,17 @@ class User extends Authenticatable
*/
public function deleteUser()
{
if ($this->id == \Auth::user()->id) {
if ($this->id == Auth::user()->id) {
$this->delete();
return true;
}
if (\Auth::user()->group_id == $this->group_id && \Auth::user()->access_level >= 2) {
if (Auth::user()->group_id == $this->group_id && Auth::user()->access_level >= 2) {
$this->delete();
return true;
}
if (\Auth::user()->access_level >= 3) {
if (Auth::user()->access_level >= 3) {
$this->delete();
return true;
}