static function changeCurrency($oldCurrencyCode, $newCurrencyCode) { $errCode = eZCurrencyData::ERROR_OK; if (strcmp($oldCurrencyCode, $newCurrencyCode) !== 0) { $errCode = eZCurrencyData::canCreate($newCurrencyCode); if ($errCode === eZCurrencyData::ERROR_OK) { $currency = eZCurrencyData::fetch($oldCurrencyCode); if (is_object($currency)) { $db = eZDB::instance(); $db->begin(); $currency->setAttribute('code', $newCurrencyCode); $currency->sync(); eZMultiPriceData::changeCurrency($oldCurrencyCode, $newCurrencyCode); $db->commit(); } else { $errCode = eZCurrencyData::ERROR_UNKNOWN; } } } return $errCode; }
static function currencyExists($code) { return eZCurrencyData::fetch($code) !== null; }
function fetchCurrency( $code ) { $currency = eZCurrencyData::fetch( $code ); if ( is_object( $currency ) ) $result = array( 'result' => $currency ); else $result = array( 'result' => false ); return $result; }
} } } else { $error = eZCurrencyData::errorMessage($errCode); } } } } $pathText = ''; if (strlen($originalCurrencyCode) > 0) { // going to edit existing currency $pathText = ezpI18n::tr('kernel/shop', 'Edit currency'); if ($currencyParams['code'] === false) { // first time in 'edit' mode? => initialize template variables // with existing data. $currency = eZCurrencyData::fetch($originalCurrencyCode); if (is_object($currency)) { $currencyParams['code'] = $currency->attribute('code'); $currencyParams['symbol'] = $currency->attribute('symbol'); $currencyParams['locale'] = $currency->attribute('locale'); $currencyParams['custom_rate_value'] = $currency->attribute('custom_rate_value'); $currencyParams['rate_factor'] = $currency->attribute('rate_factor'); } else { $error = "'{$originalCurrencyCode}' currency doesn't exist."; $canEdit = false; } } } else { // going to create new currency $pathText = ezpI18n::tr('kernel/shop', 'Create new currency'); }