* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ declare(strict_types=1); namespace PrestaShopBundle\Controller\Admin\Sell\Customer; use PrestaShop\PrestaShop\Core\Grid\Definition\Factory\OutstandingGridDefinitionFactory; use PrestaShop\PrestaShop\Core\Search\Filters\OutstandingFilters; use PrestaShopBundle\Controller\Admin\FrameworkBundleAdminController; use PrestaShopBundle\Security\Annotation\AdminSecurity; use PrestaShopBundle\Service\Grid\ResponseBuilder; use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\HttpFoundation\Request; /** * Class OutstandingController manages "Sell > Customers > Outstandings" page. */ class OutstandingController extends FrameworkBundleAdminController { /** * Show list of outstandings. * * @AdminSecurity("is_granted('read', request.get('_legacy_controller'))") * * @param Request $request * @param OutstandingFilters $filters */ public function indexAction(Request $request, OutstandingFilters $filters) { $grid = $this->get('prestashop.core.grid.factory.outstanding')->getGrid($filters); return $this->render( '@PrestaShop/Admin/Sell/Outstanding/index.html.twig', [ 'layoutHeaderToolbarBtn' => [], 'outstandingGrid' => $this->presentGrid($grid), 'layoutTitle' => $this->trans('Outstanding', 'Admin.Navigation.Menu'), 'enableSidebar' => true, 'help_link' => $this->generateSidebarLink($request->attributes->get('_legacy_controller')), ] ); } /** * @AdminSecurity("is_granted('read', request.get('_legacy_controller'))", redirectRoute="admin_outstanding_index") * * @param Request $request * * @return RedirectResponse */ public function searchAction(Request $request) { /** @var ResponseBuilder $responseBuilder */ $responseBuilder = $this->get('prestashop.bundle.grid.response_builder'); return $responseBuilder->buildSearchResponse( $this->get('prestashop.core.grid.definition.factory.outstanding'), $request, OutstandingGridDefinitionFactory::GRID_ID, 'admin_outstanding_index' ); } }