Esempio n. 1
0
             $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()) {
             CCrmCurrency::setInvoiceDefault($currencyID);
         }
         LocalRedirect(isset($_POST['apply']) ? CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_CURRENCY_EDIT'], array('currency_id' => $currencyID)) : CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_CURRENCY_LIST'], array('currency_id' => $currencyID)));
     }
 } elseif ($_SERVER['REQUEST_METHOD'] == 'GET' && isset($_GET['delete'])) {
     $currencyID = isset($arParams['CURRENCY_ID']) ? strval($arParams['CURRENCY_ID']) : '';
     $currency = isset($currencyID[0]) ? CCrmCurrency::GetByID($currencyID) : null;
     if ($currency) {
         if (!CCrmCurrency::Delete($currencyID)) {
             $err = CCrmCurrency::GetLastError();
             ShowError(isset($err[0]) ? $err : GetMessage('CRM_CURRENCY_DELETE_UNKNOWN_ERROR'));
             return;
         }
Esempio n. 2
0
            if (count($arFields) > 0) {
                if (!CCrmCurrency::Update($ID, $arFields)) {
                    $error = CCrmCurrency::GetLastError();
                    $errorMessages[] = $error !== '' ? $error : GetMessage('CRM_CURRENCY_UPDATE_GENERAL_ERROR');
                    continue;
                }
            }
            if (isset($arField['ACCOUNTING'])) {
                $baseCurrencyID = CCrmCurrency::GetBaseCurrencyID();
                $accountCurrencyID = CCrmCurrency::GetAccountCurrencyID();
                if ($ID === $accountCurrencyID) {
                    if ($arField['ACCOUNTING'] === 'N' && $ID !== $baseCurrencyID) {
                        CCrmCurrency::SetAccountCurrencyID($baseCurrencyID);
                    }
                } elseif ($arField['ACCOUNTING'] === 'Y') {
                    CCrmCurrency::SetAccountCurrencyID($ID);
                }
            }
        }
    }
    if (!isset($_POST['AJAX_CALL'])) {
        if (empty($errorMessages)) {
            LocalRedirect($APPLICATION->GetCurPage());
        } else {
            $errorID = uniqid('crm_err_');
            $_SESSION[$errorID] = implode("\n", $errorMessages);
            LocalRedirect(CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_CURRENCY_LIST'], array()), array('error' => $errorID)));
        }
    }
} elseif ($_SERVER['REQUEST_METHOD'] == 'GET' && check_bitrix_sessid() && isset($_GET['action_' . $arResult['GRID_ID']])) {
    $errorID = '';