From b5dbff40e3f3de6a54876b991246ee7cd0091eb2 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Tue, 29 May 2018 20:58:41 -0600 Subject: [PATCH] Add FollowPipeline job --- app/Jobs/FollowPipeline/FollowPipeline.php | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 app/Jobs/FollowPipeline/FollowPipeline.php diff --git a/app/Jobs/FollowPipeline/FollowPipeline.php b/app/Jobs/FollowPipeline/FollowPipeline.php new file mode 100644 index 000000000..6688575f3 --- /dev/null +++ b/app/Jobs/FollowPipeline/FollowPipeline.php @@ -0,0 +1,62 @@ +follower = $follower; + } + + /** + * Execute the job. + * + * @return void + */ + public function handle() + { + $follower = $this->follower; + $actor = $follower->actor; + $target = $follower->target; + + try { + + $notification = new Notification; + $notification->profile_id = $target->id; + $notification->actor_id = $actor->id; + $notification->action = 'follow'; + $notification->message = $follower->toText(); + $notification->rendered = $follower->toHtml(); + $notification->save(); + + Cache::forever('notification.' . $notification->id, $notification); + + $redis = Redis::connection(); + + $nkey = config('cache.prefix').':user.' . $target->id . '.notifications'; + $redis->lpush($nkey, $notification->id); + + } catch (Exception $e) { + Log::error($e); + } + } +}