Loading src/Controller/ProjectBrowserEndpointController.php +8 −7 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ namespace Drupal\project_browser\Controller; use Drupal\Component\Serialization\Json; use Drupal\Component\Utility\Xss; use Drupal\Core\Cache\CacheableResponseInterface; use Drupal\Core\Controller\ControllerBase; Loading Loading @@ -81,37 +82,37 @@ class ProjectBrowserEndpointController extends ControllerBase { // Page and limit are checked against a valid list in in_array, below. 'page' => (int) $request->query->get('page', 0), 'limit' => (int) $request->query->get('limit', 12), 'sort' => Xss::filter($request->query->get('sort')), 'sort' => Xss::filter($request->query->get('sort', '')), 'direction' => in_array($direction, ['ASC', 'DESC']) ? $direction : 'ASC', ]; $title = $request->query->get('search', NULL); $title = $request->query->get('search'); if ($title) { $query['search'] = Xss::filter($title); } $categories = $request->query->get('categories', NULL); $categories = $request->query->get('categories'); if ($categories) { $query['categories'] = Xss::filter($categories); } $maintenance_status = $request->query->get('maintenance_status', NULL); $maintenance_status = $request->query->get('maintenance_status'); if ($maintenance_status) { $query['maintenance_status'] = Xss::filter($maintenance_status); } $development_status = $request->query->get('development_status', NULL); $development_status = $request->query->get('development_status'); if ($development_status) { $query['development_status'] = Xss::filter($development_status); } $security_advisory_coverage = $request->query->get('security_advisory_coverage', NULL); $security_advisory_coverage = $request->query->get('security_advisory_coverage'); if ($security_advisory_coverage) { $query['security_advisory_coverage'] = Xss::filter($security_advisory_coverage); } // Cache only exact query, down to the page number. $cache_key = 'project_browser:projects:' . md5(json_encode($query)); $cache_key = 'project_browser:projects:' . md5(Json::encode($query)); if ($projects = $this->cacheBin->get($cache_key)) { $projects = $projects->data; } Loading Loading
src/Controller/ProjectBrowserEndpointController.php +8 −7 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ namespace Drupal\project_browser\Controller; use Drupal\Component\Serialization\Json; use Drupal\Component\Utility\Xss; use Drupal\Core\Cache\CacheableResponseInterface; use Drupal\Core\Controller\ControllerBase; Loading Loading @@ -81,37 +82,37 @@ class ProjectBrowserEndpointController extends ControllerBase { // Page and limit are checked against a valid list in in_array, below. 'page' => (int) $request->query->get('page', 0), 'limit' => (int) $request->query->get('limit', 12), 'sort' => Xss::filter($request->query->get('sort')), 'sort' => Xss::filter($request->query->get('sort', '')), 'direction' => in_array($direction, ['ASC', 'DESC']) ? $direction : 'ASC', ]; $title = $request->query->get('search', NULL); $title = $request->query->get('search'); if ($title) { $query['search'] = Xss::filter($title); } $categories = $request->query->get('categories', NULL); $categories = $request->query->get('categories'); if ($categories) { $query['categories'] = Xss::filter($categories); } $maintenance_status = $request->query->get('maintenance_status', NULL); $maintenance_status = $request->query->get('maintenance_status'); if ($maintenance_status) { $query['maintenance_status'] = Xss::filter($maintenance_status); } $development_status = $request->query->get('development_status', NULL); $development_status = $request->query->get('development_status'); if ($development_status) { $query['development_status'] = Xss::filter($development_status); } $security_advisory_coverage = $request->query->get('security_advisory_coverage', NULL); $security_advisory_coverage = $request->query->get('security_advisory_coverage'); if ($security_advisory_coverage) { $query['security_advisory_coverage'] = Xss::filter($security_advisory_coverage); } // Cache only exact query, down to the page number. $cache_key = 'project_browser:projects:' . md5(json_encode($query)); $cache_key = 'project_browser:projects:' . md5(Json::encode($query)); if ($projects = $this->cacheBin->get($cache_key)) { $projects = $projects->data; } Loading