![]() 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/cartforge.co/vendor/magento/module-url-rewrite/Block/Cms/Page/Edit/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\UrlRewrite\Block\Cms\Page\Edit; /** * Edit form for CMS page URL rewrites * * @SuppressWarnings(PHPMD.DepthOfInheritance) * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ class Form extends \Magento\UrlRewrite\Block\Edit\Form { /** * @var \Magento\Cms\Model\PageFactory */ protected $_pageFactory; /** * @var \Magento\CmsUrlRewrite\Model\CmsPageUrlPathGenerator */ protected $cmsPageUrlPathGenerator; /** * @param \Magento\Backend\Block\Widget\Context $context * @param \Magento\Framework\Registry $registry * @param \Magento\Framework\Data\FormFactory $formFactory * @param \Magento\UrlRewrite\Model\OptionProvider $optionProvider * @param \Magento\UrlRewrite\Model\UrlRewriteFactory $rewriteFactory * @param \Magento\Store\Model\System\Store $systemStore * @param \Magento\Backend\Helper\Data $adminhtmlData * @param \Magento\Cms\Model\PageFactory $pageFactory * @param \Magento\CmsUrlRewrite\Model\CmsPageUrlPathGenerator $cmsPageUrlPathGenerator * @param array $data * * @SuppressWarnings(PHPMD.ExcessiveParameterList) */ public function __construct( \Magento\Backend\Block\Widget\Context $context, \Magento\Framework\Registry $registry, \Magento\Framework\Data\FormFactory $formFactory, \Magento\UrlRewrite\Model\OptionProvider $optionProvider, \Magento\UrlRewrite\Model\UrlRewriteFactory $rewriteFactory, \Magento\Store\Model\System\Store $systemStore, \Magento\Backend\Helper\Data $adminhtmlData, \Magento\Cms\Model\PageFactory $pageFactory, \Magento\CmsUrlRewrite\Model\CmsPageUrlPathGenerator $cmsPageUrlPathGenerator, array $data = [] ) { $this->_pageFactory = $pageFactory; parent::__construct( $context, $registry, $formFactory, $optionProvider, $rewriteFactory, $systemStore, $adminhtmlData, $data ); $this->cmsPageUrlPathGenerator = $cmsPageUrlPathGenerator; } /** * Form post init * * @param \Magento\Framework\Data\Form $form * @return \Magento\UrlRewrite\Block\Cms\Page\Edit\Form */ protected function _formPostInit($form) { $cmsPage = $this->_getCmsPage(); $form->setAction( $this->_adminhtmlData->getUrl( 'adminhtml/*/save', ['id' => $this->_getModel()->getId(), 'cms_page' => $cmsPage->getId()] ) ); // Fill request path and target path elements /** @var $requestPath \Magento\Framework\Data\Form\Element\AbstractElement */ $requestPath = $this->getForm()->getElement('request_path'); /** @var $targetPath \Magento\Framework\Data\Form\Element\AbstractElement */ $targetPath = $this->getForm()->getElement('target_path'); $model = $this->_getModel(); if (!$model->getId()) { $sessionData = $this->_getSessionData(); if (!isset($sessionData['request_path'])) { $requestPath->setValue($this->cmsPageUrlPathGenerator->getUrlPath($cmsPage)); } $targetPath->setValue($this->cmsPageUrlPathGenerator->getCanonicalUrlPath($cmsPage)); } $targetPath->setData('disabled', true); return $this; } /** * Get catalog entity associated stores * * @return array * @throws \Magento\Framework\Exception\LocalizedException */ protected function _getEntityStores() { $cmsPage = $this->_getCmsPage(); $entityStores = []; // showing websites that only associated to CMS page if ($this->_getCmsPage()->getId()) { $entityStores = (array)$cmsPage->getResource()->lookupStoreIds($cmsPage->getId()); $this->_requireStoresFilter = !in_array(0, $entityStores); if (!$entityStores) { throw new \Magento\Framework\Exception\LocalizedException( __('Please assign a website to the selected CMS page.') ); } } return $entityStores; } /** * Get CMS page model instance * * @return \Magento\Cms\Model\Page */ protected function _getCmsPage() { if (!$this->hasData('cms_page')) { $this->setCmsPage($this->_pageFactory->create()); } return $this->getCmsPage(); } }