Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.67 KB | None | 0 0
  1.     protected function prepareFormData()
  2.     {
  3.         $arResult = $this->formResult;
  4.         $arAnswer = $this->formAnswer;
  5.         $arFields = $this->arDefaultFields;
  6.  
  7.         $arFields["ID"] = $arResult["ID"];
  8.         $arFields["INTEGRATION_ID"] = $arResult["SID"] . "_" . $arResult["ID"];
  9.         $arFields["DATE"] = date("m/d/Y H:i:s");
  10.         $arFields["NAME"] = $arResult["NAME"];
  11.         $arFields["FIRST_NAME"] = $arAnswer["new_field_name"][0]["USER_TEXT"];
  12.         $arFields["EMAIL"] = $arAnswer["new_field_email"][0]["USER_TEXT"];
  13.         $arFields["PHONE"] = $arAnswer["new_field_phone"][0]["USER_TEXT"];
  14.         $arFields["DESCRIPTION"] = $arAnswer["new_field_16700"][0]["USER_TEXT"];
  15.         $arFields["DOC_NAME"] = $arResult["NAME"];
  16.  
  17.         if (intval($arAnswer["elid"][0]["USER_TEXT"])) {
  18.  
  19.             $arSelect = Array("ID", "NAME", "PROPERTY_nameCar", "PROPERTY_markCar", "PROPERTY_DEALER_CENTER", "PROPERTY_COMPLETE", "IBLOCK_ID");
  20.             $arFilter = Array("IBLOCK_CODE" => "new", "ID" => intval($arAnswer["elid"][0]["USER_TEXT"]));
  21.             $res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);
  22.             $arFields["MODEL_ID"] = intval($arAnswer["elid"][0]["USER_TEXT"]);
  23.             while ($ob = $res->GetNextElement()) {
  24.                 $arCars = $ob->GetFields();
  25.                 $arFields["MODEL_NAME"] = $arCars["NAME"];
  26.                 $arFields["MODEL"] = $arCars["NAME"];
  27.                 if (intval($arCars["PROPERTY_DEALER_CENTER_VALUE"]))
  28.                     $arAnswer["dealer"][0]["USER_TEXT"] = $arCars["PROPERTY_DEALER_CENTER_VALUE"];
  29.                 if ($arCars["PROPERTY_NAMECAR_VALUE"]) {
  30.                     $resEl = CIBlockElement::GetByID($arCars["PROPERTY_NAMECAR_VALUE"]);
  31.                     if ($ar_res = $resEl->GetNext())
  32.                         $arFields["MAKE"] = $ar_res['NAME'];
  33.                 }
  34.             }
  35.         } elseif (strlen($arAnswer["auto"][0]["USER_TEXT"])) {
  36.             $arMark = explode("[", $arAnswer["auto"][0]["USER_TEXT"]);
  37.             $arMark[1] = trim(str_replace("]", "", $arMark[1]));
  38.             $arFields["MAKE"] = trim($arMark[0]);
  39.             $arFields["MODEL_NAME"] = $arMark[1];
  40.             $arFields["MODEL"] = $arMark[1];
  41.         }
  42.  
  43.         if (strlen($arFields["MAKE"])) {
  44.             $arFilterSection = array('IBLOCK_CODE' => "dealer_address", 'NAME' => $arFields["MAKE"]); // выберет потомков без учета активности
  45.             $rsSect = CIBlockSection::GetList(array('left_margin' => 'asc'), $arFilterSection);
  46.             if ($arSect = $rsSect->GetNext()) {
  47.                 $arSelect = Array("ID", "NAME", "PROPERTY_BP_CODE", "PROPERTY_TP_CODE", "PROPERTY_CITY_CODE", "PROPERTY_DMS_CODE");
  48.                 $arFilter = Array("IBLOCK_CODE" => "dealer_address", "SECTION_ID" => $arSect["ID"], "ACTIVE" => "Y", "!PROPERTY_USE_SIBEL" => false);
  49.                 $res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);
  50.                 while ($ob = $res->GetNextElement()) {
  51.                     $arSalon[] = $ob->GetFields();
  52.                 }
  53.                 if(count($arSalon)){
  54.                     $iRandKey = array_rand($arSalon);
  55.  
  56.                     $arFields["ORGANIZATION"]["DMS"] = $arSalon[$iRandKey]["PROPERTY_DMS_CODE_VALUE"];
  57.                     $arFields["ORGANIZATION"]["REGION"] = $arSalon[$iRandKey]["PROPERTY_BP_CODE_VALUE"];
  58.                     $arFields["ORGANIZATION"]["CITY"] = $arSalon[$iRandKey]["PROPERTY_CITY_CODE_VALUE"];
  59.                     $arFields["ORGANIZATION"]["ID"] = $arSalon[$iRandKey]["PROPERTY_TP_CODE_VALUE"];
  60.                 }
  61.             }
  62.         }
  63.  
  64.         return $arFields;
  65.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement