/** * @param Payone_Core_Model_Config $config * @param string $methodType * * @return int */ public function getMethodId($config, $methodType) { if ($methodType) { $methods = $config->getPayment()->getMethodsByType($methodType); if (!empty($methods)) { /** @var Payone_Core_Model_Config_Payment_Method $method */ foreach ($methods as $method) { $id = $method->getScope() === 'websites' ? Mage::app()->getWebsite()->getId() : Mage::app()->getStore()->getStoreId(); if ($method->getScopeId() === $id) { return $method->getId(); } } $error = $this->__('PayOne: could not match config scope with any of the active methods'); } else { $error = $this->__('PayOne: could not find an enabled config for mapping: %s', $methodType); } } else { $error = $this->__('PayOne: method type not set in the called class'); } ShopgateLogger::getInstance()->log($error, ShopgateLogger::LOGTYPE_ERROR); return false; }
/** * @param Payone_Core_Model_Config $config * @return Payone_Settings_Data_ConfigFile_Abstract|Payone_Settings_Data_ConfigFile_Shop_Misc */ protected function generateSettingsMisc(Payone_Core_Model_Config $config) { /** @var $miscConfig Payone_Settings_Data_ConfigFile_Shop_Misc */ $miscConfig = $this->getSettingsClass('shop_misc'); $misc = $config->getMisc(); /** @var $transactionStatusForwarding Payone_Settings_Data_ConfigFile_Misc_TransactionstatusForwarding */ $transactionStatusForwarding = $this->getSettingsClass('misc_transactionstatusForwarding'); foreach ($misc->getTransactionstatusForwarding()->getConfigSortedByUrl() as $key => $value) { $status = implode(',', $value['status']); $data = array('status' => $status, 'url' => $key, 'timeout' => $value['timeout']); $transactionStatusForwarding->addTransactionstatusForwarding($data); } $miscConfig->setTransactionstatusforwarding($transactionStatusForwarding); $miscConfig->setShippingcosts($misc->getShippingCosts()->toArray()); return $miscConfig; }