1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
affiliate_plan_section.php
См. документацию.
1<?php
2
4
6
7$GLOBALS["SALE_AFFILIATE_PLAN_SECTION"] = Array();
8
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 {
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';
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
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
Определения options_user_settings.php:8
static normalizeArrayValuesByInt(&$map, $sorted=true)
Определения collection.php:150
static DeleteByPlan($planID, $arSectionIDs)
Определения affiliate_plan_section.php:107
static CheckFields($ACTION, &$arFields, $ID=0)
Определения affiliate_plan_section.php:11
static Update($ID, $arFields)
Определения affiliate_plan_section.php:127
$arFields
Определения dblapprove.php:5
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
$res
Определения filter_act.php:7
if($ajaxMode) $ID
Определения get_user.php:27
global $DB
Определения cron_frame.php:29
$ACTION
Определения csv_new_setup.php:27
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778
is_set($a, $k=false)
Определения tools.php:2133
GetMessage($name, $aReplace=null)
Определения tools.php:3397
$GLOBALS['____1690880296']
Определения license.php:1
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
if(empty($signedUserToken)) $key
Определения quickway.php:257
$GLOBALS['_____370096793']
Определения update_client.php:1