Пример #1
0
 public static function AddRecordsByFields($orderId, $arOldFields, $arNewFields, $arDeleteFields = array(), $entity = "")
 {
     if ($orderId <= 0) {
         return false;
     }
     if ($entity == "") {
         if (isset($arNewFields["ID"])) {
             unset($arNewFields["ID"]);
         }
     }
     foreach ($arNewFields as $key => $val) {
         if (is_array($val)) {
             continue;
         }
         if (!array_key_exists($key, $arOldFields) || array_key_exists($key, $arOldFields) && strlen($val) > 0 && $val != $arOldFields[$key] && !in_array($key, $arDeleteFields)) {
             $arRecord = CSaleOrderChange::MakeRecordFromField($key, $arNewFields, $entity);
             if ($arRecord) {
                 CSaleOrderChange::AddRecord($orderId, $arRecord["TYPE"], serialize($arRecord["DATA"]));
             }
         }
     }
     return true;
 }