Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Suggest.php
Go to the documentation of this file.
1 <?php
7 
8 use Magento\Framework\App\Action\HttpGetActionInterface as HttpGetActionInterface;
13 
14 class Suggest extends Action implements HttpGetActionInterface
15 {
19  private $autocomplete;
20 
25  public function __construct(
26  Context $context,
27  AutocompleteInterface $autocomplete
28  ) {
29  $this->autocomplete = $autocomplete;
30  parent::__construct($context);
31  }
32 
36  public function execute()
37  {
38  if (!$this->getRequest()->getParam('q', false)) {
40  $resultRedirect = $this->resultFactory->create(ResultFactory::TYPE_REDIRECT);
41  $resultRedirect->setUrl($this->_url->getBaseUrl());
42  return $resultRedirect;
43  }
44 
45  $autocompleteData = $this->autocomplete->getItems();
46  $responseData = [];
47  foreach ($autocompleteData as $resultItem) {
48  $responseData[] = $resultItem->toArray();
49  }
51  $resultJson = $this->resultFactory->create(ResultFactory::TYPE_JSON);
52  $resultJson->setData($responseData);
53  return $resultJson;
54  }
55 }
__construct(Context $context, AutocompleteInterface $autocomplete)
Definition: Suggest.php:25