/** * @param ConfigFactory $configFactory */ public function __construct(ConfigFactory $configFactory) { $this->configFactory = $configFactory; $this->config = $this->configFactory->create(); $this->root = str_replace('\\', '/', $this->config->getMagentoBasePath()); foreach ($this->config->getMagentoFilePermissions() as $code => $config) { if (!$this->isAbsolute($config['path'])) { $this->directories[$code]['path'] = $this->makeAbsolute($config['path']); } } }
/** * @return JsonModel */ public function indexAction() { $this->logger->clear(); $data = Json::decode($this->getRequest()->getContent(), Json::TYPE_ARRAY); $this->config->setConfigData($data); $this->config->install(); $this->setupFactory->setConfig($this->config->getConfigData()); $moduleNames = array_keys($this->moduleList); foreach ($moduleNames as $moduleName) { $setup = $this->setupFactory->create($moduleName); $setup->applyUpdates(); $this->logger->logSuccess($moduleName); } $this->logger->logSuccess('Artifact'); // Set data to config $setup->addConfigData('web/seo/use_rewrites', isset($data['config']['rewrites']['allowed']) ? $data['config']['rewrites']['allowed'] : 0); $setup->addConfigData('web/unsecure/base_url', isset($data['config']['address']['web']) ? $data['config']['address']['web'] : '{{unsecure_base_url}}'); $setup->addConfigData('web/secure/use_in_frontend', isset($data['config']['https']['front']) ? $data['config']['https']['front'] : 0); $setup->addConfigData('web/secure/base_url', isset($data['config']['address']['web']) ? $data['config']['address']['web'] : '{{secure_base_url}}'); $setup->addConfigData('web/secure/use_in_adminhtml', isset($data['config']['https']['admin']) ? $data['config']['https']['admin'] : 0); $setup->addConfigData('general/locale/code', isset($data['store']['language']) ? $data['store']['language'] : 'en_US'); $setup->addConfigData('general/locale/timezone', isset($data['store']['timezone']) ? $data['store']['timezone'] : 'America/Los_Angeles'); $currencyCode = isset($data['store']['currency']) ? $data['store']['currency'] : 'USD'; $setup->addConfigData('currency/options/base', $currencyCode); $setup->addConfigData('currency/options/default', $currencyCode); $setup->addConfigData('currency/options/allow', $currencyCode); // Create administrator account $this->adminAccountFactory->setConfig($this->config->getConfigData()); $adminAccount = $this->adminAccountFactory->create($setup); $adminAccount->save(); $this->logger->logSuccess('Admin User'); if ($data['config']['encrypt']['type'] == 'magento') { $key = md5($this->random->getRandomString(10)); } else { $key = $data['config']['encrypt']['key']; } $this->config->replaceTmpEncryptKey($key); $this->config->replaceTmpInstallDate(date('r')); $phpPath = $this->phpExecutablePath(); exec($phpPath . 'php -f ' . escapeshellarg($this->systemConfig->create()->getMagentoBasePath() . '/dev/shell/run_data_fixtures.php'), $output, $exitCode); if ($exitCode !== 0) { $outputMsg = implode(PHP_EOL, $output); $this->logger->logError(new \Exception('Data Update Failed with Exit Code: ' . $exitCode . PHP_EOL . $outputMsg)); $this->json->setVariable('success', false); } else { $this->logger->logSuccess('Data Updates'); $this->json->setVariable('success', true); } $this->json->setVariable('key', $key); return $this->json; }
/** * @param Filesystem $filesystem * @param ConfigFactory $configFactory */ public function __construct(Filesystem $filesystem, ConfigFactory $configFactory) { $this->filesystem = $filesystem; $this->configFactory = $configFactory; $this->config = $this->configFactory->create(); }
/** * @param FileIteratorFactory $iteratorFactory * @param ConfigFactory $configFactory */ public function __construct(FileIteratorFactory $iteratorFactory, ConfigFactory $configFactory) { $this->iteratorFactory = $iteratorFactory; $this->configFactory = $configFactory; $this->config = $this->configFactory->create(); }
/** * @param ConfigFactory $configFactory * @param string $schemaName */ public function __construct(ConfigFactory $configFactory, $schemaName = 'module.xsd') { $this->configFactory = $configFactory; $this->config = $this->configFactory->create(); $this->schemaName = $schemaName; }