Jake Vanderwerf
2026-07-05 fff721dd185f5b97f7ae7a6e64189e55887ff590
inc/rest/routes/FavouritesRoutes.php
@@ -54,7 +54,6 @@
      Route::for('favourites')
         ->get([$this, 'getFavourites'])
         ->args([
            'user' => 'integer|required',
            'type' => 'string',
            'include_all' => 'boolean',
         ])
@@ -62,7 +61,6 @@
         ->rateLimit(30)
         ->post([$this, 'handleFavourite'])
         ->args([
            'user' => 'integer|required',
            'action' => 'string|required|enum:add,remove,toggle,batch,note',
            'type' => 'string',
            'target_id' => 'integer',
@@ -81,7 +79,6 @@
         ->rateLimit(30)
         ->post([$this, 'handleList'])
         ->args([
            'user' => 'integer|required',
            'id' => 'string|required',
            'action' => 'string|required|enum:create,update,delete,share,unshare,add_items,remove_items',
            'list_id' => 'integer',
@@ -95,7 +92,6 @@
      // Favourite counts
      Route::for('favourites/counts')
         ->get([$this, 'getFavouriteCounts'])
         ->args(['user' => 'integer|required'])
         ->auth(PermissionHandler::combine(['user', ['actionNonce' => 'favourites-']]))
         ->register();
   }
@@ -105,9 +101,9 @@
    */
   public function getFavourites(WP_REST_Request $request): WP_REST_Response
   {
      $user_id = absint($request->get_param('user'));
      $user_id = get_current_user_id();
      if (!$this->userCheck($user_id)) {
      if (!$user_id) {
         return $this->unauthorized();
      }
@@ -132,11 +128,8 @@
   public function handleFavourite(WP_REST_Request $request): WP_REST_Response
   {
      $params = $request->get_params();
      $user_id = absint($params['user']??0);
      $user_id = get_current_user_id();
      if (!$this->userCheck($user_id)) {
         return $this->unauthorized();
      }
      $action = strtolower(sanitize_text_field($params['action']));
      $action = in_array($action, ['add', 'remove']) ? $action : false;
      if (!$action) {
@@ -171,11 +164,8 @@
   public function getLists(WP_REST_Request $request): WP_REST_Response
   {
      $params = $request->get_params();
      $user_id = absint($params['user']);
      $user_id = get_current_user_id();
      if (!$this->userCheck($user_id)) {
         return $this->unauthorized();
      }
      $args = $this->buildParams($request);
      $args['per_page'] = 20;
@@ -209,11 +199,8 @@
   public function getFavouriteCounts(WP_REST_Request $request): WP_REST_Response
   {
      $user_id = absint($request->get_param('user'));
      $user_id = get_current_user_id();
      if (!$this->userCheck($user_id)) {
         return $this->unauthorized();
      }
      $counts = JVB()->favourites()->getFavouriteCounts($user_id);
@@ -528,8 +515,11 @@
   protected function buildParams(WP_REST_Request $request): array
   {
      $data = $request->get_params();
      $where = ['user_id' => absint($data['user'])];
      $userID = get_current_user_id();
      if(!$userID) {
         return [];
      }
      $where = ['user_id' => $userID];
      if (!empty($data['content']) && $data['content'] !== 'all') {
         $where['type'] = BASE . $data['content'];
      }
@@ -1652,7 +1642,7 @@
    */
   public function handleList(WP_REST_Request $request): WP_REST_Response
   {
      $user_id = absint($request->get_param('user'));
      $user_id = get_current_user_id();
      $operation_id = sanitize_text_field($request->get_param('id'));
      $action = sanitize_text_field($request->get_param('action'));