Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/old/vendor/mirasvit/module-core/src/Core/Controller/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/vendor/mirasvit/module-core/src/Core/Controller/Router.php
<?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-core
 * @version   1.4.31
 * @copyright Copyright (C) 2023 Mirasvit (https://mirasvit.com/)
 */



namespace Mirasvit\Core\Controller;

use Magento\Framework\App\ActionFactory;
use Magento\Framework\App\RequestInterface;
use Magento\Framework\App\ResponseInterface;
use Magento\Framework\App\RouterInterface;
use Magento\Framework\DataObject;
use Magento\Framework\Event\ManagerInterface as EventManagerInterface;
use Magento\Framework\Url;
use Mirasvit\Core\Api\UrlRewriteHelperInterface;

class Router implements RouterInterface
{
    /**
     * @var ActionFactory
     */
    protected $actionFactory;

    /**
     * @var EventManagerInterface
     */
    protected $eventManager;

    /**
     * @var UrlRewriteHelperInterface
     */
    protected $urlRewrite;

    /**
     * @var ResponseInterface
     */
    protected $response;

    /**
     * Router constructor.
     * @param ActionFactory $actionFactory
     * @param EventManagerInterface $eventManager
     * @param ResponseInterface $response
     * @param UrlRewriteHelperInterface $urlRewrite
     */
    public function __construct(
        ActionFactory $actionFactory,
        EventManagerInterface $eventManager,
        ResponseInterface $response,
        UrlRewriteHelperInterface $urlRewrite
    ) {
        $this->actionFactory = $actionFactory;
        $this->eventManager  = $eventManager;
        $this->response      = $response;
        $this->urlRewrite    = $urlRewrite;
    }

    /**
     * {@inheritdoc}
     */
    public function match(RequestInterface $request)
    {
        /** @var \Magento\Framework\App\Request\Http $request */

        $identifier = trim($request->getPathInfo(), '/');

        $this->eventManager->dispatch(
            'core_controller_router_match_before',
            [
                'router'    => $this,
                'condition' => new DataObject(['identifier' => $identifier, 'continue' => true]),
            ]
        );

        $pathInfo = $request->getPathInfo();

        $result = $this->urlRewrite->match($pathInfo);

        if ($result) {
            if ($result->getData('forwardUrl')) {
                $this->response->setRedirect($result->getData('forwardUrl'));
                $request->setDispatched(true);

                return $this->actionFactory->create('Magento\Framework\App\Action\Redirect');
            }

            $params = [];
            if ($result->getEntityId()) {
                $params['id'] = $result->getEntityId();
            }
            $params = array_merge($params, $result->getActionParams());

            $request
                ->setModuleName($result->getModuleName())
                ->setControllerName($result->getControllerName())
                ->setActionName($result->getActionName())
                ->setParams($params)
                ->setAlias(Url::REWRITE_REQUEST_PATH_ALIAS, $identifier);

            return $this->actionFactory->create(
                'Magento\Framework\App\Action\Forward'
//                ['request' => $request]
            );
        }

        return false;
    }
}

Spamworldpro Mini