| | |
| | | |
| | | use Exception; |
| | | use JVBase\JVB; |
| | | use JVBase\managers\CacheManager; |
| | | use JVBase\managers\Cache; |
| | | use JVBase\rest\RestRouteManager; |
| | | use WP_REST_Request; |
| | | use WP_REST_Response; |
| | |
| | | parent::__construct(); |
| | | |
| | | if (JVB_TESTING) { |
| | | $this->cache->clear(); |
| | | $this->cache->flush(); |
| | | } |
| | | } |
| | | |
| | |
| | | $ids = $request->get_param('ids'); |
| | | $limit = intval($request->get_param('limit')); |
| | | // Use base class user-specific header checking |
| | | $cache_check = $this->checkUserHeaders($request, $user_id, 'queue'); |
| | | $key = $this->cache->generateKey(['user'=> $user_id, 'status'=> $status, 'ids'=> $ids, 'limit'=> $limit]); |
| | | $cache_check = $this->checkHeaders($request, $key); |
| | | if ($cache_check) { |
| | | return $cache_check; |
| | | } |
| | |
| | | $result = $this->processQueueAction($action, $operations, $user_id); |
| | | |
| | | if ($result['success']) { |
| | | CacheManager::updateTimestamp("user_{$user_id}"); |
| | | Cache::touch($user_id); |
| | | } |
| | | |
| | | return new WP_REST_Response($result); |