1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
sitepath.php
См. документацию.
1<?php
2
4
5$GLOBALS["LEARNING_SITE_PATH"] = Array();
6
7// 2012-04-16 Checked/modified for compatibility with new data model
9{
10 /*************** ADD, UPDATE, DELETE *****************/
11 // 2012-04-16 Checked/modified for compatibility with new data model
12 public static function CheckFields($ACTION, &$arFields, $ID = 0)
13 {
14 /*
15 if ((is_set($arFields, "TYPE") || $ACTION=="ADD") && strlen($arFields["TYPE"]) <= 0)
16 {
17 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("LRN_GSP_EMPTY_TYPE"), "EMPTY_TYPE");
18 return false;
19 }
20 */
21
22 if ((is_set($arFields, "PATH") || $ACTION=="ADD") && $arFields["PATH"] == '')
23 {
24 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("LRN_GSP_EMPTY_PATH"), "EMPTY_PATH");
25 return false;
26 }
27 elseif (is_set($arFields, "PATH"))
28 {
29 $arFields["PATH"] = trim(str_replace("\\", "/", $arFields["PATH"]));
30 }
31
32 if ((is_set($arFields, "SITE_ID") || $ACTION=="ADD") && $arFields["SITE_ID"] == '')
33 {
34 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("LRN_GSP_EMPTY_SITE_ID"), "EMPTY_SITE_ID");
35 return false;
36 }
37 elseif (is_set($arFields, "SITE_ID"))
38 {
39 $dbResult = CSite::GetByID($arFields["SITE_ID"]);
40 if (!$dbResult->Fetch())
41 {
42 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#ID#", $arFields["SITE_ID"], GetMessage("LRN_GSP_ERROR_NO_SITE")), "ERROR_NO_SITE");
43 return false;
44 }
45 }
46
47 return True;
48 }
49
50 // 2012-04-16 Checked/modified for compatibility with new data model
51 public static function Delete($ID)
52 {
53 global $DB;
54
55 $ID = intval($ID);
56
58 if ($arPath)
59 unset($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$arPath["SITE_ID"]]);
60
61 unset($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$ID]);
62
63 return $DB->Query("DELETE FROM b_learn_site_path WHERE ID = ".$ID."", true);
64 }
65
66 //*************** SELECT *********************/
67 // 2012-04-16 Checked/modified for compatibility with new data model
68 public static function GetByID($ID)
69 {
70 global $DB;
71
72 $ID = intval($ID);
73
74 if (isset($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$ID]) && is_array($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$ID]) && is_set($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$ID], "ID"))
75 {
76 return $GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$ID];
77 }
78 else
79 {
80 $strSql =
81 "SELECT P.ID, P.SITE_ID, P.PATH, P.TYPE ".
82 "FROM b_learn_site_path P ".
83 "WHERE P.ID = ".$ID."";
84 $dbResult = $DB->Query($strSql);
85 if ($arResult = $dbResult->Fetch())
86 {
87 $GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$ID] = $arResult;
88 $GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$arResult["SITE_ID"]] = $arResult;
89 return $arResult;
90 }
91 }
92
93 return False;
94 }
95
96 // 2012-04-16 Checked/modified for compatibility with new data model
97 public static function GetBySiteID($siteID)
98 {
99 global $DB;
100
101 $siteID = Trim($siteID);
102 if ($siteID == '')
103 return False;
104
105 if (isset($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$siteID]) && is_array($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$siteID]) && is_set($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$siteID], "ID"))
106 {
107 return $GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$siteID];
108 }
109 else
110 {
111 $strSql =
112 "SELECT P.ID, P.SITE_ID, P.PATH, P.TYPE ".
113 "FROM b_learn_site_path P ".
114 "WHERE P.SITE_ID = '".$DB->ForSql($siteID)."' AND P.TYPE is null";
115 $dbResult = $DB->Query($strSql);
116 $arResults = array();
117 while($arResult = $dbResult->Fetch())
118 {
119 $GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$siteID] = $arResult;
120 $GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$arResult["ID"]] = $arResult;
121 $arResults[] = $arResult;
122 }
123 return $arResults;
124 }
125
126 return False;
127 }
128
129 // 2012-04-16 Checked/modified for compatibility with new data model
130 public static function DeleteBySiteID($siteID)
131 {
132 global $DB;
133
134 $siteID = Trim($siteID);
135 if ($siteID == '')
136 return False;
137
138 $result = false;
139
140 $dbPath = CSitePath::GetList(Array(), Array("SITE_ID" => $siteID));
141 while($arPath = $dbPath -> Fetch())
142 {
143 unset($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH1_CACHE_".$arPath["SITE_ID"]]);
144 unset($GLOBALS["LEARNING_SITE_PATH"]["LEARNING_SITE_PATH_CACHE_".$arPath["ID"]]);
145 $result = $DB->Query("DELETE FROM b_learn_site_path WHERE ID = ".$arPath["ID"]."", true);
146 }
147
148 return $result;
149 }
150
151 // 2012-04-16 Checked/modified for compatibility with new data model
152 public static function GetFilterOperation($key)
153 {
154 $strNegative = "N";
155 if (mb_substr($key, 0, 1) == "!")
156 {
157 $key = mb_substr($key, 1);
158 $strNegative = "Y";
159 }
160
161 $strOrNull = "N";
162 if (mb_substr($key, 0, 1) == "+")
163 {
164 $key = mb_substr($key, 1);
165 $strOrNull = "Y";
166 }
167
168 if (mb_substr($key, 0, 2) == ">=")
169 {
170 $key = mb_substr($key, 2);
171 $strOperation = ">=";
172 }
173 elseif (mb_substr($key, 0, 1) == ">")
174 {
175 $key = mb_substr($key, 1);
176 $strOperation = ">";
177 }
178 elseif (mb_substr($key, 0, 2) == "<=")
179 {
180 $key = mb_substr($key, 2);
181 $strOperation = "<=";
182 }
183 elseif (mb_substr($key, 0, 1) == "<")
184 {
185 $key = mb_substr($key, 1);
186 $strOperation = "<";
187 }
188 elseif (mb_substr($key, 0, 1) == "@")
189 {
190 $key = mb_substr($key, 1);
191 $strOperation = "IN";
192 }
193 elseif (mb_substr($key, 0, 1) == "~")
194 {
195 $key = mb_substr($key, 1);
196 $strOperation = "LIKE";
197 }
198 elseif (mb_substr($key, 0, 1) == "%")
199 {
200 $key = mb_substr($key, 1);
201 $strOperation = "QUERY";
202 }
203 else
204 {
205 $strOperation = "=";
206 }
207
208 return array("FIELD" => $key, "NEGATIVE" => $strNegative, "OPERATION" => $strOperation, "OR_NULL" => $strOrNull);
209 }
210
211 // 2012-04-16 Checked/modified for compatibility with new data model
212 public static function PrepareSql(&$arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields, $obUserFieldsSql = false)
213 {
214 global $DB;
215
216 $strSqlSelect = "";
217 $strSqlFrom = "";
218 $strSqlWhere = "";
219 $strSqlGroupBy = "";
220 $strSqlOrderBy = "";
221
222 $arGroupByFunct = array("COUNT", "AVG", "MIN", "MAX", "SUM");
223
224 $arAlreadyJoined = array();
225
226 // GROUP BY -->
227 if (is_array($arGroupBy) && count($arGroupBy)>0)
228 {
229 $arSelectFields = $arGroupBy;
230 foreach ($arGroupBy as $key => $val)
231 {
232 $val = mb_strtoupper($val);
233 $key = mb_strtoupper($key);
234 if (array_key_exists($val, $arFields) && !in_array($key, $arGroupByFunct))
235 {
236 if ($strSqlGroupBy <> '')
237 $strSqlGroupBy .= ", ";
238 $strSqlGroupBy .= $arFields[$val]["FIELD"];
239
240 if (isset($arFields[$val]["FROM"])
241 && $arFields[$val]["FROM"] <> ''
242 && !in_array($arFields[$val]["FROM"], $arAlreadyJoined))
243 {
244 if ($strSqlFrom <> '')
245 $strSqlFrom .= " ";
246 $strSqlFrom .= $arFields[$val]["FROM"];
247 $arAlreadyJoined[] = $arFields[$val]["FROM"];
248 }
249 }
250 }
251 }
252 // <-- GROUP BY
253
254 // SELECT -->
255 $arFieldsKeys = array_keys($arFields);
256
257 if (is_array($arGroupBy) && count($arGroupBy)==0)
258 {
259 $strSqlSelect = "COUNT(%%_DISTINCT_%% ".$arFields[$arFieldsKeys[0]]["FIELD"].") as CNT ";
260 }
261 else
262 {
263 if (isset($arSelectFields) && !is_array($arSelectFields) && is_string($arSelectFields) && $arSelectFields <> '' && array_key_exists($arSelectFields, $arFields))
264 $arSelectFields = array($arSelectFields);
265
266 if (!isset($arSelectFields)
267 || !is_array($arSelectFields)
268 || count($arSelectFields)<=0
269 || in_array("*", $arSelectFields))
270 {
271 foreach ($arFieldsKeys as $i => $value)
272 {
273 if (isset($arFields[$arFieldsKeys[$i]]["WHERE_ONLY"])
274 && $arFields[$arFieldsKeys[$i]]["WHERE_ONLY"] == "Y")
275 {
276 continue;
277 }
278
279 if ($strSqlSelect <> '')
280 $strSqlSelect .= ", ";
281
282 if ($arFields[$arFieldsKeys[$i]]["TYPE"] == "datetime")
283 {
284 if (($DB->type == "ORACLE" || $DB->type == "MSSQL") && (array_key_exists($arFieldsKeys[$i], $arOrder)))
285 $strSqlSelect .= $arFields[$arFieldsKeys[$i]]["FIELD"]." as ".$arFieldsKeys[$i]."_X1, ";
286
287 $strSqlSelect .= $DB->DateToCharFunction($arFields[$arFieldsKeys[$i]]["FIELD"], "FULL")." as ".$arFieldsKeys[$i];
288 }
289 elseif ($arFields[$arFieldsKeys[$i]]["TYPE"] == "date")
290 {
291 if (($DB->type == "ORACLE" || $DB->type == "MSSQL") && (array_key_exists($arFieldsKeys[$i], $arOrder)))
292 $strSqlSelect .= $arFields[$arFieldsKeys[$i]]["FIELD"]." as ".$arFieldsKeys[$i]."_X1, ";
293
294 $strSqlSelect .= $DB->DateToCharFunction($arFields[$arFieldsKeys[$i]]["FIELD"], "SHORT")." as ".$arFieldsKeys[$i];
295 }
296 else
297 $strSqlSelect .= $arFields[$arFieldsKeys[$i]]["FIELD"]." as ".$arFieldsKeys[$i];
298
299 if (isset($arFields[$arFieldsKeys[$i]]["FROM"])
300 && $arFields[$arFieldsKeys[$i]]["FROM"] <> ''
301 && !in_array($arFields[$arFieldsKeys[$i]]["FROM"], $arAlreadyJoined))
302 {
303 if ($strSqlFrom <> '')
304 $strSqlFrom .= " ";
305 $strSqlFrom .= $arFields[$arFieldsKeys[$i]]["FROM"];
306 $arAlreadyJoined[] = $arFields[$arFieldsKeys[$i]]["FROM"];
307 }
308 }
309 }
310 else
311 {
312 foreach ($arSelectFields as $key => $val)
313 {
314 $val = mb_strtoupper($val);
315 $key = mb_strtoupper($key);
316 if (array_key_exists($val, $arFields))
317 {
318 if ($strSqlSelect <> '')
319 $strSqlSelect .= ", ";
320
321 if (in_array($key, $arGroupByFunct))
322 {
323 $strSqlSelect .= $key."(".$arFields[$val]["FIELD"].") as ".$val;
324 }
325 else
326 {
327 if ($arFields[$val]["TYPE"] == "datetime")
328 {
329 if (($DB->type == "ORACLE" || $DB->type == "MSSQL") && (array_key_exists($val, $arOrder)))
330 $strSqlSelect .= $arFields[$val]["FIELD"]." as ".$val."_X1, ";
331
332 $strSqlSelect .= $DB->DateToCharFunction($arFields[$val]["FIELD"], "FULL")." as ".$val;
333 }
334 elseif ($arFields[$val]["TYPE"] == "date")
335 {
336 if (($DB->type == "ORACLE" || $DB->type == "MSSQL") && (array_key_exists($val, $arOrder)))
337 $strSqlSelect .= $arFields[$val]["FIELD"]." as ".$val."_X1, ";
338
339 $strSqlSelect .= $DB->DateToCharFunction($arFields[$val]["FIELD"], "SHORT")." as ".$val;
340 }
341 else
342 $strSqlSelect .= $arFields[$val]["FIELD"]." as ".$val;
343 }
344
345 if (isset($arFields[$val]["FROM"])
346 && $arFields[$val]["FROM"] <> ''
347 && !in_array($arFields[$val]["FROM"], $arAlreadyJoined))
348 {
349 if ($strSqlFrom <> '')
350 $strSqlFrom .= " ";
351 $strSqlFrom .= $arFields[$val]["FROM"];
352 $arAlreadyJoined[] = $arFields[$val]["FROM"];
353 }
354 }
355 }
356 }
357
358 if ($strSqlGroupBy <> '')
359 {
360 if ($strSqlSelect <> '')
361 $strSqlSelect .= ", ";
362 $strSqlSelect .= "COUNT(%%_DISTINCT_%% ".$arFields[$arFieldsKeys[0]]["FIELD"].") as CNT";
363 }
364 else
365 $strSqlSelect = "%%_DISTINCT_%% ".$strSqlSelect;
366 }
367 // <-- SELECT
368
369 // WHERE -->
370 $arSqlSearch = Array();
371
372 if (!is_array($arFilter))
373 $filter_keys = Array();
374 else
375 $filter_keys = array_keys($arFilter);
376
377 for ($i = 0; $i < count($filter_keys); $i++)
378 {
379 $vals = $arFilter[$filter_keys[$i]];
380 if (!is_array($vals))
381 $vals = array($vals);
382
383 $key = $filter_keys[$i];
385 $key = $key_res["FIELD"];
386 $strNegative = $key_res["NEGATIVE"];
387 $strOperation = $key_res["OPERATION"];
388 $strOrNull = $key_res["OR_NULL"];
389
390 if (array_key_exists($key, $arFields))
391 {
392 $arSqlSearch_tmp = array();
393 for ($j = 0; $j < count($vals); $j++)
394 {
395 $val = $vals[$j];
396
397 if (isset($arFields[$key]["WHERE"]))
398 {
399 $arSqlSearch_tmp1 = call_user_func_array(
400 $arFields[$key]["WHERE"],
401 array($val, $key, $strOperation, $strNegative, $arFields[$key]["FIELD"], $arFields, $arFilter)
402 );
403 if ($arSqlSearch_tmp1 !== false)
404 $arSqlSearch_tmp[] = $arSqlSearch_tmp1;
405 }
406 else
407 {
408 if ($arFields[$key]["TYPE"] == "int")
409 {
410 if ((intval($val) == 0) && (mb_strpos($strOperation, "=") !== False))
411 $arSqlSearch_tmp[] = "(".$arFields[$key]["FIELD"]." IS ".(($strNegative == "Y") ? "NOT " : "")."NULL) ".(($strNegative == "Y") ? "AND" : "OR")." ".(($strNegative == "Y") ? "NOT " : "")."(".$arFields[$key]["FIELD"]." ".$strOperation." 0)";
412 else
413 $arSqlSearch_tmp[] = (($strNegative == "Y") ? " ".$arFields[$key]["FIELD"]." IS NULL OR NOT " : "")."(".$arFields[$key]["FIELD"]." ".$strOperation." ".intval($val)." )";
414 }
415 elseif ($arFields[$key]["TYPE"] == "double")
416 {
417 $val = str_replace(",", ".", $val);
418
419 if ((DoubleVal($val) == 0) && (mb_strpos($strOperation, "=") !== False))
420 $arSqlSearch_tmp[] = "(".$arFields[$key]["FIELD"]." IS ".(($strNegative == "Y") ? "NOT " : "")."NULL) ".(($strNegative == "Y") ? "AND" : "OR")." ".(($strNegative == "Y") ? "NOT " : "")."(".$arFields[$key]["FIELD"]." ".$strOperation." 0)";
421 else
422 $arSqlSearch_tmp[] = (($strNegative == "Y") ? " ".$arFields[$key]["FIELD"]." IS NULL OR NOT " : "")."(".$arFields[$key]["FIELD"]." ".$strOperation." ".DoubleVal($val)." )";
423 }
424 elseif ($arFields[$key]["TYPE"] == "string" || $arFields[$key]["TYPE"] == "char")
425 {
426 if ($strOperation == "QUERY")
427 {
428 $arSqlSearch_tmp[] = GetFilterQuery($arFields[$key]["FIELD"], $val, "Y");
429 }
430 else
431 {
432 if (((string)$val == '') && (mb_strpos($strOperation, "=") !== False))
433 $arSqlSearch_tmp[] = "(".$arFields[$key]["FIELD"]." IS ".(($strNegative == "Y") ? "NOT " : "")."NULL) ".(($strNegative == "Y") ? "AND NOT" : "OR")." (".$DB->Length($arFields[$key]["FIELD"])." <= 0) ".(($strNegative == "Y") ? "AND NOT" : "OR")." (".$arFields[$key]["FIELD"]." ".$strOperation." '".$DB->ForSql($val)."' )";
434 else
435 $arSqlSearch_tmp[] = (($strNegative == "Y") ? " ".$arFields[$key]["FIELD"]." IS NULL OR NOT " : "")."(".$arFields[$key]["FIELD"]." ".$strOperation." '".$DB->ForSql($val)."' )";
436 }
437 }
438 elseif ($arFields[$key]["TYPE"] == "datetime")
439 {
440 if ((string)$val == '')
441 $arSqlSearch_tmp[] = ($strNegative=="Y"?"NOT":"")."(".$arFields[$key]["FIELD"]." IS NULL)";
442 else
443 $arSqlSearch_tmp[] = ($strNegative=="Y"?" ".$arFields[$key]["FIELD"]." IS NULL OR NOT ":"")."(".$arFields[$key]["FIELD"]." ".$strOperation." ".$DB->CharToDateFunction($DB->ForSql($val), "FULL").")";
444 }
445 elseif ($arFields[$key]["TYPE"] == "date")
446 {
447 if ((string)$val == '')
448 $arSqlSearch_tmp[] = ($strNegative=="Y"?"NOT":"")."(".$arFields[$key]["FIELD"]." IS NULL)";
449 else
450 $arSqlSearch_tmp[] = ($strNegative=="Y"?" ".$arFields[$key]["FIELD"]." IS NULL OR NOT ":"")."(".$arFields[$key]["FIELD"]." ".$strOperation." ".$DB->CharToDateFunction($DB->ForSql($val), "SHORT").")";
451 }
452 }
453 }
454
455 if (isset($arFields[$key]["FROM"])
456 && $arFields[$key]["FROM"] <> ''
457 && !in_array($arFields[$key]["FROM"], $arAlreadyJoined))
458 {
459 if ($strSqlFrom <> '')
460 $strSqlFrom .= " ";
461 $strSqlFrom .= $arFields[$key]["FROM"];
462 $arAlreadyJoined[] = $arFields[$key]["FROM"];
463 }
464
465 $strSqlSearch_tmp = "";
466 for ($j = 0; $j < count($arSqlSearch_tmp); $j++)
467 {
468 if ($j > 0)
469 $strSqlSearch_tmp .= ($strNegative=="Y" ? " AND " : " OR ");
470 $strSqlSearch_tmp .= "(".$arSqlSearch_tmp[$j].")";
471 }
472 if ($strOrNull == "Y")
473 {
474 if ($strSqlSearch_tmp <> '')
475 $strSqlSearch_tmp .= ($strNegative=="Y" ? " AND " : " OR ");
476 $strSqlSearch_tmp .= "(".$arFields[$key]["FIELD"]." IS ".($strNegative=="Y" ? "NOT " : "")."NULL)";
477
478 if ($strSqlSearch_tmp <> '')
479 $strSqlSearch_tmp .= ($strNegative=="Y" ? " AND " : " OR ");
480 if ($arFields[$key]["TYPE"] == "int" || $arFields[$key]["TYPE"] == "double")
481 $strSqlSearch_tmp .= "(".$arFields[$key]["FIELD"]." ".($strNegative=="Y" ? "<>" : "=")." 0)";
482 elseif ($arFields[$key]["TYPE"] == "string" || $arFields[$key]["TYPE"] == "char")
483 $strSqlSearch_tmp .= "(".$arFields[$key]["FIELD"]." ".($strNegative=="Y" ? "<>" : "=")." '')";
484 }
485
486 if ($strSqlSearch_tmp != "")
487 $arSqlSearch[] = "(".$strSqlSearch_tmp.")";
488 }
489 }
490
491 for ($i = 0; $i < count($arSqlSearch); $i++)
492 {
493 if ($strSqlWhere <> '')
494 $strSqlWhere .= " AND ";
495 $strSqlWhere .= "(".$arSqlSearch[$i].")";
496 }
497 // <-- WHERE
498
499 // ORDER BY -->
500 $arSqlOrder = Array();
501 foreach ($arOrder as $by => $order)
502 {
503 $by = mb_strtoupper($by);
504 $order = mb_strtoupper($order);
505
506 if ($order != "ASC")
507 $order = "DESC";
508 else
509 $order = "ASC";
510
511 if (array_key_exists($by, $arFields))
512 {
513 $arSqlOrder[] = " ".$arFields[$by]["FIELD"]." ".$order." ";
514
515 if (isset($arFields[$by]["FROM"])
516 && $arFields[$by]["FROM"] <> ''
517 && !in_array($arFields[$by]["FROM"], $arAlreadyJoined))
518 {
519 if ($strSqlFrom <> '')
520 $strSqlFrom .= " ";
521 $strSqlFrom .= $arFields[$by]["FROM"];
522 $arAlreadyJoined[] = $arFields[$by]["FROM"];
523 }
524 }
525 elseif($obUserFieldsSql)
526 {
527 $arSqlOrder[] = " ".$obUserFieldsSql->GetOrder($by)." ".$order." ";
528 }
529 }
530
531 $strSqlOrderBy = "";
532 DelDuplicateSort($arSqlOrder);
533 for ($i=0; $i<count($arSqlOrder); $i++)
534 {
535 if ($strSqlOrderBy <> '')
536 $strSqlOrderBy .= ", ";
537
538 if($DB->type == "ORACLE")
539 {
540 if(mb_substr($arSqlOrder[$i], -3) == "ASC")
541 $strSqlOrderBy .= $arSqlOrder[$i]." NULLS FIRST";
542 else
543 $strSqlOrderBy .= $arSqlOrder[$i]." NULLS LAST";
544 }
545 else
546 $strSqlOrderBy .= $arSqlOrder[$i];
547 }
548 // <-- ORDER BY
549
550 return array(
551 "SELECT" => $strSqlSelect,
552 "FROM" => $strSqlFrom,
553 "WHERE" => $strSqlWhere,
554 "GROUPBY" => $strSqlGroupBy,
555 "ORDERBY" => $strSqlOrderBy
556 );
557 }
558}
$arResult
Определения generate_coupon.php:16
Определения sitepath.php:9
static GetFilterOperation($key)
Определения sitepath.php:152
static Delete($ID)
Определения sitepath.php:51
static DeleteBySiteID($siteID)
Определения sitepath.php:130
static GetByID($ID)
Определения sitepath.php:68
static PrepareSql(&$arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields, $obUserFieldsSql=false)
Определения sitepath.php:212
static CheckFields($ACTION, &$arFields, $ID=0)
Определения sitepath.php:12
static GetBySiteID($siteID)
Определения sitepath.php:97
static GetList($arOrder=Array("ID"=> "DESC"), $arFilter=Array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения sitepath.php:83
$arFields
Определения dblapprove.php:5
$arPath
Определения file_edit.php:72
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
GetFilterQuery($field, $val, $procent="Y", $ex_sep=array(), $clob="N", $div_fields="Y", $clob_upper="N")
Определения filter_tools.php:383
$GLOBALS["LEARNING_SITE_PATH"]
Определения sitepath.php:5
$result
Определения get_property_values.php:14
if($ajaxMode) $ID
Определения get_user.php:27
global $DB
Определения cron_frame.php:29
$siteID
Определения cron_frame.php:12
$ACTION
Определения csv_new_setup.php:27
DelDuplicateSort(&$arSort)
Определения tools.php:2055
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778
is_set($a, $k=false)
Определения tools.php:2133
GetMessage($name, $aReplace=null)
Определения tools.php:3397
$order
Определения payment.php:8
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)
Определения prolog_main_admin.php:393
if(empty($signedUserToken)) $key
Определения quickway.php:257
$i
Определения factura.php:643
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
Определения waybill.php:936
$val
Определения options.php:1793
$GLOBALS['_____370096793']
Определения update_client.php:1
$dbResult
Определения updtr957.php:3
$arFilter
Определения user_search.php:106