function GetCurrencyFormat($currency, $lang = LANGUAGE_ID)
 {
     global $DB;
     global $stackCacheManager;
     if (defined("CURRENCY_SKIP_CACHE") && CURRENCY_SKIP_CACHE) {
         $arCurrencyLang = CCurrencyLang::GetByID($currency, $lang);
     } else {
         $cacheTime = CURRENCY_CACHE_DEFAULT_TIME;
         if (defined("CURRENCY_CACHE_TIME")) {
             $cacheTime = intval(CURRENCY_CACHE_TIME);
         }
         $strCacheKey = $currency . "_" . $lang;
         $stackCacheManager->SetLength("currency_currency_lang", 20);
         $stackCacheManager->SetTTL("currency_currency_lang", $cacheTime);
         if ($stackCacheManager->Exist("currency_currency_lang", $strCacheKey)) {
             $arCurrencyLang = $stackCacheManager->Get("currency_currency_lang", $strCacheKey);
         } else {
             $arCurrencyLang = CCurrencyLang::GetByID($currency, $lang);
             $stackCacheManager->Set("currency_currency_lang", $strCacheKey, $arCurrencyLang);
         }
     }
     return $arCurrencyLang;
 }
Example #2
0
    die;
}
$this->setFramemode(false);
if (!CModule::IncludeModule("sale")) {
    ShowError(GetMessage("SALE_MODULE_NOT_INSTALL"));
    return;
}
if (!CBXFeatures::IsFeatureEnabled('SaleAccounts')) {
    return;
}
if (!$USER->IsAuthorized()) {
    $APPLICATION->AuthForm(GetMessage("SALE_ACCESS_DENIED"), false, false, 'N', false);
}
$arParams["SET_TITLE"] = $arParams["SET_TITLE"] == "N" ? "N" : "Y";
if ($arParams["SET_TITLE"] == 'Y') {
    $APPLICATION->SetTitle(GetMessage("SPA_TITLE"));
}
$dbAccountList = CSaleUserAccount::GetList(array("CURRENCY" => "ASC"), array("USER_ID" => IntVal($USER->GetID())), false, false, array("ID", "CURRENT_BUDGET", "CURRENCY", "TIMESTAMP_X"));
if ($arAccountList = $dbAccountList->GetNext()) {
    $arResultTmp = array();
    $arResult["DATE"] = str_replace("#DATE#", date(CDatabase::DateFormatToPHP(CSite::GetDateFormat("SHORT", SITE_ID))), GetMessage("SPA_MY_ACCOUNT"));
    do {
        $arResultTmp["CURRENCY"] = CCurrencyLang::GetByID($arAccountList["CURRENCY"], LANGUAGE_ID);
        $arResultTmp["ACCOUNT_LIST"] = $arAccountList;
        $arResultTmp["INFO"] = str_replace("#CURRENCY#", $arResultTmp["CURRENCY"]["CURRENCY"] . " (" . $arResultTmp["CURRENCY"]["FULL_NAME"] . ")", str_replace("#SUM#", SaleFormatCurrency($arAccountList["CURRENT_BUDGET"], $arAccountList["CURRENCY"]), GetMessage("SPA_IN_CUR")));
        $arResult["ACCOUNT_LIST"][] = $arResultTmp;
    } while ($arAccountList = $dbAccountList->GetNext());
} else {
    $arResult["ERROR_MESSAGE"] = GetMessage("SPA_NO_ACCOUNT");
}
$this->IncludeComponentTemplate();
Example #3
0
     }
     $param = 'THOUSANDS_SEP_' . $lid;
     if (!isset($locFields['THOUSANDS_VARIANT']) && isset($_POST[$param])) {
         $locFields['THOUSANDS_SEP'] = $_POST[$param];
     }
     if (count($locFields) == 0) {
         continue;
     }
     if (!(isset($locFields['FULL_NAME']) && isset($locFields['FULL_NAME'][0]))) {
         $locFields['FULL_NAME'] = $currencyID;
     }
     $currencyLocs[$k] = $locFields;
     if ($result) {
         $locFields['CURRENCY'] = $currencyID;
         $locFields['LID'] = $k;
         if (is_array(CCurrencyLang::GetByID($currencyID, $k))) {
             CCurrencyLang::Update($currencyID, $k, $locFields);
         } else {
             $locFields['DECIMALS'] = 2;
             //Default decimals
             CCurrencyLang::Add($locFields);
         }
     }
 }
 if ($result) {
     if ($currency['IS_ACCOUNTING_CURRENCY'] && $currencyID !== CCrmCurrency::GetAccountCurrencyID()) {
         CCrmCurrency::SetAccountCurrencyID($currencyID);
     } elseif (!$currency['IS_ACCOUNTING_CURRENCY'] && $currencyID === CCrmCurrency::GetAccountCurrencyID()) {
         CCrmCurrency::SetAccountCurrencyID(CCrmCurrency::GetBaseCurrencyID());
     }
     if ($currency['IS_INVOICE_CURRENCY'] && $currencyID !== CCrmCurrency::getInvoiceDefault()) {
Example #4
0
 public static function DeleteCurrencyLocalizations($currencyID, $arLangs)
 {
     if (!CModule::IncludeModule('currency')) {
         return false;
     }
     if (!is_array($arLangs) || empty($arLangs)) {
         return false;
     }
     $langsID = self::GetLanguagesID();
     $processed = 0;
     foreach ($langsID as $langID) {
         if (!in_array($langID, $arLangs, true) || !is_array(CCurrencyLang::GetByID($currencyID, $langID))) {
             continue;
         }
         if (CCurrencyLang::Delete($currencyID, $langID)) {
             $processed++;
         }
     }
     return $processed > 0;
 }
Example #5
0
				$arFields["FORMAT_STRING"] = Trim(${"FORMAT_STRING_".$arLangsLID[$i]});
				$arFields["FULL_NAME"] = Trim(${"FULL_NAME_".$arLangsLID[$i]});
				$arFields["DEC_POINT"] = ${"DEC_POINT_".$arLangsLID[$i]};
				$arFields["THOUSANDS_SEP"] = ${"THOUSANDS_SEP_".$arLangsLID[$i]};
				$arFields["THOUSANDS_VARIANT"] = ${"THOUSANDS_VARIANT_".$arLangsLID[$i]};
				$arFields["DECIMALS"] = IntVal(${"DECIMALS_".$arLangsLID[$i]});
				$arFields["CURRENCY"] = $ID /*$arFields["CURRENCY"]*/;
				$arFields["LID"] = $arLangsLID[$i];
				if(strlen($arFields["THOUSANDS_VARIANT"]) > 0)
					$arFields["THOUSANDS_SEP"] = false;
				else
					$arFields["THOUSANDS_VARIANT"] = false;

				if (strlen($ID) > 0)
				{
					$db_result_lang = CCurrencyLang::GetByID($ID, $arLangsLID[$i]);
					if ($db_result_lang)
						CCurrencyLang::Update($ID, $arLangsLID[$i], $arFields);
					else
						CCurrencyLang::Add($arFields);
				}
				else
				{
					CCurrencyLang::Add($arFields);
				}
			}

			if(strlen($apply)<=0)
				LocalRedirect("/bitrix/admin/trigger_list.php?lang=". LANG);

			LocalRedirect("/bitrix/admin/trigger_edit.php?ID=".$ID."&lang=".LANG);