Bitrix - скидка
Войти

Bitrix - скидка

Bitrix - скидка
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php 

//Кеш
$cache = new CPHPCache();
$cache_time 3600;
$cache_data = array();
$cache_id 'arDiscountFilterID';
$cache_path '/arDiscountFilterID/';
if (
$cache_time && $cache->InitCache($cache_time$cache_id$cache_path))
{
    
$res $cache->GetVars();
    if (
is_array($res["arrFilter_id"]) && count($res["arrFilter_id"] > 0)) {
        
$arrFilter_id $res["arrFilter_id"];
    }
}

if (!
is_array($arrFilter_id))
{
if(!
CModule::IncludeModule("catalog")) {
    
$this->AbortResultCache();
   
ShowError("IBLOCK_MODULE_NOT_INSTALLED");
   return 
false;
}
if(!
CModule::IncludeModule("sale")) {
    
$this->AbortResultCache();
   
ShowError("IBLOCK_MODULE_NOT_INSTALLED");
   return 
false;
}
if(!
CModule::IncludeModule("iblock")) {
    
$this->AbortResultCache();
   
ShowError("IBLOCK_MODULE_NOT_INSTALLED");
   return 
false;
}
//Выбираем все возможные товары
    
if($res CCatalogDiscount::GetDiscountProductsList(array(), array(), falsefalse, array())){
        
$arDiscountElementID = array();
        while(
$ob $res->GetNext()){
            
$arDiscountElementID[] = $ob["PRODUCT_ID"];
        }
    }
    if (
count($arDiscountElementID)>0){
         
$arSelect = Array("ID");
//Если id в инфоблоке товаров - выбираем
        
$arFilter_tov = Array(
            
"IBLOCK_ID"=>array(6), 
            
"ACTIVE_DATE"=>"Y"
            
"ACTIVE"=>"Y"
            
"ID"=>$arDiscountElementID
        
);
        
$res CIBlockElement::GetList(Array("ID" => "DESC"), $arFilter_tovfalsefalse$arSelect);
        if(
$res){
            
$arrFilter_id["=ID"] = array();
            while(
$arIBlockElement $res->GetNext()){
                
$arrFilter_id["=ID"][] = $arIBlockElement["ID"];
            }
        }
//Выбираем по id торговых предложений
        
$arSelect = Array(
            
"ID",
            
"PROPERTY_CML2_LINK"
        
);
        
$arFilter_tov = Array(
            
"IBLOCK_ID"=>array(7), 
            
"ACTIVE_DATE"=>"Y"
            
"ACTIVE"=>"Y"
            
"ID"=>$arDiscountElementID
        
);      
        
$res CIBlockElement::GetList(Array("ID" => "DESC"), $arFilter_tovfalsefalse$arSelect);
        if(
$res){
            while(
$arIBlockElement $res->GetNext()){
                
$arrFilter_id["=ID"][] = $arIBlockElement["PROPERTY_CML2_LINK_VALUE"];
            }
        }

    }


    
$cache_data["arrFilter_id"] = $arrFilter_id;
}
//////////// end cache /////////
if ($cache_time 0)
{
    
$cache->StartDataCache($cache_time$cache_id$cache_path);
    
$cache->EndDataCache($cache_data);
}


$arrFilter $arrFilter_id;
global 
$arrFilter;

?>
Теги:
php