misc_pterodactyl-panel/app/Observers/SubuserObserver.php

62 lines
1.5 KiB
PHP
Raw Normal View History

<?php
/**
* Pterodactyl - Panel
* Copyright (c) 2015 - 2017 Dane Everitt <dane@daneeveritt.com>.
*
2017-09-26 02:43:01 +00:00
* This software is licensed under the terms of the MIT license.
* https://opensource.org/licenses/MIT
*/
namespace Pterodactyl\Observers;
use Pterodactyl\Events;
use Pterodactyl\Models\Subuser;
use Pterodactyl\Notifications\AddedToServer;
use Pterodactyl\Notifications\RemovedFromServer;
class SubuserObserver
{
/**
* Listen to the Subuser creating event.
*/
public function creating(Subuser $subuser)
{
event(new Events\Subuser\Creating($subuser));
}
/**
* Listen to the Subuser created event.
*/
public function created(Subuser $subuser)
{
event(new Events\Subuser\Created($subuser));
$subuser->user->notify((new AddedToServer([
'user' => $subuser->user->name_first,
'name' => $subuser->server->name,
'uuidShort' => $subuser->server->uuidShort,
])));
}
/**
* Listen to the Subuser deleting event.
*/
public function deleting(Subuser $subuser)
{
event(new Events\Subuser\Deleting($subuser));
}
/**
* Listen to the Subuser deleted event.
*/
public function deleted(Subuser $subuser)
{
event(new Events\Subuser\Deleted($subuser));
$subuser->user->notify((new RemovedFromServer([
'user' => $subuser->user->name_first,
'name' => $subuser->server->name,
])));
}
}