<?php /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | This file is where you may define all of the routes that are handled | by your application. Just tell Laravel the URIs it should respond | to using a Closure or controller method. Build something great! | */ Auth::routes(); Route::get('/', 'PageController@welcome'); Route::get('/register', 'PageController@error404'); /*Route::get('/403', 'PageController@error403'); Route::get('/404', 'PageController@error404'); Route::get('/503', 'PageController@error503');*/ Route::get('/home', 'HomeController@index'); Route::get('/stats', 'HomeController@stats'); Route::get('/settings', 'HomeController@settings'); Route::patch('/settings/update/email', 'HomeController@updateEmail'); Route::patch('/settings/update/password', 'HomeController@updatePassword'); /*---------- Routes for test taking ----------*/ Route::group(['prefix' => 'test'], function () { Route::get('/question', 'TestController@showQuestion'); Route::post('/question', 'TestController@answerQuestion'); Route::get('/answer', 'TestController@showAnswer'); Route::get('/{test}', 'TestController@startTest'); Route::get('/{test}/retry', 'TestController@testRetry'); Route::get('/{test}/end', 'TestController@testEnd'); }); /*---------- Routes for the moderator section ----------*/ Route::group(['prefix' => 'mod', 'middleware' => 'is.mod'], function () { Route::get('/', 'ModeratorController@index'); Route::get('/tests', 'ModeratorController@showGroups'); Route::get('/tests/all', 'ModeratorController@showAllTests'); Route::get('/tests/group/{group}', 'ModeratorController@showGroupTests'); Route::get('/tests/new', 'AdministrativeTestController@newTest'); Route::post('/tests/new', 'AdministrativeTestController@addTest'); Route::get('/tests/{test}', 'AdministrativeTestController@showTest'); Route::get('/tests/{test}/edit', 'AdministrativeTestController@editTest'); Route::patch('/tests/{test}/edit', 'AdministrativeTestController@updateTest'); 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::delete('/questions/{question}/delete', 'AdministrativeTestController@deleteQuestion'); Route::get('/users', 'ModeratorController@showUsers'); Route::get('/users/new', 'AdministrativeUserController@newUser'); Route::post('/users/new', 'AdministrativeUserController@addUser'); Route::get('/users/{user}', 'AdministrativeUserController@showUser'); Route::get('/users/{user}/edit', 'AdministrativeUserController@editUser'); Route::post('/users/{user}/edit', 'AdministrativeUserController@updateUser'); Route::get('/users/{user}/reset-password', 'AdministrativeUserController@resetUserPassword'); Route::delete('/users/{user}/delete', 'AdministrativeUserController@deleteUser'); Route::get('/groups/{group}', 'GroupController@showGroup'); Route::get('/groups/{group}/edit', 'GroupController@editGroup'); Route::patch('/groups/{group}/edit', 'GroupController@updateGroup'); }); /*---------- Routes for the administrator section ----------*/ Route::group(['prefix' => 'admin', 'middleware' => 'is.admin'], function () { Route::get('/', 'AdminController@index'); Route::get('/tests', 'AdminController@showGroups'); Route::get('/tests/all', 'AdminController@showAllTests'); Route::get('/tests/group/{group}', 'AdminController@showGroupTests'); Route::get('/tests/new', 'AdministrativeTestController@newTest'); Route::post('/tests/new', 'AdministrativeTestController@addTest'); Route::get('/tests/{test}', 'AdministrativeTestController@showTest'); Route::get('/tests/{test}/edit', 'AdministrativeTestController@editTest'); Route::patch('/tests/{test}/edit', 'AdministrativeTestController@updateTest'); 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::delete('/questions/{question}/delete', 'AdministrativeTestController@deleteQuestion'); Route::get('/users', 'AdminController@showGroups'); Route::get('/users/all', 'AdminController@showAllUsers'); Route::get('/users/group/{group}', 'AdminController@showGroupUsers'); Route::get('/users/new', 'AdministrativeUserController@newUser'); Route::post('/users/new', 'AdministrativeUserController@addUser'); Route::get('/users/{user}', 'AdministrativeUserController@showUser'); Route::get('/users/{user}/edit', 'AdministrativeUserController@editUser'); Route::post('/users/{user}/edit', 'AdministrativeUserController@updateUser'); Route::get('/users/{user}/reset-password', 'AdministrativeUserController@resetUserPassword'); Route::delete('/users/{user}/delete', 'AdministrativeUserController@deleteUser'); Route::get('/groups', 'GroupController@showGroups'); Route::get('/groups/{group}', 'GroupController@showGroup'); 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::delete('/groups/{group}/delete', 'GroupController@DeleteGroup'); }); // \Event::listen('Illuminate\Database\Events\QueryExecuted', function ($query) { // echo "<pre>"; // var_dump($query->sql); // var_dump($query->time); // echo "</pre>"; // });