Access.php
3.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
/**
* All route names are prefixed with 'admin.access'.
*/
Route::group([
'prefix' => 'access',
'as' => 'access.',
'namespace' => 'Access',
], function () {
/*
* User Management
*/
Route::group([
'middleware' => 'access.routeNeedsRole:1',
], function () {
Route::group(['namespace' => 'User'], function () {
/*
* For DataTables
*/
Route::post('user/get', 'UserTableController')->name('user.get');
/*
* User Status'
*/
Route::get('user/deactivated', 'UserStatusController@getDeactivated')->name('user.deactivated');
Route::get('user/deleted', 'UserStatusController@getDeleted')->name('user.deleted');
Route::get('user/science', 'UserStatusController@science')->name('user.science');
Route::post('user/scienceadd', 'UserController@scienceAdd')->name('user.scienceadd');
/*
* User CRUD
*/
Route::resource('user', 'UserController');
/*
* Specific User
*/
Route::group(['prefix' => 'user/{user}'], function () {
// Account
Route::get('account/confirm/resend', 'UserConfirmationController@sendConfirmationEmail')->name('user.account.confirm.resend');
// Status
Route::get('mark/{status}', 'UserStatusController@mark')->name('user.mark')->where(['status' => '[0,1]']);
// Social
Route::delete('social/{social}/unlink', 'UserSocialController@unlink')->name('user.social.unlink');
// Confirmation
Route::get('confirm', 'UserConfirmationController@confirm')->name('user.confirm');
Route::get('unconfirm', 'UserConfirmationController@unconfirm')->name('user.unconfirm');
// Password
Route::get('password/change', 'UserPasswordController@edit')->name('user.change-password');
Route::patch('password/change', 'UserPasswordController@update')->name('user.change-password.post');
// Access
Route::get('login-as', 'UserAccessController@loginAs')->name('user.login-as');
// Session
Route::get('clear-session', 'UserSessionController@clearSession')->name('user.clear-session');
});
/*
* Deleted User
*/
Route::group(['prefix' => 'user/{deletedUser}'], function () {
Route::get('delete', 'UserStatusController@delete')->name('user.delete-permanently');
Route::get('restore', 'UserStatusController@restore')->name('user.restore');
});
});
/*
* Role Management
*/
Route::group(['namespace' => 'Role'], function () {
Route::resource('role', 'RoleController', ['except' => ['show']]);
//For DataTables
Route::post('role/get', 'RoleTableController')->name('role.get');
});
});
});