Changed delete view to a popup instead of seperate page, and a few layout changes
This commit is contained in:
parent
f06ce731bf
commit
74eedfdba4
22 changed files with 88 additions and 146 deletions
app/Http/Controllers
public/js
resources/views
admin
auth
groups
home.blade.phpshared
stats.blade.phptests
users
routes
|
@ -71,13 +71,6 @@ class AdministrativeTestController extends Controller
|
|||
return redirect("/admin/tests/$test->id");
|
||||
}
|
||||
|
||||
public function confirmDeleteTest(Test $test)
|
||||
{
|
||||
$this->authorize('delete', $test);
|
||||
|
||||
return view('tests.delete', compact('test'));
|
||||
}
|
||||
|
||||
public function deleteTest(Test $test)
|
||||
{
|
||||
$this->authorize('delete', $test);
|
||||
|
@ -136,13 +129,6 @@ class AdministrativeTestController extends Controller
|
|||
return redirect("/admin/tests/$test->id");
|
||||
}
|
||||
|
||||
public function confirmDeleteQuestion(Question $question)
|
||||
{
|
||||
$this->authorize('delete', $question);
|
||||
|
||||
return view('tests.question.delete', compact('question'));
|
||||
}
|
||||
|
||||
public function deleteQuestion(Question $question)
|
||||
{
|
||||
$this->authorize('delete', $question);
|
||||
|
|
|
@ -21,13 +21,6 @@ class AdministrativeUserController extends Controller
|
|||
* Common controller functions between administrators and moderator for handling users.
|
||||
*
|
||||
*/
|
||||
public function confirmDeleteUser(User $user)
|
||||
{
|
||||
$this->authorize('delete', $user);
|
||||
|
||||
return view('users.delete', compact('user'));
|
||||
}
|
||||
|
||||
public function deleteUser(User $user)
|
||||
{
|
||||
$this->authorize('delete', $user);
|
||||
|
|
|
@ -54,13 +54,6 @@ class GroupController extends Controller
|
|||
return redirect("/admin/groups");
|
||||
}
|
||||
|
||||
public function confirmDeleteGroup(Group $group)
|
||||
{
|
||||
$this->authorize('delete', $group);
|
||||
|
||||
return view('groups.delete', compact('group'));
|
||||
}
|
||||
|
||||
public function deleteGroup(Group $group)
|
||||
{
|
||||
$this->authorize('delete', $group);
|
||||
|
|
|
@ -17,4 +17,15 @@ $(document).ready(function() {
|
|||
field--;
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
$('.delete-modal').on('show.bs.modal', function (event) {
|
||||
var button = $(event.relatedTarget); // Button that triggered the modal
|
||||
var delete_url = button.data('url'); // Extract info from data-* attributes
|
||||
var delete_id = button.data('id'); // Extract info from data-* attributes
|
||||
// If necessary, you could initiate an AJAX request here (and then do the updating in a callback).
|
||||
// Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead.
|
||||
var modal = $(this);
|
||||
var admin_path = modal.find('#modal-button-delete').attr("formaction");
|
||||
modal.find('#modal-button-delete').attr("formaction", admin_path + delete_url + "/" + delete_id + "/delete");
|
||||
})
|
|
@ -5,7 +5,9 @@
|
|||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Groups</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Groups</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<table class="table">
|
||||
<tr>
|
||||
|
|
|
@ -4,7 +4,9 @@
|
|||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Tests</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Tests</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<form method="get">
|
||||
<button formaction="/{{ Auth::user()->getAdminPath() }}/tests" class="btn btn-default">Show Tests</button>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
@extends('layouts.base')
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<h1>Are you Sure!</h1>
|
||||
</br>
|
||||
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/groups/{{ $group->id }}/delete">
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('DELETE') }}
|
||||
<button type="submit" class="btn btn-danger">Yes</button>
|
||||
</form>
|
||||
<form method="GET" action="/{{ Auth::user()->getAdminPath() }}/groups">
|
||||
<button type="submit" class="btn btn-default">No</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@stop
|
|
@ -1,11 +1,16 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
|
||||
@include('shared.delete-modal')
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Groups</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Groups</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<table class="table">
|
||||
<tr>
|
||||
|
@ -24,7 +29,7 @@
|
|||
<td>
|
||||
<form method="get" class="pull-right">
|
||||
<button class="btn btn-sm btn-default pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/groups/{{ $group->id }}/edit">Edit</button>
|
||||
<button class="btn btn-sm btn-danger pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/groups/{{ $group->id }}/delete">Delete</button>
|
||||
<button type="button" class="btn btn-sm btn-danger pull-left" data-toggle="modal" data-target=".delete-modal" data-url="groups" data-id="{{ $group->id }}">Delete</button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
@ -5,7 +5,9 @@
|
|||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Tests</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Tests</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<table class="table">
|
||||
<tr>
|
||||
|
|
18
resources/views/shared/delete-modal.blade.php
Normal file
18
resources/views/shared/delete-modal.blade.php
Normal file
|
@ -0,0 +1,18 @@
|
|||
<div class="modal fade delete-modal" tabindex="-1" role="dialog" aria-labelledby="delete-modal">
|
||||
<div class="modal-dialog modal-sm" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title" id="myModalLabel">Are You Sure!</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<form method="POST" class="">
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('DELETE') }}
|
||||
<button type="button" id="modal-button-delete" class="btn btn-danger" formaction="/{{ Auth::user()->getAdminPath() }}/">Yes</button>
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">No</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
|
@ -2,15 +2,6 @@
|
|||
|
||||
@section('content')
|
||||
|
||||
<div>
|
||||
<div class="option-wrap">
|
||||
<div class="form-control option-field-1"><input type="text" name="options[1][option]"/></div>
|
||||
<div class="form-control option-field-2"><input type="text" name="options[2][option]"/></div>
|
||||
<div class="form-control option-field-3"><input type="text" name="options[3][option]"/></div>
|
||||
<div class="form-control option-field-4"><input type="text" name="options[4][option]"/></div>
|
||||
</div>
|
||||
<button class="add-option">Add More Fields</button>
|
||||
<button class="remove-option">Remove Fields</button>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
|
@ -5,7 +5,9 @@
|
|||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Question #{{ session("question_counter")-1 }}</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Question #{{ session("question_counter")-1 }}</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="progress">
|
||||
<div class="progress-bar" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: {{ session("test")->progressBarWidth(session("question_counter")-1) }}%;">
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<h1>Are you Sure!</h1>
|
||||
</br>
|
||||
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/delete">
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('DELETE') }}
|
||||
<button type="submit" class="btn btn-danger">Yes</button>
|
||||
</form>
|
||||
<form method="GET" action="/{{ Auth::user()->getAdminPath() }}/tests">
|
||||
<button type="submit" class="btn btn-default">No</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@stop
|
|
@ -4,7 +4,9 @@
|
|||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Question #{{ session("question_counter") }}</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Question #{{ session("question_counter") }}</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="progress">
|
||||
<div class="progress-bar" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: {{ session("test")->progressBarWidth(session("question_counter")) }}%;">
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<h1>Are you Sure!</h1>
|
||||
</br>
|
||||
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/questions/{{ $question->id }}">
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('DELETE') }}
|
||||
<button type="submit" class="btn btn-danger">Yes</button>
|
||||
</form>
|
||||
<form method="GET" action="/{{ Auth::user()->getAdminPath() }}/tests">
|
||||
<button type="submit" class="btn btn-default">No</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@stop
|
|
@ -1,6 +1,9 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
|
||||
@include('shared.delete-modal')
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
|
@ -11,8 +14,8 @@
|
|||
<div class="panel-body">
|
||||
@if (Auth::user()->isAdministrator() || (Auth::user()->isModerator() AND $test->group_id === Auth::user()->group_id))
|
||||
<form method="get">
|
||||
<button class="btn btn-danger pull-right" formaction="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/delete">Delete</button>
|
||||
<button class="btn btn-default pull-right" formaction="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/edit">Edit</button>
|
||||
<button type="button" class="btn btn-sm btn-danger pull-right" data-toggle="modal" data-target=".delete-modal" data-url="tests" data-id="{{ $test->id }}">Delete</button>
|
||||
<button class="btn btn-sm btn-default pull-right" formaction="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/edit">Edit</button>
|
||||
</form>
|
||||
@endif
|
||||
<strong>Title:</strong><br>
|
||||
|
@ -47,7 +50,7 @@
|
|||
@if (Auth::user()->isAdministrator() || (Auth::user()->isModerator() AND $test->group_id === Auth::user()->group_id))
|
||||
<form method="get" class="pull-right">
|
||||
<button class="btn btn-sm btn-default pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/questions/{{ $question->id }}/edit">Edit</button>
|
||||
<button class="btn btn-sm btn-danger pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/questions/{{ $question->id }}/delete">Delete</button>
|
||||
<button type="button" class="btn btn-sm btn-danger pull-left" data-toggle="modal" data-target=".delete-modal" data-url="questions" data-id="{{ $question->id }}">Delete</button>
|
||||
</form>
|
||||
@endif
|
||||
</div>
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
|
||||
@include('shared.delete-modal')
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Tests</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Tests</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<table class="table">
|
||||
<tr>
|
||||
|
@ -23,15 +28,11 @@
|
|||
<td><a href="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}">{{ $test->title }}</a></td>
|
||||
@if (Auth::user()->isAdministrator() || (Auth::user()->isModerator() AND $test->group_id === Auth::user()->group_id))
|
||||
<td>
|
||||
<form method="get" class="pull-right">
|
||||
<button class="btn btn-sm btn-danger pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/tests/{{ $test->id }}/delete">Delete</button>
|
||||
</form>
|
||||
<button type="button" class="btn btn-sm btn-danger pull-right" data-toggle="modal" data-target=".delete-modal" data-url="tests" data-id="{{ $test->id }}">Delete</button>
|
||||
</td>
|
||||
@else
|
||||
<td>
|
||||
<form method="get" class="pull-right">
|
||||
<button class="btn btn-sm btn-danger pull-left" formaction="#" disabled>Delete</button>
|
||||
</form>
|
||||
<button class="btn btn-sm btn-danger pull-right" formaction="#" disabled>Delete</button>
|
||||
</td>
|
||||
@endif
|
||||
</tr>
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<h1>Are you Sure!</h1>
|
||||
</br>
|
||||
<form method="POST" action="/{{ Auth::user()->getAdminPath() }}/users/{{ $user->id }}">
|
||||
{{ csrf_field() }}
|
||||
{{ method_field('DELETE') }}
|
||||
<button type="submit" class="btn btn-danger">Yes</button>
|
||||
</form>
|
||||
<form method="GET" action="/{{ Auth::user()->getAdminPath() }}/users">
|
||||
<button type="submit" class="btn btn-default">No</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@stop
|
|
@ -30,7 +30,9 @@
|
|||
</div>
|
||||
@endif
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Password</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Password</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<form method="post" action="/settings/update/password">
|
||||
{{ csrf_field() }}
|
||||
|
@ -51,7 +53,9 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Email</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Email</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<form method="post" action="/settings/update/email">
|
||||
{{ csrf_field() }}
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('content')
|
||||
|
||||
@include('shared.delete-modal')
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Users</div>
|
||||
<div class="panel-heading">
|
||||
<h4 class="panel-title">Users</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<table class="table">
|
||||
<tr>
|
||||
|
@ -24,7 +29,7 @@
|
|||
<td>
|
||||
<form method="get" class="pull-right">
|
||||
<button class="btn btn-sm btn-default pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/users/{{ $user->id }}/edit">Edit</button>
|
||||
<button class="btn btn-sm btn-danger pull-left" formaction="/{{ Auth::user()->getAdminPath() }}/users/{{ $user->id }}/delete">Delete</button>
|
||||
<button type="button" class="btn btn-sm btn-danger pull-left" data-toggle="modal" data-target=".delete-modal" data-url="users" data-id="{{ $user->id }}">Delete</button>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
@ -12,9 +12,10 @@
|
|||
*/
|
||||
|
||||
Route::get('/', 'PageController@welcome');
|
||||
Route::get('/403', 'PageController@error403');
|
||||
|
||||
/*Route::get('/403', 'PageController@error403');
|
||||
Route::get('/404', 'PageController@error404');
|
||||
Route::get('/503', 'PageController@error503');
|
||||
Route::get('/503', 'PageController@error503');*/
|
||||
|
||||
Auth::routes();
|
||||
|
||||
|
@ -50,14 +51,12 @@ Route::group(['prefix' => 'mod', 'middleware' => 'is.mod'], function () {
|
|||
Route::get('/tests/{test}', 'AdministrativeTestController@showTest');
|
||||
Route::get('/tests/{test}/edit', 'AdministrativeTestController@editTest');
|
||||
Route::patch('/tests/{test}/edit', 'AdministrativeTestController@updateTest');
|
||||
Route::get('/tests/{test}/delete', 'AdministrativeTestController@confirmDeleteTest');
|
||||
Route::delete('/tests/{test}/delete', 'AdministrativeTestController@deleteTest');
|
||||
Route::get('/tests/{test}/question', 'AdministrativeTestController@newQuestion');
|
||||
Route::post('/tests/{test}/question', 'AdministrativeTestController@addQuestion');
|
||||
Route::get('/questions/{question}/edit', 'AdministrativeTestController@editQuestion');
|
||||
Route::patch('/questions/{question}', 'AdministrativeTestController@updateQuestion');
|
||||
Route::get('/questions/{question}/delete', 'AdministrativeTestController@confirmDeleteQuestion');
|
||||
Route::delete('/questions/{question}/', 'AdministrativeTestController@deleteQuestion');
|
||||
Route::delete('/questions/{question}/delete', 'AdministrativeTestController@deleteQuestion');
|
||||
|
||||
|
||||
Route::get('/users', 'ModeratorController@showUsers');
|
||||
|
@ -65,8 +64,7 @@ Route::group(['prefix' => 'mod', 'middleware' => 'is.mod'], function () {
|
|||
Route::post('/users/new', 'AdministrativeUserController@addUser');
|
||||
Route::get('/users/{user}/edit', 'AdministrativeUserController@editUser');
|
||||
Route::post('/users/{user}/edit', 'AdministrativeUserController@updateUser');
|
||||
Route::get('/users/{user}/delete', 'AdministrativeUserController@confirmDeleteUser');
|
||||
Route::delete('/users/{user}', 'AdministrativeUserController@deleteUser');
|
||||
Route::delete('/users/{user}/delete', 'AdministrativeUserController@deleteUser');
|
||||
});
|
||||
|
||||
/*---------- Routes for the administrator section ----------*/
|
||||
|
@ -83,14 +81,12 @@ Route::group(['prefix' => 'admin', 'middleware' => 'is.admin'], function () {
|
|||
Route::get('/tests/{test}', 'AdministrativeTestController@showTest');
|
||||
Route::get('/tests/{test}/edit', 'AdministrativeTestController@editTest');
|
||||
Route::patch('/tests/{test}/edit', 'AdministrativeTestController@updateTest');
|
||||
Route::get('/tests/{test}/delete', 'AdministrativeTestController@confirmDeleteTest');
|
||||
Route::delete('/tests/{test}/delete', 'AdministrativeTestController@deleteTest');
|
||||
Route::get('/tests/{test}/question', 'AdministrativeTestController@newQuestion');
|
||||
Route::post('/tests/{test}/question', 'AdministrativeTestController@addQuestion');
|
||||
Route::get('/questions/{question}/edit', 'AdministrativeTestController@editQuestion');
|
||||
Route::patch('/questions/{question}', 'AdministrativeTestController@updateQuestion');
|
||||
Route::get('/questions/{question}/delete', 'AdministrativeTestController@confirmDeleteQuestion');
|
||||
Route::delete('/quphpestions/{question}/', 'AdministrativeTestController@deleteQuestion');
|
||||
Route::delete('/questions/{question}/delete', 'AdministrativeTestController@deleteQuestion');
|
||||
|
||||
Route::get('/users', 'AdminController@showGroups');
|
||||
Route::get('/users/all', 'AdminController@showAllUsers');
|
||||
|
@ -99,15 +95,13 @@ Route::group(['prefix' => 'admin', 'middleware' => 'is.admin'], function () {
|
|||
Route::post('/users/new', 'AdministrativeUserController@addUser');
|
||||
Route::get('/users/{user}/edit', 'AdministrativeUserController@editUser');
|
||||
Route::post('/users/{user}/edit', 'AdministrativeUserController@updateUser');
|
||||
Route::get('/users/{user}/delete', 'AdministrativeUserController@confirmDeleteUser');
|
||||
Route::delete('/users/{user}', 'AdministrativeUserController@deleteUser');
|
||||
Route::delete('/users/{user}/delete', 'AdministrativeUserController@deleteUser');
|
||||
|
||||
Route::get('/groups', 'GroupController@showGroups');
|
||||
Route::get('/groups/new', 'GroupController@newGroup');
|
||||
Route::post('/groups/new', 'GroupController@addGroup');
|
||||
Route::get('/groups/{group}/edit', 'GroupController@editGroup');
|
||||
Route::patch('/groups/{group}/edit', 'GroupController@updateGroup');
|
||||
Route::get('/groups/{group}/delete', 'GroupController@confirmDeleteGroup');
|
||||
Route::delete('/groups/{group}/delete', 'GroupController@DeleteGroup');
|
||||
|
||||
});
|
||||
|
|
Reference in a new issue