本文整理汇总了PHP中CSalePersonType::CheckFields方法的典型用法代码示例。如果您正苦于以下问题:PHP CSalePersonType::CheckFields方法的具体用法?PHP CSalePersonType::CheckFields怎么用?PHP CSalePersonType::CheckFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSalePersonType
的用法示例。
在下文中一共展示了CSalePersonType::CheckFields方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Update
function Update($ID, $arFields)
{
global $DB;
$ID = IntVal($ID);
if (!CSalePersonType::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$db_events = GetModuleEvents("sale", "OnBeforePersonTypeUpdate");
while ($arEvent = $db_events->Fetch()) {
if (ExecuteModuleEventEx($arEvent, array($ID, &$arFields)) === false) {
return false;
}
}
$arLID = array();
if (is_set($arFields, "LID")) {
if (is_array($arFields["LID"])) {
$arLID = $arFields["LID"];
} else {
$arLID[] = $arFields["LID"];
}
$str_LID = "''";
$arFields["LID"] = false;
foreach ($arLID as $k => $v) {
if (strlen($v) > 0) {
$str_LID .= ", '" . $DB->ForSql($v) . "'";
if (empty($arFields["LID"])) {
$arFields["LID"] = $v;
}
} else {
unset($arLID[$k]);
}
}
}
$strUpdate = $DB->PrepareUpdate("b_sale_person_type", $arFields);
$strSql = "UPDATE b_sale_person_type SET " . $strUpdate . " WHERE ID = " . $ID . "";
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
if (count($arLID) > 0) {
$strSql = "DELETE FROM b_sale_person_type_site WHERE PERSON_TYPE_ID=" . $ID;
$DB->Query($strSql, false, "FILE: " . __FILE__ . "<br> LINE: " . __LINE__);
$strSql = "INSERT INTO b_sale_person_type_site(PERSON_TYPE_ID, SITE_ID) " . "SELECT " . $ID . ", LID " . "FROM b_lang " . "WHERE LID IN (" . $str_LID . ") ";
$DB->Query($strSql, false, "FILE: " . __FILE__ . "<br> LINE: " . __LINE__);
}
unset($GLOBALS["SALE_PERSON_TYPE_LIST_CACHE"]);
$events = GetModuleEvents("sale", "OnPersonTypeUpdate");
while ($arEvent = $events->Fetch()) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
return $ID;
}