Added session flashes and validation errors to views and add session flashes in controllers

This commit is contained in:
mwalbeck 2016-11-01 13:03:39 +01:00
parent 614258af16
commit 4fc0d5c793
26 changed files with 72 additions and 86 deletions

View file

@ -49,6 +49,7 @@ class AdministrativeTestController extends Controller
$test = new Test();
$test->createTest($request->all());
$request->session()->flash('status', 'The test has been created');
return redirect("/" . Auth::user()->getAdminPath() . "/tests/$test->id");
}
@ -68,6 +69,7 @@ class AdministrativeTestController extends Controller
$this->authorize('update', $test);
$test->updateTest($request->all());
$request->session()->flash('status', 'The test has been updated');
return redirect("/" . Auth::user()->getAdminPath() . "/tests/$test->id");
}
@ -76,6 +78,7 @@ class AdministrativeTestController extends Controller
$this->authorize('delete', $test);
$test->deleteTest();
$request->session()->flash('status', 'The test has been deleted');
return redirect("/" . Auth::user()->getAdminPath() . '/tests');
}
@ -104,6 +107,7 @@ class AdministrativeTestController extends Controller
$option = new Option;
$option->addOption($question, $optionData);
}
$request->session()->flash('status', 'The question has been created');
return redirect("/" . Auth::user()->getAdminPath() . "/tests/$test->id");
}
@ -126,15 +130,17 @@ class AdministrativeTestController extends Controller
foreach ($options as $key => $option) {
$option->updateOption($optionsData[$key+1]);
}
$request->session()->flash('status', 'The question has been updated');
return redirect("/" . Auth::user()->getAdminPath() . "/tests/$test->id");
}
public function deleteQuestion(Question $question)
public function deleteQuestion(Question $question, Request $request)
{
$this->authorize('delete', $question);
$test = $question->test;
$question->deleteQuestion();
$request->session()->flash('status', 'The question has been deleted');
return redirect("/" . Auth::user()->getAdminPath() . "/tests/$test->id");
}
}

View file

@ -59,6 +59,7 @@ class AdministrativeUserController extends Controller
$user = new User;
$user->addUser($request->all());
$request->session()->flash('status', 'The user has been created');
return redirect("/" . Auth::user()->getAdminPath() . "/users/$user->id");
}
@ -83,14 +84,16 @@ class AdministrativeUserController extends Controller
$this->authorize('update', $user);
$user->updateUser($request->all());
$request->session()->flash('status', 'The user has been updated');
return redirect("/" . Auth::user()->getAdminPath() . "/users/group/$user->group_id");
}
public function deleteUser(User $user)
public function deleteUser(User $user, Request $request)
{
$this->authorize('delete', $user);
$user->deleteUser();
$request->session()->flash('status', 'The user has been deleted');
return redirect("/" . Auth::user()->getAdminPath() . '/users');
}
}

View file

@ -43,6 +43,7 @@ class GroupController extends Controller
$group = new Group;
$group->addGroup($request->all());
$request->session()->flash('status', 'New group added successfully!');
return redirect("/" . Auth::user()->getAdminPath() . "/groups");
}
@ -58,14 +59,16 @@ class GroupController extends Controller
$this->authorize('update', $group);
$group->updateGroup($request->all());
$request->session()->flash('status', 'The group has been updated');
return redirect("/" . Auth::user()->getAdminPath() . "/groups/$group->id");
}
public function deleteGroup(Group $group)
public function deleteGroup(Group $group, Request $request)
{
$this->authorize('delete', $group);
$group->deleteGroup();
$request->session()->flash('status', 'The group has been deleted');
return redirect("/" . Auth::user()->getAdminPath() . "/groups");
}
}

View file

@ -20,14 +20,14 @@ class TestController extends Controller
$this->middleware('auth');
}
public function startTest(Test $test)
public function startTest(Test $test, Request $request)
{
if (null !== session("start_time") && session("time_limit") !== 0 && session("start_time")+session("time_limit") > time()) {
if (null !== session("start_time") && session("time_limit") !== 0 && session("start_time")+session("time_limit") > time() && $test->id === session('test')->id) {
return redirect()->action('TestController@showQuestion');
}
if (Auth::user()->testTaken($test->id)) {
//insert session flash
$request->session()->flash('status_failed', 'You have already taken this test!');
return redirect('/home');
}
session(['questions' => $test->randomizeQuestions(), 'question_counter' => 1, 'test' => $test, 'correct_answers' => 0, 'wrong_answers' => 0, 'is_correct' => false, 'has_failed' => false, 'last_question' => false, 'start_time' => time(), 'time_limit' => $test->time_limit]);

View file

@ -4,6 +4,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Groups</h4>

View file

@ -3,6 +3,7 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Tests</h4>

View file

@ -4,6 +4,8 @@
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Edit Group: {{ $group->name }}</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/groups/{{ $group->id }}/edit">

View file

@ -3,6 +3,8 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Create New Group</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/groups/new">

View file

@ -7,6 +7,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Group</h4>

View file

@ -7,6 +7,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Groups</h4>

View file

@ -4,6 +4,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include("shared.session-flash")
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Tests</h4>

View file

@ -0,0 +1,16 @@
@if (session('status'))
<div class="alert alert-success alert-dismissable fade in">
<span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> {{ session('status') }}
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
@endif
@if (session('status_failed'))
<div class="alert alert-danger alert-dismissable fade in">
<span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> {{ session('status_failed') }}
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
@endif

View file

@ -0,0 +1,9 @@
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif

View file

@ -4,6 +4,7 @@
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Question #{{ session("question_counter")-1 }}</h4>

View file

@ -3,15 +3,8 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Edit Test: {{ $test->title }}</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/edit">

View file

@ -3,6 +3,7 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Question #{{ session("question_counter") }}</h4>

View file

@ -4,16 +4,8 @@
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Create New Test</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/tests/new">

View file

@ -4,15 +4,8 @@
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Edit Question</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/questions/{{ $question->id }}">

View file

@ -3,15 +3,8 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Question {{ $question_number }}</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/question" id="form1">

View file

@ -7,6 +7,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Test</h4>

View file

@ -7,6 +7,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Tests</h4>

View file

@ -3,15 +3,8 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Create New User</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/users/{{ $user->id }}/edit">

View file

@ -3,15 +3,8 @@
@section('content')
<div class="container-fluid">
<div class="col-md-6 col-md-offset-3">
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<h1>Create New User</h1>
</br>
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/users/new">

View file

@ -4,31 +4,8 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@if (session('status'))
<div class="alert alert-success alert-dismissable fade in">
<span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> {{ session('status') }}
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
@endif
@if (session('status_failed'))
<div class="alert alert-danger alert-dismissable fade in">
<span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> {{ session('status_failed') }}
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
@endif
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
@include('shared.session-flash')
@include('shared.validation-errors')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Password</h4>

View file

@ -7,6 +7,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">User</h4>

View file

@ -7,6 +7,7 @@
<div class="container-fluid">
<div class="row">
<div class="col-md-6 col-md-offset-3">
@include('shared.session-flash')
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">Users</h4>