/** * Save backup from backup staging process * * @param object Enterprise_Staging_Model_Staging $staging * @param object Enterprise_Staging_Model_Staging_Log $log * * @return Enterprise_Staging_Model_Staging_Backup */ public function saveOnBackupRun(Enterprise_Staging_Model_Staging $staging, Enterprise_Staging_Model_Staging_Log $log) { if ($staging->getId()) { $name = $staging->getMasterWebsite()->getName(); $tablePrefix = Mage::getSingleton('enterprise_staging/staging_config')->getTablePrefix($staging) . Mage::getSingleton('enterprise_staging/staging_config')->getStagingBackupTablePrefix() . $log->getId() . "_"; $this->setStagingId($staging->getId())->setType('backup')->setEventCode($log->getAction())->setName($name)->setStatus(Enterprise_Staging_Model_Staging_Config::STATUS_COMPLETED)->setCreatedAt(Mage::registry($log->getAction() . "_event_start_time"))->setStagingTablePrefix($tablePrefix)->setMap($staging->getMapperInstance()->serialize())->setMageVersion(Mage::getVersion())->setMageModulesVersion(serialize(Mage::getSingleton('enterprise_staging/staging_config')->getCoreResourcesVersion())); $this->save(); } return $this; }
/** * Save system config resource model * * @param Enterprise_Staging_Model_Staging $staging * @param Mage_Core_Model_Website $stagingWebsite * @return Enterprise_Staging_Model_Staging_Adapter_Website */ protected function _saveSystemConfig($staging, Mage_Core_Model_Website $stagingWebsite, $entryPoint = null) { $masterWebsite = $staging->getMasterWebsite(); $unsecureBaseUrl = $stagingWebsite->getBaseUrl(); $secureBaseUrl = $stagingWebsite->getBaseSecureUrl(); if ($entryPoint && $entryPoint->isAutomatic()) { $unsecureBaseUrl = $entryPoint->getBaseUrl($masterWebsite); $secureBaseUrl = $entryPoint->getBaseUrl($masterWebsite, true); } $unsecureConf = Mage::getConfig()->getNode('default/web/unsecure'); $secureConf = Mage::getConfig()->getNode('default/web/secure'); if (!$masterWebsite->getIsStaging()) { $originalBaseUrl = (string) $masterWebsite->getConfig("web/unsecure/base_url"); } else { $originalBaseUrl = (string) Mage::getConfig()->getNode("default/web/unsecure/base_url"); } $this->_saveUrlsInSystemConfig($stagingWebsite, $originalBaseUrl, $unsecureBaseUrl, 'unsecure', $unsecureConf); if (strpos($secureBaseUrl, 'https') !== false) { if (!$masterWebsite->getIsStaging()) { $originalBaseUrl = (string) $masterWebsite->getConfig("web/secure/base_url"); } else { $originalBaseUrl = (string) Mage::getConfig()->getNode("default/web/secure/base_url"); } } $this->_saveUrlsInSystemConfig($stagingWebsite, $originalBaseUrl, $secureBaseUrl, 'secure', $secureConf); return $this; }