/**
  * Subscribe to category.
  *
  * @return Response
  */
 public function subscribe()
 {
     if (!Input::has('id')) {
         return $this->respondInvalidApi('Please provide category id');
     }
     $user = Auth::user();
     $id = Input::get('id');
     if (is_array($id)) {
         $categories = Category::findMany($id)->filter(function ($category) {
             return $category->parent_id != 0;
         });
         if ($categories->count() > 0) {
             $user->subscriptions()->sync($id);
         }
         return $this->respondNoContent();
     }
     $category = Category::find(Input::get('id'));
     if (!$category) {
         return $this->respondNotFound('Post not found');
     }
     // if already in subscriptions
     if ($user->subscriptions->filter(function ($subscription) use($category) {
         return $category->id == $subscription->id;
     })->count() >= 1) {
         return $this->respondNoContent();
     }
     if ($category->parent_id == 0) {
         return $this->respondInvalidApi('Cant subscribe to High level categories');
     }
     $user->subscriptions()->attach($category->id);
     $user->save();
     $category->updateCount('subscriptions');
     return $this->respondNoContent();
 }