-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbootstrap.php
More file actions
42 lines (36 loc) · 1.36 KB
/
bootstrap.php
File metadata and controls
42 lines (36 loc) · 1.36 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
<?php
use App\Services\Hook;
use Blessing\Filter;
use Carbon\Carbon;
use Illuminate\Contracts\Events\Dispatcher;
return function (Dispatcher $events, Filter $filter) {
Hook::addScriptFileToPage(
plugin('invitation-codes')->assets('register.js'),
['auth/register']
);
Hook::addRoute(function () {
Route::namespace('InvitationCodes')
->middleware(['web', 'auth', 'role:admin'])
->prefix('admin/invitation-codes')
->group(function () {
Route::get('', 'InvitationCodeController@list');
Route::post('generate', 'InvitationCodeController@generate');
Route::put('', 'InvitationCodeController@edit');
});
});
Hook::addMenuItem('admin', 4, [
'title' => 'InvitationCodes::general.code',
'link' => 'admin/invitation-codes',
'icon' => 'fa-inbox',
]);
$filter->add('can_register', InvitationCodes\CheckInvitationCode::class, 30);
$filter->add('can_register', InvitationCodes\RegistrationFinalCheck::class, 10);
$events->listen('auth.registration.completed', function ($user) {
DB::table('invitation_codes')
->where('code', session()->pull('using_invitation_code'))
->update([
'used_by' => $user->uid,
'used_at' => Carbon::now(),
]);
});
};