Sonata\ProductBundle\Controller\Api\ProductController::getProductsAction PHP Method

getProductsAction() public method

Returns a paginated list of products.
public getProductsAction ( FOS\RestBundle\Request\ParamFetcherInterface $paramFetcher ) : Sonata\DatagridBundle\Pager\PagerInterface
$paramFetcher FOS\RestBundle\Request\ParamFetcherInterface
return Sonata\DatagridBundle\Pager\PagerInterface
    public function getProductsAction(ParamFetcherInterface $paramFetcher)
    {
        $supportedCriteria = array('enabled' => '');
        $page = $paramFetcher->get('page');
        $limit = $paramFetcher->get('count');
        $sort = $paramFetcher->get('orderBy');
        $criteria = array_intersect_key($paramFetcher->all(), $supportedCriteria);
        foreach ($criteria as $key => $value) {
            if (null === $value) {
                unset($criteria[$key]);
            }
        }
        if (!$sort) {
            $sort = array();
        } elseif (!is_array($sort)) {
            $sort = array($sort => 'asc');
        }
        return $this->productManager->getPager($criteria, $page, $limit, $sort);
    }