/**
  * Define your route model bindings, pattern filters, etc.
  *
  * @param  \Illuminate\Routing\Router $router
  *
  * @return void
  */
 public function boot(Router $router)
 {
     /**
      * Route model binding
      */
     $router->bind('category', function ($slug) {
         return app('CategoryRepository')->findBySlugOrFail($slug);
     });
     $router->bind('user', function ($username) {
         return app('UserRepository')->findBySlugOrFail($username);
     });
     $router->bind('sticker', function ($slug) {
         return app('StickerRepository')->findBySlugOrFail($slug);
     });
     $router->bind('task', function ($slug) {
         return app('TaskRepository')->findBySlugOrFail($slug);
     });
     $router->bind('submission', function ($id) {
         return \Stickable\Models\Submission::findOrFail($id);
     });
     $router->bind('post', function ($id) {
         return \Stickable\Models\Post::findOrFail($id);
     });
     $router->bind('comment', function ($id) {
         return \Stickable\Models\Comment::findOrFail($id);
     });
     $router->bind('notification', function ($id) {
         return \Stickable\Models\Notification::findOrFail($id);
     });
     $router->bind('event', function ($id) {
         return \Stickable\Models\EventLog::findOrFail($id);
     });
     $router->bind('todo', function ($id) {
         return \Stickable\Models\ToDo::findOrFail($id);
     });
     parent::boot($router);
 }
 public function getNotifications(User $user)
 {
     $results = DB::select("\n                SELECT\n                    *,\n                    COUNT(*) AS groupCount,\n                    GROUP_CONCAT(DISTINCT fromUserId SEPARATOR ',') AS fromUserIds\n                FROM\n                    notifications\n                WHERE\n                    userId = ?\n                AND\n                    seenAt IS NULL\n                GROUP BY\n                    " . implode(',', $this->groupFields) . "\n                ORDER BY\n                    id DESC\n            ", [$user->id]);
     $notifications = Notification::hydrate($results);
     return $notifications;
 }