Update LikePipeline

This commit is contained in:
Daniel Supernault 2019-05-03 19:18:47 -06:00
parent 87376446fe
commit f92b259232
No known key found for this signature in database
GPG key ID: 0DEF1C662C9033F7
3 changed files with 10 additions and 14 deletions

View file

@ -69,19 +69,13 @@ class LikePipeline implements ShouldQueue
$notification->profile_id = $status->profile_id; $notification->profile_id = $status->profile_id;
$notification->actor_id = $actor->id; $notification->actor_id = $actor->id;
$notification->action = 'like'; $notification->action = 'like';
$notification->message = $like->toText(); $notification->message = $like->toText($status->in_reply_to_id ? 'comment' : 'post');
$notification->rendered = $like->toHtml(); $notification->rendered = $like->toHtml($status->in_reply_to_id ? 'comment' : 'post');
$notification->item_id = $status->id; $notification->item_id = $status->id;
$notification->item_type = "App\Status"; $notification->item_type = "App\Status";
$notification->save(); $notification->save();
Cache::forever('notification.'.$notification->id, $notification);
$redis = Redis::connection();
$key = config('cache.prefix').':user.'.$status->profile_id.'.notifications';
$redis->lpush($key, $notification->id);
} catch (Exception $e) { } catch (Exception $e) {
Log::error($e);
} }
} }
} }

View file

@ -27,19 +27,20 @@ class Like extends Model
return $this->belongsTo(Status::class); return $this->belongsTo(Status::class);
} }
public function toText() public function toText($type = 'post')
{ {
$actorName = $this->actor->username; $actorName = $this->actor->username;
$msg = $type == 'post' ? __('notification.likedPhoto') : __('notification.likedComment');
return "{$actorName} ".__('notification.likedPhoto'); return "{$actorName} ".$msg;
} }
public function toHtml() public function toHtml($type = 'post')
{ {
$actorName = $this->actor->username; $actorName = $this->actor->username;
$actorUrl = $this->actor->url(); $actorUrl = $this->actor->url();
$msg = $type == 'post' ? __('notification.likedPhoto') : __('notification.likedComment');
return "<a href='{$actorUrl}' class='profile-link'>{$actorName}</a> ". return "<a href='{$actorUrl}' class='profile-link'>{$actorName}</a> ".$msg;
__('notification.likedPhoto');
} }
} }

View file

@ -2,7 +2,8 @@
return [ return [
'likedPhoto' => 'liked your photo.', 'likedPhoto' => 'liked your post.',
'likedComment' => 'liked your comment.',
'startedFollowingYou' => 'started following you.', 'startedFollowingYou' => 'started following you.',
'commented' => 'commented on your post.', 'commented' => 'commented on your post.',
'mentionedYou' => 'mentioned you.', 'mentionedYou' => 'mentioned you.',