B0Bka / box

0 stars 0 forks source link

beforeindex #24

Open B0Bka opened 6 years ago

B0Bka commented 6 years ago
class searchIndex 
{ 
    function BeforeIndexHandler($arFields) 
    { 

        if($arFields["MODULE_ID"] == "iblock" && $arFields["PARAM1"] == "catalog_merged") 
        { 
            if(array_key_exists("BODY", $arFields)) 
            { 
                if(\CModule::IncludeModule("iblock")){ 
                     $arSelect = Array("ID",  "PROPERTY_brand1" );  
                     $arFilter = Array( "ID"=>intval($arFields["ITEM_ID"]), 'IBLOCK_ID' => 54 ); 
                     $res = \CIBlockElement::GetList(Array(), $arFilter, false,  false, $arSelect); 
                     if($arRes = $res->GetNext()){ 
                        $arSelect = Array("ID", "NAME", "PROPERTY_Brand_name_in_Russian" );  
                        $arFilter = Array("ID"=>intval($arRes["PROPERTY_BRAND1_VALUE"]), ); 
                        $res = \CIBlockElement::GetList(Array(), $arFilter, false,  false, $arSelect); 
                        while($arResBrand = $res->GetNext()){ 

                          $arrRes["NAME"]=$arResBrand["NAME"]; 
                          $arrRes["RUS_NAME"][]=$arResBrand["PROPERTY_BRAND_NAME_IN_RUSSIAN_VALUE"]; 
                        } 
                        if (is_array($arrRes)) 
                        { 
                            $arFields["BODY"] .= " ".$arrRes["NAME"]." ".implode(" ", $arrRes["RUS_NAME"]); 
                            $arFields["TITLE"] .= " ".implode(" ", $arrRes["RUS_NAME"]); 
                        } 
                    } 
                };   
            } 
        } 
        return $arFields; 
    } 
}