|
Apache/2.4.41 (Ubuntu) Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) server ip : 62.171.164.128 | your ip : 127.0.0.1 safemode OFF > / home / Mirasvit / Search / Block / Index / |
Filename | /home/Mirasvit/Search/Block/Index/Base.php |
Size | 2.75 kb |
Permission | rwxr-xr-x |
Owner | root : root |
Create time | 01-Jul-2024 20:52 |
Last modified | 06-Apr-2021 18:06 |
Last accessed | 21-Aug-2025 20:34 |
Actions | edit | rename | delete | download (gzip) |
View | text | code | image |
<?php
/**
* Mirasvit
*
* This source file is subject to the Mirasvit Software License, which is available at https://mirasvit.com/license/.
* Do not edit or add to this file if you wish to upgrade the to newer versions in the future.
* If you wish to customize this module for your needs.
* Please refer to http://www.magentocommerce.com for more information.
*
* @category Mirasvit
* @package mirasvit/module-search-ultimate
* @version 2.0.25
* @copyright Copyright (C) 2021 Mirasvit (https://mirasvit.com/)
*/
namespace Mirasvit\Search\Block\Index;
use Magento\Framework\ObjectManagerInterface;
use Magento\Framework\View\Element\Template;
use Magento\Framework\View\Element\Template\Context;
use Mirasvit\Search\Api\Data\IndexInterface;
use Mirasvit\Search\Service\IndexService;
/**
* @method IndexInterface getIndex()
*/
class Base extends Template
{
private $indexService;
private $objectManager;
public function __construct(
IndexService $indexService,
ObjectManagerInterface $objectManager,
Context $context
) {
$this->indexService = $indexService;
$this->objectManager = $objectManager;
parent::__construct($context);
}
/**
* {@inheritdoc}
*/
public function stripTags($data, $allowableTags = null, $allowHtmlEntities = false)
{
$data = preg_replace('/^\s*\/\/<!\[CDATA\[([\s\S]*)\/\/\]\]>\s*\z/', '$1', $data);
$data = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $data);
$data = preg_replace('#<style(.*?)>(.*?)</style>#is', '', $data);
$data = str_replace('>', '> ', $data); #adding space after tag <h1>..</h1><p>...</p>
return parent::stripTags($data, $allowableTags, $allowHtmlEntities);
}
/**
* Truncate text
*
* @param string $string
*
* @return string
*/
public function truncate($string)
{
if (strlen($string) > 512) {
$string = strip_tags($string);
$string = substr($string, 0, 512) . '...';
}
return $string;
}
/**
* @return ObjectManagerInterface
*/
public function getObjectManager()
{
return $this->objectManager;
}
/**
* Return pager html for current collection.
* @return string
*/
public function getPager()
{
$pager = $this->getChildBlock('pager');
if (!$pager) {
return '';
}
if (!$pager->getCollection()) {
$pager->setCollection($this->getCollection());
}
return $pager->toHtml();
}
/**
* @return \Magento\Framework\Data\Collection
*/
public function getCollection()
{
return $this->indexService->getSearchCollection($this->getIndex());
}
}
/**
* Mirasvit
*
* This source file is subject to the Mirasvit Software License, which is available at https://mirasvit.com/license/.
* Do not edit or add to this file if you wish to upgrade the to newer versions in the future.
* If you wish to customize this module for your needs.
* Please refer to http://www.magentocommerce.com for more information.
*
* @category Mirasvit
* @package mirasvit/module-search-ultimate
* @version 2.0.25
* @copyright Copyright (C) 2021 Mirasvit (https://mirasvit.com/)
*/
namespace Mirasvit\Search\Block\Index;
use Magento\Framework\ObjectManagerInterface;
use Magento\Framework\View\Element\Template;
use Magento\Framework\View\Element\Template\Context;
use Mirasvit\Search\Api\Data\IndexInterface;
use Mirasvit\Search\Service\IndexService;
/**
* @method IndexInterface getIndex()
*/
class Base extends Template
{
private $indexService;
private $objectManager;
public function __construct(
IndexService $indexService,
ObjectManagerInterface $objectManager,
Context $context
) {
$this->indexService = $indexService;
$this->objectManager = $objectManager;
parent::__construct($context);
}
/**
* {@inheritdoc}
*/
public function stripTags($data, $allowableTags = null, $allowHtmlEntities = false)
{
$data = preg_replace('/^\s*\/\/<!\[CDATA\[([\s\S]*)\/\/\]\]>\s*\z/', '$1', $data);
$data = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $data);
$data = preg_replace('#<style(.*?)>(.*?)</style>#is', '', $data);
$data = str_replace('>', '> ', $data); #adding space after tag <h1>..</h1><p>...</p>
return parent::stripTags($data, $allowableTags, $allowHtmlEntities);
}
/**
* Truncate text
*
* @param string $string
*
* @return string
*/
public function truncate($string)
{
if (strlen($string) > 512) {
$string = strip_tags($string);
$string = substr($string, 0, 512) . '...';
}
return $string;
}
/**
* @return ObjectManagerInterface
*/
public function getObjectManager()
{
return $this->objectManager;
}
/**
* Return pager html for current collection.
* @return string
*/
public function getPager()
{
$pager = $this->getChildBlock('pager');
if (!$pager) {
return '';
}
if (!$pager->getCollection()) {
$pager->setCollection($this->getCollection());
}
return $pager->toHtml();
}
/**
* @return \Magento\Framework\Data\Collection
*/
public function getCollection()
{
return $this->indexService->getSearchCollection($this->getIndex());
}
}