55 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
namespace App\Observers;
 | 
						|
 | 
						|
use App\Events;
 | 
						|
use App\Models\Subuser;
 | 
						|
use App\Notifications\AddedToServer;
 | 
						|
use App\Notifications\RemovedFromServer;
 | 
						|
 | 
						|
class SubuserObserver
 | 
						|
{
 | 
						|
    /**
 | 
						|
     * Listen to the Subuser creating event.
 | 
						|
     */
 | 
						|
    public function creating(Subuser $subuser): void
 | 
						|
    {
 | 
						|
        event(new Events\Subuser\Creating($subuser));
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * Listen to the Subuser created event.
 | 
						|
     */
 | 
						|
    public function created(Subuser $subuser): void
 | 
						|
    {
 | 
						|
        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): void
 | 
						|
    {
 | 
						|
        event(new Events\Subuser\Deleting($subuser));
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * Listen to the Subuser deleted event.
 | 
						|
     */
 | 
						|
    public function deleted(Subuser $subuser): void
 | 
						|
    {
 | 
						|
        event(new Events\Subuser\Deleted($subuser));
 | 
						|
 | 
						|
        $subuser->user->notify(new RemovedFromServer([
 | 
						|
            'user' => $subuser->user->name_first,
 | 
						|
            'name' => $subuser->server->name,
 | 
						|
        ]));
 | 
						|
    }
 | 
						|
}
 |