function Update($currency, $arFields) { global $DB; global $CACHE_MANAGER; if (!CFTriggerActions::CheckFields('UPDATE', $arFields, $currency)) return false; $strCurrencyID = substr($currency, 0, 3); if (is_set($arFields, 'CURRENCY')) unset($arFields['CURRENCY']); $strUpdate = $DB->PrepareUpdate("f_actions", $arFields); if (!empty($strUpdate)) { $strSql = "UPDATE f_actions SET ".$strUpdate." WHERE ID = '".$DB->ForSql($strCurrencyID)."' "; $DB->Query($strSql, false, "File: ".__FILE__."<br>Line: ".__LINE__); $CACHE_MANAGER->Clean("currency_base_currency"); $CACHE_MANAGER->Clean("currency_currency_list"); $rsLangs = CLanguage::GetList(($by="lid"), ($order="asc")); while ($arLang = $rsLangs->Fetch()) { $CACHE_MANAGER->Clean("currency_currency_list_".$arLang['LID']); } if (defined("BX_COMP_MANAGED_CACHE")) $CACHE_MANAGER->ClearByTag("currency_id_".$strCurrencyID); } return $strCurrencyID; }
if ($_SERVER["REQUEST_METHOD"] == "POST" && $CURRENCY_RIGHT=="W" && strlen($Update)>0 && check_bitrix_sessid()) { $arFields = array( "NAME" => $_POST['NAME'], "SORT" => $_POST['SORT'], "ACTION_TYPE" => $_POST["ACTION_TYPE"], "ADDITIONAL_PROPS" => serialize($_POST["ADDITIONAL_PROPS"]), "BODY_PARAMS" => serialize(explode("\n", $_POST["BODY_PARAMS"])) ); //echo "<pre>";print_r($_POST);echo "</pre>"; //echo "<pre>";print_r($arFields);echo "</pre>";die; $strAction = ($ID ? 'UPDATE' : 'ADD'); $bVarsFromForm = !CFTriggerActions::CheckFields($strAction, $arFields, $ID); if (!$bVarsFromForm) { $arMsg = array(); if(!empty($arMsg)) { $bVarsFromForm = true; $e = new CAdminException($arMsg); $APPLICATION->ThrowException($e); $e = $APPLICATION->GetException(); $message = new CAdminMessage(GetMessage("action_error"), $e); } else {