1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
user_cards.php
См. документацию.
1<?php
2
4
6
8{
9 public static function CheckFields($ACTION, &$arFields, $ID = 0)
10 {
11 if ((is_set($arFields, "USER_ID") || $ACTION=="ADD") && intval($arFields["USER_ID"]) <= 0)
12 {
13 $GLOBALS["APPLICATION"]->ThrowException("Empty user field", "EMPTY_USER_ID");
14 return false;
15 }
16 if ((is_set($arFields, "PAY_SYSTEM_ACTION_ID") || $ACTION=="ADD") && intval($arFields["PAY_SYSTEM_ACTION_ID"]) <= 0)
17 {
18 $GLOBALS["APPLICATION"]->ThrowException("Empty pay system field", "EMPTY_PAY_SYSTEM_ACTION_ID");
19 return false;
20 }
21 if ((is_set($arFields, "CARD_TYPE") || $ACTION=="ADD") && $arFields["CARD_TYPE"] == '')
22 {
23 $GLOBALS["APPLICATION"]->ThrowException("Empty card type field", "EMPTY_CARD_TYPE");
24 return false;
25 }
26 if ((is_set($arFields, "CARD_NUM") || $ACTION=="ADD") && $arFields["CARD_NUM"] == '')
27 {
28 $GLOBALS["APPLICATION"]->ThrowException("Empty card number field", "EMPTY_CARD_NUM");
29 return false;
30 }
31 if ((is_set($arFields, "CARD_EXP_MONTH") || $ACTION=="ADD") && (intval($arFields["CARD_EXP_MONTH"]) <= 0 || intval($arFields["CARD_EXP_MONTH"]) > 12))
32 {
33 $GLOBALS["APPLICATION"]->ThrowException("Empty card expiration month field", "EMPTY_CARD_EXP_MONTH");
34 return false;
35 }
36 if ((is_set($arFields, "CARD_EXP_YEAR") || $ACTION=="ADD") && (intval($arFields["CARD_EXP_YEAR"]) <= 2000 || intval($arFields["CARD_EXP_YEAR"]) > 2100))
37 {
38 $GLOBALS["APPLICATION"]->ThrowException("Empty card expiration year field", "EMPTY_CARD_EXP_YEAR");
39 return false;
40 }
41
42 if ((is_set($arFields, "SORT") || $ACTION=="ADD") && intval($arFields["SORT"]) <= 0)
43 $arFields["SORT"] = 100;
44
45 if ($ACTION != "ADD" && intval($ID) <= 0)
46 {
47 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_NO_ID"), "NO_UC_ID");
48 return false;
49 }
50
51 if (is_set($arFields, "SUM_MIN") && $arFields["SUM_MIN"] !== false)
52 {
53 $arFields["SUM_MIN"] = str_replace(",", ".", $arFields["SUM_MIN"]);
54 $arFields["SUM_MIN"] = DoubleVal($arFields["SUM_MIN"]);
55 }
56
57 if (is_set($arFields, "SUM_MAX") && $arFields["SUM_MAX"] !== false)
58 {
59 $arFields["SUM_MAX"] = str_replace(",", ".", $arFields["SUM_MAX"]);
60 $arFields["SUM_MAX"] = DoubleVal($arFields["SUM_MAX"]);
61 }
62
63 if ((is_set($arFields, "SUM_MIN") && $arFields["SUM_MIN"] !== false
64 || is_set($arFields, "SUM_MAX") && $arFields["SUM_MAX"] !== false))
65 {
66 if ((is_set($arFields, "SUM_CURRENCY") || $ACTION=="ADD") && $arFields["SUM_CURRENCY"] == '')
67 {
68 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_NO_CURRENCY"), "EMPTY_SUM_CURRENCY");
69 return false;
70 }
71 elseif (!is_set($arFields, "SUM_CURRENCY"))
72 {
73 $arUserCard = CSaleUserCard::GetByID($ID);
74 if ($arUserCard["SUM_CURRENCY"] == '')
75 {
76 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_NO_CURRENCY"), "EMPTY_SUM_CURRENCY");
77 return false;
78 }
79 }
80 }
81
82 if (is_set($arFields, "LAST_SUM") && $arFields["LAST_SUM"] !== false)
83 {
84 $arFields["LAST_SUM"] = str_replace(",", ".", $arFields["LAST_SUM"]);
85 $arFields["LAST_SUM"] = DoubleVal($arFields["LAST_SUM"]);
86 }
87
88 if (is_set($arFields, "LAST_STATUS") && $arFields["LAST_STATUS"] != "Y")
89 $arFields["LAST_STATUS"] = "N";
90
91 if ((is_set($arFields, "ACTIVE") || $ACTION == "ADD") && $arFields["ACTIVE"] != "Y")
92 $arFields["ACTIVE"] = "N";
93
94 if (is_set($arFields, "USER_ID"))
95 {
96 $dbUser = CUser::GetByID($arFields["USER_ID"]);
97 if (!$dbUser->Fetch())
98 {
99 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#ID#", $arFields["USER_ID"], GetMessage("SKGUC_NO_USER")), "ERROR_NO_USER_ID");
100 return false;
101 }
102 }
103
104 if (is_set($arFields, "PAY_SYSTEM_ACTION_ID"))
105 {
106 if (!($arPaySysAction = CSalePaySystemAction::GetByID($arFields["PAY_SYSTEM_ACTION_ID"])))
107 {
108 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#ID#", $arFields["PAY_SYSTEM_ACTION_ID"], GetMessage("SKGUC_NO_PS")), "ERROR_NO_PAY_SYSTEM_ACTION");
109 return false;
110 }
111 }
112
113 $connection = Application::getConnection();
114 $helper = $connection->getSqlHelper();
115 unset($arFields['TIMESTAMP_X']);
116 $arFields['~TIMESTAMP_X'] = $helper->getCurrentDateTimeFunction();
117
118 return true;
119 }
120
121 public static function Delete($ID)
122 {
123 global $DB;
124
125 $ID = intval($ID);
126 if ($ID <= 0)
127 return False;
128
129 return $DB->Query("DELETE FROM b_sale_user_cards WHERE ID = ".$ID." ", true);
130 }
131
132 public static function OnUserDelete($UserID)
133 {
134 global $DB;
135 $UserID = intval($UserID);
136
137 return $DB->Query("DELETE FROM b_sale_user_cards WHERE USER_ID = ".$UserID." ", true);
138 }
139
140 public static function CheckPassword()
141 {
142 $strFileName = COption::GetOptionString("sale", "sale_data_file", "");
143
144 $pwdString = "";
145 if (file_exists($strFileName))
146 include($strFileName);
147
148 if ($pwdString == '')
149 {
150 $GLOBALS["APPLICATION"]->ThrowException("Please enter valid password on Sale module global settings page", "EMPTY_PASSWORD");
151 return False;
152 }
153
154 return True;
155 }
156
157 public static function CryptData($data, $type)
158 {
159 $type = mb_strtoupper($type);
160 if ($type != "D")
161 $type = "E";
162
163 $res_data = "";
164
165 $strFileName = COption::GetOptionString("sale", "sale_data_file", "");
166 $pwdString = "";
167 if (file_exists($strFileName))
168 include($strFileName);
169
170 if ($pwdString == '')
171 {
172 $GLOBALS["APPLICATION"]->ThrowException("Please enter valid password on Sale module global settings page", "EMPTY_PASSWORD");
173 return $data;
174 }
175
176 // The following two crypt algorithms give different output. It is imposible to switch between these algorithms!
177 $cryptAlgorithm = COption::GetOptionString("sale", "crypt_algorithm", "RC4");
178
179 if (($cryptAlgorithm == "AES" || $cryptAlgorithm == "3DES") && extension_loaded("mcrypt"))
180 {
181 if ($cryptAlgorithm == "AES")
182 $rEncModule = mcrypt_module_open('rijndael-256', '', 'ofb', '');
183 else
184 $rEncModule = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_ECB, '');
185
186 if ($type == "E")
187 {
188 $randomSource = preg_match("/^WIN/i", PHP_OS)? MCRYPT_RAND: MCRYPT_DEV_RANDOM;
189 $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($rEncModule), $randomSource);
190 }
191 else
192 {
193 list($iv, $data) = explode(" ", $data);
194 $iv = urldecode($iv);
195 $data = urldecode($data);
196 }
197
198 $keySize = mcrypt_enc_get_key_size($rEncModule);
199 $keyString = mb_substr(md5($pwdString), 0, $keySize);
200
201 mcrypt_generic_init($rEncModule, $keyString, $iv);
202
203 if ($type == "E")
204 $res_data = mcrypt_generic($rEncModule, $data);
205 else
206 $res_data = mdecrypt_generic($rEncModule, $data);
207
208 mcrypt_generic_deinit($rEncModule);
209
210 mcrypt_module_close($rEncModule);
211
212 if ($type == "E")
213 $res_data = urlencode($iv)." ".urlencode($res_data);
214 }
215 else
216 {
217 if ($type == 'D')
218 $data = urldecode($data);
219
220 $key[] = "";
221 $box[] = "";
222 $temp_swap = "";
223 $pwdLength = mb_strlen($pwdString);
224
225 for ($i = 0; $i <= 255; $i++)
226 {
227 $key[$i] = ord(mb_substr($pwdString, ($i % $pwdLength), 1));
228 $box[$i] = $i;
229 }
230 $x = 0;
231
232 for ($i = 0; $i <= 255; $i++)
233 {
234 $x = ($x + $box[$i] + $key[$i]) % 256;
235 $temp_swap = $box[$i];
236 $box[$i] = $box[$x];
237 $box[$x] = $temp_swap;
238 }
239 $temp = "";
240 $k = "";
241 $cipherby = "";
242 $cipher = "";
243 $a = 0;
244 $j = 0;
245 $countData = mb_strlen($data);
246 for ($i = 0; $i < $countData; $i++)
247 {
248 $a = ($a + 1) % 256;
249 $j = ($j + $box[$a]) % 256;
250 $temp = $box[$a];
251 $box[$a] = $box[$j];
252 $box[$j] = $temp;
253 $k = $box[(($box[$a] + $box[$j]) % 256)];
254 $cipherby = ord(mb_substr($data, $i, 1)) ^ $k;
255 $cipher .= chr($cipherby);
256 }
257
258 if ($type == 'D')
259 $res_data = urldecode(urlencode($cipher));
260 else
261 $res_data = urlencode($cipher);
262 }
263
264 return $res_data;
265 }
266
267 public static function IdentifyCardType($ccNum)
268 {
269 //*CARD TYPES *PREFIX *WIDTH
270 $ccNum = preg_replace('/[^0-9]+/', '', $ccNum);
271 //Visa 4 13, 16
272 if (preg_match('/^4(.{12}|.{15})$/', $ccNum))
273 return 'VISA';
274 //Master Card 51 to 55 16
275 elseif (preg_match('/^5[1-5].{14}$/', $ccNum))
276 return 'MASTERCARD';
277 //American Express 34, 37 15
278 elseif (preg_match('/^3[47].{13}$/', $ccNum))
279 return 'AMEX';
280 //Diners Club 300 to 305, 36 14
281 //Carte Blanche 38 14
282 elseif (preg_match('/^3(0[0-5].{11}|[68].{12})$/', $ccNum))
283 return 'DINERS';
284 //Discover 6011 16
285 elseif (preg_match('/^6011.{12}$/', $ccNum))
286 return 'DISCOVER';
287 //JCB 3 16
288 //JCB 2131, 1800 15
289 elseif (preg_match('/^3.{15}|(2131|1800).{11}$/', $ccNum))
290 return 'JCB';
291 //EnRoute 2014, 2149 15
292 elseif (preg_match('/^2(014|149).{11}$/', $ccNum))
293 return 'ENROUTE';
294 else
295 return "N";
296 }
297
298 public static function WithdrawByID($sum, $currency, $ID, $orderID = 0)
299 {
300 $sum = DoubleVal($sum);
301 if ($sum <= 0)
302 {
303 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_EMPTY_SUM"), "EMPTY_SUM");
304 return false;
305 }
306
307 $currency = Trim($currency);
308 if ($currency == '')
309 {
310 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_EMPTY_CURRENCY"), "EMPTY_SUM_CURRENCY");
311 return false;
312 }
313
314 $ID = intval($ID);
315 if ($ID <= 0)
316 {
317 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_EMPTY_ID"), "EMPTY_ID");
318 return false;
319 }
320
321 $orderID = intval($orderID);
322
323 $arUserCard = CSaleUserCards::GetByID($ID);
324 if (!$arUserCard)
325 {
326 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#ID#", $ID, GetMessage("SKGUC_NO_RECID")), "NO_RECORD");
327 return false;
328 }
329
330 return CSaleUserCards::Withdraw($sum, $currency, $arUserCard, $orderID);
331 }
332
333 public static function Withdraw($sum, $currency, $arUserCard, $orderID = 0)
334 {
335 $sum = str_replace(",", ".", $sum);
336 $sum = roundEx(DoubleVal($sum), SALE_VALUE_PRECISION);
337 if ($sum <= 0)
338 {
339 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_EMPTY_SUM"), "EMPTY_SUM");
340 return false;
341 }
342
343 $currency = Trim($currency);
344 if ($currency == '')
345 {
346 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_EMPTY_CURRENCY"), "EMPTY_SUM_CURRENCY");
347 return false;
348 }
349
350 if (!is_array($arUserCard) || count($arUserCard) <= 0)
351 {
352 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("SKGUC_NO_PARAMS"), "EMPTY_CARD_ARRAY");
353 return false;
354 }
355
356 $orderID = intval($orderID);
357
358 if (DoubleVal($arUserCard["SUM_MAX"]) > 0)
359 {
360 $maxSum = roundEx(CCurrencyRates::ConvertCurrency($arUserCard["SUM_MAX"], $arUserCard["SUM_CURRENCY"], $currency), SALE_VALUE_PRECISION);
361 if ($maxSum < $sum)
362 {
363 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#SUM1#", SaleFormatCurrency($arUserCard["SUM_MAX"], $arUserCard["SUM_CURRENCY"]), str_replace("#SUM2#", SaleFormatCurrency($sum, $currency), GetMessage("SKGUC_CROSS_BOUND"))), "MAX_SUM_LIMIT");
364 return false;
365 }
366 }
367
368 $arPSAction = CSalePaySystemAction::GetByID($arUserCard["PAY_SYSTEM_ACTION_ID"]);
369 if (!$arPSAction)
370 {
371 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#ID#", $arUserCard["PAY_SYSTEM_ACTION_ID"], GetMessage("SKGUC_NO_ACTION")), "NO_PAY_SYSTEM_ACTION");
372 return false;
373 }
374
375 $psActionPath = $_SERVER["DOCUMENT_ROOT"].$arPSAction["ACTION_FILE"];
376 if (!file_exists($psActionPath))
377 {
378 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#FILE#", $arPSAction["ACTION_FILE"], GetMessage("SKGUC_NO_PATH")), "NO_PS_PATH");
379 return false;
380 }
381
382 if (is_file($psActionPath))
383 $psActionPath = dirname($psActionPath);
384
385 if (!file_exists($psActionPath."/action.php"))
386 {
387 $GLOBALS["APPLICATION"]->ThrowException(str_replace("#FILE#", $psActionPath."/action.php", GetMessage("SKGUC_NO_SCRIPT")), "NO_PS_SCRIPT");
388 return false;
389 }
390
391 $INPUT_CARD_TYPE = $arUserCard["CARD_TYPE"];
392 $INPUT_CARD_NUM = CSaleUserCards::CryptData($arUserCard["CARD_NUM"], "D");
393 $INPUT_CARD_EXP_MONTH = $arUserCard["CARD_EXP_MONTH"];
394 $INPUT_CARD_EXP_YEAR = $arUserCard["CARD_EXP_YEAR"];
395 $INPUT_CARD_CODE = $arUserCard["CARD_CODE"];
397 if (DoubleVal($arUserCard["SUM_MIN"]) > 0)
398 {
399 $minSum = roundEx(CCurrencyRates::ConvertCurrency($arUserCard["SUM_MIN"], $arUserCard["SUM_CURRENCY"], $currency), SALE_VALUE_PRECISION);
400 if ($minSum > $sum)
401 $INPUT_SUM = $minSum;
402 }
404
405 $GLOBALS["SALE_INPUT_PARAMS"] = array();
406
407 $dbUser = CUser::GetByID(intval($arUserCard["USER_ID"]));
408 if ($arUser = $dbUser->Fetch())
409 $GLOBALS["SALE_INPUT_PARAMS"]["USER"] = $arUser;
410
411 if ($orderID > 0)
412 {
413 if ($arOrder = CSaleOrder::GetByID($orderID))
414 {
415 $GLOBALS["SALE_INPUT_PARAMS"]["ORDER"] = $arOrder;
416 $GLOBALS["SALE_INPUT_PARAMS"]["ORDER"]["SHOULD_PAY"] = DoubleVal($arOrder["PRICE"]) - DoubleVal($arOrder["SUM_PAID"]);
417
418 $arDateInsert = explode(" ", $arOrder["DATE_INSERT"]);
419 if (is_array($arDateInsert) && count($arDateInsert) > 0)
420 $GLOBALS["SALE_INPUT_PARAMS"]["ORDER"]["DATE_INSERT_DATE"] = $arDateInsert[0];
421 else
422 $GLOBALS["SALE_INPUT_PARAMS"]["ORDER"]["DATE_INSERT_DATE"] = $arOrder["DATE_INSERT"];
423 }
424
425 $arCurOrderProps = array();
426 $dbOrderPropVals = CSaleOrderPropsValue::GetList(
427 array(),
428 array("ORDER_ID" => $ORDER_ID),
429 false,
430 false,
431 array("ID", "CODE", "VALUE", "ORDER_PROPS_ID", "PROP_TYPE")
432 );
433 while ($arOrderPropVals = $dbOrderPropVals->Fetch())
434 {
435 $arCurOrderPropsTmp = CSaleOrderProps::GetRealValue(
436 $arOrderPropVals["ORDER_PROPS_ID"],
437 $arOrderPropVals["CODE"],
438 $arOrderPropVals["PROP_TYPE"],
439 $arOrderPropVals["VALUE"],
440 LANGUAGE_ID
441 );
442 foreach ($arCurOrderPropsTmp as $key => $value)
443 {
444 $arCurOrderProps[$key] = $value;
445 }
446 }
447
448 if (count($arCurOrderProps) > 0)
449 $GLOBALS["SALE_INPUT_PARAMS"]["PROPERTY"] = $arCurOrderProps;
450 }
451
452 $GLOBALS["SALE_CORRESPONDENCE"] = CSalePaySystemAction::UnSerializeParams($arPSAction["PARAMS"]);
453
454 include($psActionPath."/action.php");
455
456 $INPUT_CARD_NUM = "";
458 {
459 $GLOBALS["APPLICATION"]->ThrowException($OUTPUT_ERROR_MESSAGE, "ERROR_MESSAGE");
460 return false;
461 }
462
464 "LAST_STATUS" => $OUTPUT_STATUS,
465 "LAST_STATUS_CODE" => $OUTPUT_STATUS_CODE,
466 "LAST_STATUS_DESCRIPTION" => $OUTPUT_STATUS_DESCRIPTION,
467 "LAST_STATUS_MESSAGE" => $OUTPUT_STATUS_MESSAGE,
468 "LAST_SUM" => $OUTPUT_SUM,
469 "LAST_CURRENCY" => $OUTPUT_CURRENCY,
470 "LAST_DATE" => Date(CDatabase::DateFormatToPHP(CLang::GetDateFormat("FULL", LANG)))
471 );
472 CSaleUserCards::Update($arUserCard["ID"], $arFields);
473
474 if ($OUTPUT_STATUS == "Y")
475 {
476 $OUTPUT_SUM = str_replace(",", ".", $OUTPUT_SUM);
477 $OUTPUT_SUM = DoubleVal($OUTPUT_SUM);
478
479 if ($OUTPUT_CURRENCY != $currency)
480 $OUTPUT_SUM = roundEx(CCurrencyRates::ConvertCurrency($OUTPUT_SUM, $OUTPUT_CURRENCY, $currency), SALE_VALUE_PRECISION);
481
482 return $OUTPUT_SUM;
483 }
484
485 $GLOBALS["APPLICATION"]->ThrowException($OUTPUT_STATUS_DESCRIPTION, "ERROR_PAY");
486 return False;
487 }
488}
$connection
Определения actionsdefinitions.php:38
$sum
Определения checkout.php:6
$type
Определения options.php:106
static ConvertCurrency($valSum, $curFrom, $curTo, $valDate="")
Определения currency_rate.php:393
static GetList($arOrder=array(), $arFilter=array(), $arGroupBy=false, $arNavStartParams=false, $arSelectFields=array())
Определения order_props_values.php:12
static UnSerializeParams($strParams)
Определения pay_system_action.php:66
static GetByID($id)
Определения pay_system_action.php:14
Определения user_cards.php:8
static IdentifyCardType($ccNum)
Определения user_cards.php:267
static Delete($ID)
Определения user_cards.php:121
static WithdrawByID($sum, $currency, $ID, $orderID=0)
Определения user_cards.php:298
static OnUserDelete($UserID)
Определения user_cards.php:132
static Withdraw($sum, $currency, $arUserCard, $orderID=0)
Определения user_cards.php:333
static CheckFields($ACTION, &$arFields, $ID=0)
Определения user_cards.php:9
static CheckPassword()
Определения user_cards.php:140
static CryptData($data, $type)
Определения user_cards.php:157
static GetRealValue($propertyID, $propertyCode, $propertyType, $value, $lang=false)
Определения order_props.php:776
static GetByID($ID)
Определения user_cards.php:7
static Update($ID, $arFields)
Определения user_cards.php:173
$arFields
Определения dblapprove.php:5
$data['IS_AVAILABLE']
Определения .description.php:13
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804
if($ajaxMode) $ID
Определения get_user.php:27
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
global $DB
Определения cron_frame.php:29
$ACTION
Определения csv_new_setup.php:27
roundEx($value, $prec=0)
Определения tools.php:4635
IncludeModuleLangFile($filepath, $lang=false, $bReturnArray=false)
Определения tools.php:3778
is_set($a, $k=false)
Определения tools.php:2133
GetMessage($name, $aReplace=null)
Определения tools.php:3397
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
$ORDER_ID
Определения html.php:2
$arPaySysAction["ENCODING"]
Определения pdf.php:2
$currency
Определения template.php:266
else $a
Определения template.php:137
SaleFormatCurrency($fSum, $strCurrency, $OnlyValue=false, $withoutFormat=false)
Определения include.php:142
const SALE_VALUE_PRECISION
Определения include.php:46
$INPUT_CURRENCY
Определения action.php:48
$INPUT_CARD_EXP_MONTH
Определения action.php:33
$INPUT_CARD_CODE
Определения action.php:31
$INPUT_CARD_EXP_YEAR
Определения action.php:39
$OUTPUT_ERROR_MESSAGE
Определения action.php:52
$INPUT_SUM
Определения action.php:43
$INPUT_CARD_NUM
Определения action.php:27
$orderID
Определения result.php:9
$k
Определения template_pdf.php:567
$GLOBALS['_____370096793']
Определения update_client.php:1