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/app/code/Kaliop/Styleguide/Setup/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/app/code/Kaliop/Styleguide/Setup/InstallData.php
<?php
/**
 * Copyright (c) 2019 Kaliop Digital Commerce (https://digitalcommerce.kaliop.com) All Rights Reserved.
 * https://opensource.org/licenses/OSL-3.0  Open Software License (OSL 3.0)
 * kaliop_styleguide_m2
 * Julien TRAJMAN <[email protected]> <[email protected]>
 */

namespace Kaliop\Styleguide\Setup;

use Kaliop\Styleguide\Model\Config;

use Magento\Cms\Api\PageRepositoryInterface;
use Magento\Cms\Api\Data\PageInterface;
use Magento\Cms\Api\Data\PageInterfaceFactory;
use Magento\Framework\Setup\InstallDataInterface;
use Magento\Framework\Setup\ModuleContextInterface;
use Magento\Framework\Setup\ModuleDataSetupInterface;

use Psr\Log\LoggerInterface;

/**
 * Class InstallData
 * @package Kaliop\Styleguide\Setup
 */
class InstallData implements InstallDataInterface
{
    /**
     * @var PageRepositoryInterface
     */
    private $pageRepository;
    /**
     * @var PageInterfaceFactory
     */
    private $pageFactory;
    /**
     * @var LoggerInterface
     */
    private $logger;

    /**
     * InstallData constructor.
     * @param PageRepositoryInterface $pageRepository
     * @param PageInterfaceFactory $pageInterfaceFactory
     * @param LoggerInterface $logger
     */
    public function __construct(
        PageRepositoryInterface $pageRepository,
        PageInterfaceFactory $pageInterfaceFactory,
        LoggerInterface $logger
    ) {

        $this->pageRepository = $pageRepository;
        $this->pageFactory = $pageInterfaceFactory;
        $this->logger = $logger;
    }

    /**
     * Installs data for a module
     *
     * @param ModuleDataSetupInterface $setup
     * @param ModuleContextInterface $context
     * @return void
     */
    public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
    {
        $this->createCmsPage();
    }

    /**
     * Create CMS page via installer
     */
    private function createCmsPage()
    {
        try {
            /** @var PageInterface $cmsPage */
            $cmsPage = $this->pageFactory->create();

            if (!$cmsPage->checkIdentifier(Config::KALIOP_STYLEGUIDE_IDENTIFIER, 0)) {
                $cmsPage
                    ->setIdentifier(Config::KALIOP_STYLEGUIDE_IDENTIFIER)
                    ->setTitle('Style Guide')
                    ->setContent('')
                    ->setPageLayout('1column')
                    ->setIsActive(true)
                    ->setData('stores', [0]);

                $this->pageRepository->save($cmsPage);
            }
        } catch (\Exception $e) {
            $this->logger->critical($e->getMessage());
        }
    }
}

Spamworldpro Mini