2021-06-05 09:26:32 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Listeners;
|
|
|
|
|
2023-02-06 20:16:54 +00:00
|
|
|
use App\Settings\UserSettings;
|
|
|
|
|
2021-06-05 09:26:32 +00:00
|
|
|
class Verified
|
|
|
|
{
|
2023-02-06 20:16:54 +00:00
|
|
|
private $server_limit_after_verify_email;
|
|
|
|
|
|
|
|
private $credits_reward_after_verify_email;
|
|
|
|
|
2021-06-05 09:26:32 +00:00
|
|
|
/**
|
|
|
|
* Create the event listener.
|
|
|
|
*
|
|
|
|
* @return void
|
|
|
|
*/
|
2023-02-06 20:16:54 +00:00
|
|
|
public function __construct(UserSettings $user_settings)
|
2021-06-05 09:26:32 +00:00
|
|
|
{
|
2023-02-06 20:16:54 +00:00
|
|
|
$this->server_limit_after_verify_email = $user_settings->server_limit_after_verify_email;
|
|
|
|
$this->credits_reward_after_verify_email = $user_settings->credits_reward_after_verify_email;
|
2021-06-05 09:26:32 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Handle the event.
|
|
|
|
*
|
2023-01-05 17:01:42 +00:00
|
|
|
* @param object $event
|
2021-06-05 09:26:32 +00:00
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function handle($event)
|
|
|
|
{
|
2023-01-05 17:01:42 +00:00
|
|
|
if (! $event->user->email_verified_reward) {
|
2023-02-06 20:16:54 +00:00
|
|
|
$event->user->increment('server_limit', $this->server_limit_after_verify_email);
|
|
|
|
$event->user->increment('credits', $this->credits_reward_after_verify_email);
|
2022-11-29 08:20:24 +00:00
|
|
|
}
|
2021-06-05 09:26:32 +00:00
|
|
|
}
|
|
|
|
}
|