mirror of https://github.com/pixelfed/pixelfed.git
66 lines
1.7 KiB
PHP
66 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Jobs\CuratedOnboarding;
|
|
|
|
use Illuminate\Bus\Queueable;
|
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
|
use Illuminate\Foundation\Bus\Dispatchable;
|
|
use Illuminate\Queue\InteractsWithQueue;
|
|
use Illuminate\Queue\SerializesModels;
|
|
use App\Models\CuratedRegister;
|
|
use App\User;
|
|
use Illuminate\Support\Facades\Mail;
|
|
use Illuminate\Support\Facades\Storage;
|
|
use App\Mail\CuratedRegisterNotifyAdmin;
|
|
|
|
class CuratedOnboardingNotifyAdminNewApplicationPipeline implements ShouldQueue
|
|
{
|
|
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
|
|
|
|
public $cr;
|
|
|
|
/**
|
|
* Create a new job instance.
|
|
*/
|
|
public function __construct(CuratedRegister $cr)
|
|
{
|
|
$this->cr = $cr;
|
|
}
|
|
|
|
/**
|
|
* Execute the job.
|
|
*/
|
|
public function handle(): void
|
|
{
|
|
if(!config('instance.curated_registration.notify.admin.on_verify_email.enabled')) {
|
|
return;
|
|
}
|
|
|
|
config('instance.curated_registration.notify.admin.on_verify_email.bundle') ?
|
|
$this->handleBundled() :
|
|
$this->handleUnbundled();
|
|
}
|
|
|
|
protected function handleBundled()
|
|
{
|
|
$cr = $this->cr;
|
|
Storage::append('conanap.json', json_encode([
|
|
'id' => $cr->id,
|
|
'email' => $cr->email,
|
|
'created_at' => $cr->created_at,
|
|
'updated_at' => $cr->updated_at,
|
|
]));
|
|
}
|
|
|
|
protected function handleUnbundled()
|
|
{
|
|
$cr = $this->cr;
|
|
if($aid = config_cache('instance.admin.pid')) {
|
|
$admin = User::whereProfileId($aid)->first();
|
|
if($admin && $admin->email) {
|
|
Mail::to($admin->email)->send(new CuratedRegisterNotifyAdmin($cr));
|
|
}
|
|
}
|
|
}
|
|
}
|