浏览代码

Merge pull request #3901 from pixelfed/staging

Update DeleteAccountPipeline, dispatch on low queue
daniel 2 年之前
父节点
当前提交
cfc1067763
共有 2 个文件被更改,包括 7 次插入1 次删除
  1. 5 1
      app/Http/Controllers/SettingsController.php
  2. 2 0
      app/Jobs/DeletePipeline/DeleteAccountPipeline.php

+ 5 - 1
app/Http/Controllers/SettingsController.php

@@ -23,6 +23,7 @@ use App\Http\Controllers\Settings\{
 };
 use App\Jobs\DeletePipeline\DeleteAccountPipeline;
 use App\Jobs\MediaPipeline\MediaSyncLicensePipeline;
+use App\Services\AccountService;
 
 class SettingsController extends Controller
 {
@@ -136,6 +137,8 @@ class SettingsController extends Controller
 		abort_if($user->is_admin, 403);
 		$profile = $user->profile;
 		$ts = Carbon::now()->addMonth();
+		$user->email = $user->id;
+		$user->password = '';
 		$user->status = 'delete';
 		$profile->status = 'delete';
 		$user->delete_after = $ts;
@@ -143,8 +146,9 @@ class SettingsController extends Controller
 		$user->save();
 		$profile->save();
 		Cache::forget('profiles:private');
+		AccountService::del($profile->id);
 		Auth::logout();
-		DeleteAccountPipeline::dispatch($user)->onQueue('high');
+		DeleteAccountPipeline::dispatch($user)->onQueue('low');
 		return redirect('/');
 	}
 

+ 2 - 0
app/Jobs/DeletePipeline/DeleteAccountPipeline.php

@@ -57,6 +57,8 @@ class DeleteAccountPipeline implements ShouldQueue
 
 	protected $user;
 
+	public $timeout = 900;
+
 	public function __construct(User $user)
 	{
 		$this->user = $user;