<?php

    namespace Notification\Users;

    use Notification;
    require_once 'Notification.php';

    class PostReplyNotification extends \Notification
    {
        public function __construct(array $data)
        {
            $data['type'] = 'users.repliedPost';
            parent::__construct($data);
        }

        public function getNotificationLink()
        {
            return '/user/' . $this->recipient->getUsername() . '/post/' . $this->parameters;
        }

        public function getNotificationImage()
        {
            return $this->sender->getProfilePicture();
        }

        public function messageForNotification(Notification $notification)
        {
            return ['line' => 'users.repliedPost.single', 'attributes' => [$this->sender->getName()]];
        }

        public function messageForNotifications(array $notifications, $realCount = 0)
        {
            if ($realCount === 0) {
                $realCount = count($notifications);
            }

            if ($realCount < 5) {
                $names = $this->manyNames($notifications);
                return ['line' => 'users.replied.multiple', 'attributes' => [$names]];
            } else {
                $names = $this->manyNamesCutoff($notifications, $realCount);
                return ['line' => 'users.replied.many', 'attributes' => [$names]];
            }
        }

    }