1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
affiliate_plan_section.php
См. документацию.
1
<?php
2
3
use
Bitrix\Main
;
4
5
IncludeModuleLangFile
(__FILE__);
6
7
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
] = Array();
8
9
class
CAllSaleAffiliatePlanSection
10
{
11
public
static
function
CheckFields
(
$ACTION
, &
$arFields
,
$ID
= 0)
12
{
13
if
((
is_set
(
$arFields
,
"PLAN_ID"
) ||
$ACTION
==
"ADD"
) && intval(
$arFields
[
"PLAN_ID"
]) <= 0)
14
{
15
$GLOBALS
[
"APPLICATION"
]->ThrowException(
GetMessage
(
"SCGAPS1_NO_PLAN"
),
"EMPTY_PLAN_ID"
);
16
return
false
;
17
}
18
if
((
is_set
(
$arFields
,
"MODULE_ID"
) ||
$ACTION
==
"ADD"
) &&
$arFields
[
"MODULE_ID"
] ==
''
)
19
{
20
$GLOBALS
[
"APPLICATION"
]->ThrowException(
GetMessage
(
"SCGAPS1_NO_MODULE"
),
"EMPTY_MODULE_ID"
);
21
return
false
;
22
}
23
if
((
is_set
(
$arFields
,
"SECTION_ID"
) ||
$ACTION
==
"ADD"
) &&
$arFields
[
"SECTION_ID"
] ==
''
)
24
{
25
$GLOBALS
[
"APPLICATION"
]->ThrowException(
GetMessage
(
"SCGAPS1_NO_SECTION"
),
"EMPTY_SECTION_ID"
);
26
return
false
;
27
}
28
29
$ID
= intval(
$ID
);
30
$arPlanSection =
false
;
31
if
(
$ACTION
!=
"ADD"
)
32
{
33
if
(
$ID
<= 0)
34
{
35
$GLOBALS
[
"APPLICATION"
]->ThrowException(
GetMessage
(
"SCGAPS1_BAD_FUNC"
),
"FUNCTION_ERROR"
);
36
return
false
;
37
}
38
else
39
{
40
$arPlanSection =
CSaleAffiliatePlanSection::GetByID
(
$ID
);
41
if
(!$arPlanSection)
42
{
43
$GLOBALS
[
"APPLICATION"
]->ThrowException(str_replace(
"#ID#"
,
$ID
,
GetMessage
(
"SCGAPS1_NO_RECORD"
)),
"NO_PLAN_SECTION"
);
44
return
false
;
45
}
46
}
47
}
48
49
if
(
is_set
(
$arFields
,
"RATE"
))
50
{
51
$arFields
[
"RATE"
] = str_replace(
","
,
"."
,
$arFields
[
"RATE"
]);
52
$arFields
[
"RATE"
] = DoubleVal(
$arFields
[
"RATE"
]);
53
}
54
55
if
((
is_set
(
$arFields
,
"RATE_TYPE"
) ||
$ACTION
==
"ADD"
) &&
$arFields
[
"RATE_TYPE"
] !=
"F"
)
56
$arFields
[
"RATE_TYPE"
] =
"P"
;
57
58
if
(
$ACTION
==
"ADD"
)
59
{
60
if
(
$arFields
[
"RATE_TYPE"
] ==
"P"
)
61
$arFields
[
"RATE_CURRENCY"
] =
false
;
62
63
if
(
$arFields
[
"RATE_TYPE"
] ==
"F"
&& (!
is_set
(
$arFields
,
"RATE_CURRENCY"
) ||
$arFields
[
"RATE_CURRENCY"
] ==
''
))
64
{
65
$GLOBALS
[
"APPLICATION"
]->ThrowException(
GetMessage
(
"SCGAPS1_NO_CURRENCY"
),
"EMPTY_RATE_CURRENCY"
);
66
return
false
;
67
}
68
}
69
else
70
{
71
if
(!
is_set
(
$arFields
,
"RATE_TYPE"
))
72
$arFields
[
"RATE_TYPE"
] = $arPlanSection[
"RATE_TYPE"
];
73
74
if
(
$arFields
[
"RATE_TYPE"
] ==
"P"
)
75
{
76
$arFields
[
"RATE_CURRENCY"
] =
false
;
77
}
78
elseif
(
$arFields
[
"RATE_TYPE"
] ==
"F"
)
79
{
80
if
(!
is_set
(
$arFields
,
"RATE_CURRENCY"
))
81
$arFields
[
"RATE_CURRENCY"
] = $arPlanSection[
"RATE_CURRENCY"
];
82
83
if
(!
is_set
(
$arFields
,
"RATE_CURRENCY"
) ||
$arFields
[
"RATE_CURRENCY"
] ==
''
)
84
{
85
$GLOBALS
[
"APPLICATION"
]->ThrowException(
GetMessage
(
"SCGAPS1_NO_CURRENCY"
),
"EMPTY_RATE_CURRENCY"
);
86
return
false
;
87
}
88
}
89
}
90
91
return
True;
92
}
93
94
public
static
function
Delete
(
$ID
)
95
{
96
global
$DB
;
97
98
$ID
= intval(
$ID
);
99
if
(
$ID
<= 0)
100
return
False;
101
102
unset(
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.
$ID
]);
103
104
return
$DB
->Query(
"DELETE FROM b_sale_affiliate_plan_section WHERE ID = "
.
$ID
.
" "
,
true
);
105
}
106
107
public
static
function
DeleteByPlan
($planID, $arSectionIDs)
108
{
109
global
$DB
;
110
111
$planID = (int)$planID;
112
if
($planID <= 0)
113
{
114
return
false
;
115
}
116
117
$strSectionIDs =
'0'
;
118
Main\Type\Collection::normalizeArrayValuesByInt
($arSectionIDs);
119
if
(!empty($arSectionIDs))
120
{
121
$strSectionIDs .=
','
. implode(
','
, $arSectionIDs);
122
}
123
124
return
$DB
->Query(
"DELETE FROM b_sale_affiliate_plan_section WHERE PLAN_ID = "
.$planID.
" AND ID NOT IN ("
.$strSectionIDs.
")"
,
true
);
125
}
126
127
public
static
function
Update
(
$ID
,
$arFields
)
128
{
129
global
$DB
;
130
131
$ID
= intval(
$ID
);
132
if
(
$ID
<= 0)
133
return
False;
134
135
$arFields1 =
array
();
136
foreach
(
$arFields
as
$key
=> $value)
137
{
138
if
(mb_substr(
$key
, 0, 1) ==
"="
)
139
{
140
$arFields1[mb_substr(
$key
, 1)] = $value;
141
unset(
$arFields
[
$key
]);
142
}
143
}
144
145
if
(!
CSaleAffiliatePlanSection::CheckFields
(
"UPDATE"
,
$arFields
,
$ID
))
146
return
false
;
147
148
$strUpdate =
$DB
->PrepareUpdate(
"b_sale_affiliate_plan_section"
,
$arFields
);
149
150
foreach
($arFields1 as
$key
=> $value)
151
{
152
if
($strUpdate <>
''
) $strUpdate .=
", "
;
153
$strUpdate .=
$key
.
"="
.$value.
" "
;
154
}
155
156
$strSql =
"UPDATE b_sale_affiliate_plan_section SET "
.$strUpdate.
" WHERE ID = "
.
$ID
.
" "
;
157
$DB
->Query($strSql);
158
159
unset(
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.
$ID
]);
160
161
return
$ID
;
162
}
163
164
public
static
function
GetByID
(
$ID
)
165
{
166
global
$DB
;
167
168
$ID
= intval(
$ID
);
169
if
(
$ID
<= 0)
170
return
false
;
171
172
if
(isset(
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.
$ID
]) && is_array(
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.
$ID
]))
173
{
174
return
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.$ID];
175
}
176
else
177
{
178
$strSql =
179
"SELECT APS.ID, APS.PLAN_ID, APS.MODULE_ID, APS.SECTION_ID, APS.RATE, APS.RATE_TYPE, APS.RATE_CURRENCY "
.
180
"FROM b_sale_affiliate_plan_section APS "
.
181
"WHERE APS.ID = "
.$ID.
" "
;
182
183
$db_res
=
$DB
->Query($strSql);
184
if
(
$res
=
$db_res
->Fetch())
185
{
186
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.$ID] =
$res
;
187
return
$GLOBALS
[
"SALE_AFFILIATE_PLAN_SECTION"
][
"SALE_AFFILIATE_PLAN_SECTION_CACHE_"
.$ID];
188
}
189
}
190
191
return
false
;
192
}
193
}
$db_res
$db_res
Определения
options_user_settings.php:8
Bitrix\Main\Type\Collection\normalizeArrayValuesByInt
static normalizeArrayValuesByInt(&$map, $sorted=true)
Определения
collection.php:150
CAllSaleAffiliatePlanSection
Определения
affiliate_plan_section.php:10
CAllSaleAffiliatePlanSection\DeleteByPlan
static DeleteByPlan($planID, $arSectionIDs)
Определения
affiliate_plan_section.php:107
CAllSaleAffiliatePlanSection\Delete
static Delete($ID)
Определения
affiliate_plan_section.php:94
CAllSaleAffiliatePlanSection\GetByID
static GetByID($ID)
Определения
affiliate_plan_section.php:164
CAllSaleAffiliatePlanSection\CheckFields
static CheckFields($ACTION, &$arFields, $ID=0)
Определения
affiliate_plan_section.php:11
CAllSaleAffiliatePlanSection\Update
static Update($ID, $arFields)
Определения
affiliate_plan_section.php:127
$arFields
$arFields
Определения
dblapprove.php:5
array
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения
file_new.php:804
$res
$res
Определения
filter_act.php:7
$ID
if($ajaxMode) $ID
Определения
get_user.php:27
$DB
global $DB
Определения
cron_frame.php:29
$ACTION
$ACTION
Определения
csv_new_setup.php:27
IncludeModuleLangFile
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения
tools.php:3778
is_set
is_set($a, $k=false)
Определения
tools.php:2133
GetMessage
GetMessage($name, $aReplace=null)
Определения
tools.php:3397
Bitrix\Main
Bitrix\Main\$GLOBALS
$GLOBALS['____1690880296']
Определения
license.php:1
elseif
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения
prolog_main_admin.php:393
$key
if(empty($signedUserToken)) $key
Определения
quickway.php:257
$GLOBALS
$GLOBALS['_____370096793']
Определения
update_client.php:1
bitrix
modules
sale
general
affiliate_plan_section.php
Создано системой
1.14.0