function Update($ID, $arFields) { global $DB; $ID = IntVal($ID); if (!CSalePaySystemAction::CheckFields("UPDATE", $arFields)) { return false; } if (array_key_exists("LOGOTIP", $arFields) && is_array($arFields["LOGOTIP"])) { $arFields["LOGOTIP"]["MODULE_ID"] = "sale"; } CFile::SaveForDB($arFields, "LOGOTIP", "sale/paysystem/logotip"); $strUpdate = $DB->PrepareUpdate("b_sale_pay_system_action", $arFields); $strSql = "UPDATE b_sale_pay_system_action SET " . $strUpdate . " WHERE ID = " . $ID . ""; $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); return $ID; }
function Update($ID, $arFields) { global $DB; $ID = IntVal($ID); if (!CSalePaySystemAction::CheckFields("UPDATE", $arFields)) { return false; } $strUpdate = $DB->PrepareUpdate("b_sale_pay_system_action", $arFields); $strSql = "UPDATE b_sale_pay_system_action SET " . $strUpdate . " WHERE ID = " . $ID . ""; $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); return $ID; }
function Update($id, $fields) { if (\Bitrix\Main\Config\Option::get('main', '~sale_paysystem_converted') == 'Y') { $id = (int) $id; if (isset($fields['ACTION_FILE'])) { $map = self::getOldToNewHandlersMap(); if (isset($map[$fields['ACTION_FILE']])) { $fields['ACTION_FILE'] = $map[$fields['ACTION_FILE']]; } } if (!CSalePaySystemAction::CheckFields("UPDATE", $fields)) { return false; } if (array_key_exists("LOGOTIP", $fields) && is_array($fields["LOGOTIP"])) { $fields["LOGOTIP"]["MODULE_ID"] = "sale"; } CFile::SaveForDB($fields, "LOGOTIP", "sale/paysystem/logotip"); if (isset($fields['PARAMS'])) { $params = unserialize($fields['PARAMS']); if (!isset($params['BX_PAY_SYSTEM_ID'])) { $params['BX_PAY_SYSTEM_ID'] = array('TYPE' => '', 'VALUE' => $id); } $fields['PARAMS'] = serialize($params); } $result = PaySystemActionTable::update($id, $fields); if ($result->isSuccess()) { if (array_key_exists('PARAMS', $fields)) { $params = self::prepareParamsForBusVal($id, $fields); foreach ($params as $item) { \Bitrix\Sale\BusinessValue::setMapping($item['CODE'], $item['CONSUMER'], $item['PERSON_TYPE_ID'], $item['MAP']); } } if ($fields['PERSON_TYPE_ID']) { $params = array('filter' => array("SERVICE_ID" => $id, "SERVICE_TYPE" => \Bitrix\Sale\Services\PaySystem\Restrictions\Manager::SERVICE_TYPE_PAYMENT, "=CLASS_NAME" => '\\Bitrix\\Sale\\Services\\PaySystem\\Restrictions\\PersonType')); $dbRes = \Bitrix\Sale\Internals\ServiceRestrictionTable::getList($params); if ($data = $dbRes->fetch()) { $restrictionId = $data['ID']; } else { $restrictionId = 0; } $fields = array("SERVICE_ID" => $id, "SERVICE_TYPE" => \Bitrix\Sale\Services\PaySystem\Restrictions\Manager::SERVICE_TYPE_PAYMENT, "SORT" => 100, "PARAMS" => array('PERSON_TYPE_ID' => array($fields['PERSON_TYPE_ID']))); \Bitrix\Sale\Services\PaySystem\Restrictions\PersonType::save($fields, $restrictionId); } return $id; } return false; } else { global $DB; $arFields = $fields; $ID = IntVal($id); if (!CSalePaySystemAction::CheckFields("UPDATE", $arFields)) { return false; } if (array_key_exists("LOGOTIP", $arFields) && is_array($arFields["LOGOTIP"])) { $arFields["LOGOTIP"]["MODULE_ID"] = "sale"; } CFile::SaveForDB($arFields, "LOGOTIP", "sale/paysystem/logotip"); $strUpdate = $DB->PrepareUpdate("b_sale_pay_system_action", $arFields); $strSql = "UPDATE b_sale_pay_system_action SET " . $strUpdate . " WHERE ID = " . $ID . ""; $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); return $ID; } }