Cheetah
ChPmtDb.php
Go to the documentation of this file.
1 <?php
2 
8 ch_import('ChWsbModuleDb');
9 
10 class ChPmtDb extends ChWsbModuleDb
11 {
12  var $_oConfig;
13  /*
14  * Constructor.
15  */
16  function __construct(&$oConfig)
17  {
18  parent::__construct($oConfig);
19 
20  $this->_oConfig = &$oConfig;
21  }
22 
23  function insertData($aData)
24  {
25  $this->query("INSERT IGNORE INTO `" . $this->_sPrefix . "modules` (`uri`) VALUES('" . $aData['uri'] . "')");
26  }
27 
28  function deleteData($aData)
29  {
30  $this->query("DELETE FROM `" . $this->_sPrefix . "modules` WHERE `uri`='" . $aData['uri'] . "' LIMIT 1");
31  }
32 
36  function getForm()
37  {
38  $sSql = "SELECT
39  `tp`.`id` AS `provider_id`,
40  `tp`.`name` AS `provider_name`,
41  `tp`.`caption` AS `provider_caption`,
42  `tp`.`description` AS `provider_description`,
43  `tp`.`option_prefix` AS `provider_option_prefix`,
44  `tpo`.`id` AS `id`,
45  `tpo`.`name` AS `name`,
46  `tpo`.`type` AS `type`,
47  `tpo`.`caption` AS `caption`,
48  `tpo`.`description` AS `description`,
49  `tpo`.`extra` AS `extra`,
50  `tpo`.`check_type` AS `check_type`,
51  `tpo`.`check_params` AS `check_params`,
52  `tpo`.`check_error` AS `check_error`
53  FROM `" . $this->_sPrefix . "providers` AS `tp`
54  LEFT JOIN `" . $this->_sPrefix . "providers_options` AS `tpo` ON `tp`.`id`=`tpo`.`provider_id`
55  ORDER BY `tp`.`id` ASC, `tpo`.`order` ASC";
56 
57  return $this->getAll($sSql);
58  }
59  function getFormData($iUserId)
60  {
61  $sSql = "SELECT
62  `tuv`.`option_id` AS `option_id`,
63  `tuv`.`value` AS `value`
64  FROM `" . $this->_sPrefix . "user_values` AS `tuv`
65  WHERE `tuv`.`user_id`= ?";
66 
67  return $this->getAllWithKey($sSql, 'option_id', [$iUserId]);
68  }
69  function updateOption($iUserId, $iOptionId, $sValue)
70  {
71  $sSql = "REPLACE INTO `" . $this->_sPrefix . "user_values` SET `user_id`='" . $iUserId . "', `option_id`='" . $iOptionId . "', `value`='" . $sValue . "'";
72  return $this->query($sSql);
73  }
74 
78  function getCartItems($iId)
79  {
80  return $this->getOne("SELECT `items` FROM `" . $this->_sPrefix . "cart` WHERE `client_id`='" . $iId . "' LIMIT 1");
81  }
82  function setCartItems($iId, $sItems)
83  {
84  $sItems = trim($sItems, ":");
85  if(empty($sItems))
86  $sSql = "DELETE FROM `" . $this->_sPrefix . "cart` WHERE `client_id`='" . $iId . "' LIMIT 1";
87  else
88  $sSql = "REPLACE INTO `" . $this->_sPrefix . "cart` SET `client_id`='" . $iId . "', `items`='" . $sItems . "'";
89 
90  return $this->query($sSql);
91  }
92  function getVendorId($sUsername)
93  {
94  if(empty($sUsername))
95  return CH_PMT_EMPTY_ID;
96 
97  return (int)$this->getOne("SELECT `ID` FROM `Profiles` WHERE `NickName`='" . $sUsername . "' LIMIT 1");
98  }
100  {
101  $sCurrencyCode = $this->_oConfig->getCurrencyCode();
102  $sCurrencySign = $this->_oConfig->getCurrencySign();
103 
105  return array(
106  'id' => CH_PMT_ADMINISTRATOR_ID,
107  'username' => CH_PMT_ADMINISTRATOR_USERNAME,
108  'profile_name' => getParam('site_title'),
109  'profile_icon' => $GLOBALS['oFunctions']->getMemberThumbnail(0, 'none', false, 'site', true, 'small'),
110  'profile_url' => CH_WSB_URL_ROOT,
111  'status' => 'Active',
112  'currency_code' => $sCurrencyCode,
113  'currency_sign' => $sCurrencySign
114  );
115 
116  $sSql = "SELECT
117  `tp`.`ID` AS `id`,
118  `tp`.`NickName` AS `username`,
119  '' AS `profile_name`,
120  '' AS `profile_url`,
121  `tp`.`Status` AS `status`,
122  '" . $sCurrencyCode . "' AS `currency_code`,
123  '" . $sCurrencySign . "' AS `currency_sign`
124  FROM `Profiles` AS `tp`
125  WHERE `tp`.`ID`= ?
126  LIMIT 1";
127  $aVendor = $this->getRow($sSql, [$iId]);
128 
129  if(!empty($aVendor)) {
130  $aVendor['profile_name'] = getNickName($aVendor['id']);
131  $aVendor['profile_icon'] = get_member_icon($aVendor['id']);
132  $aVendor['profile_url'] = getProfileLink($aVendor['id']);
133  }
134 
135  return $aVendor;
136  }
137  function getVendorInfoProviders($iId, $sProvider = '')
138  {
139  $aResult = array();
140 
141  //--- Get specified payment provider if it's available ---//
142  if(!empty($sProvider)) {
143  $aProvider = $this->getProviders($sProvider);
144  $aOptions = $this->getOptions($iId, $aProvider['id']);
145 
146  if(isset($aOptions[$aProvider['option_prefix'] . 'active']) && $aOptions[$aProvider['option_prefix'] . 'active']['value'] == 'on') {
147  $aProvider['options'] = $aOptions;
148  $aResult = $aProvider;
149  }
150  }
151  //--- Get all available payment providers ---//
152  else{
153  $aProviders = $this->getProviders();
154  $aOptions = $this->getOptions($iId);
155 
156  foreach($aProviders as $aProvider)
157  if(isset($aOptions[$aProvider['option_prefix'] . 'active']) && $aOptions[$aProvider['option_prefix'] . 'active']['value'] == 'on') {
158  foreach($aOptions as $sName => $aOption)
159  if(strpos($sName, $aProvider['option_prefix']) !== false)
160  $aProvider['options'][$sName] = $aOption;
161  $aResult[] = $aProvider;
162  }
163  }
164 
165  return $aResult;
166  }
167  function getFirstAdminId()
168  {
169  return (int)$this->getOne("SELECT `ID` FROM `Profiles` WHERE `Role`&" . CH_WSB_ROLE_ADMIN . " AND `Status`='Active' ORDER BY `ID` ASC LIMIT 1");
170  }
171  function getAdminsIds()
172  {
173  return $this->getColumn("SELECT `ID` FROM `Profiles` WHERE `Role`&" . CH_WSB_ROLE_ADMIN . " AND `Status`='Active' ORDER BY `ID` ASC");
174  }
175 
179  function getProviders($sName = '')
180  {
181  $sWhereClause = "1";
182  $aBindings = [];
183  if (!empty($sName)) {
184  $sWhereClause = "`tp`.`name`= ?";
185  $aBindings = [$sName];
186  }
187 
188  $sSql = "SELECT
189  `tp`.`id` AS `id`,
190  `tp`.`name` AS `name`,
191  `tp`.`caption` AS `caption`,
192  `tp`.`description` AS `description`,
193  `tp`.`option_prefix` AS `option_prefix`,
194  `tp`.`for_visitor` AS `for_visitor`,
195  `tp`.`class_name` AS `class_name`,
196  `tp`.`class_file` AS `class_file`
197  FROM `" . $this->_sPrefix . "providers` AS `tp`
198  WHERE " . $sWhereClause;
199  return !empty($sName) ? $this->getRow($sSql, $aBindings) : $this->getAll($sSql, $aBindings);
200  }
201  function getOptions($iUserId = CH_PMT_EMPTY_ID, $iProviderId = 0)
202  {
203  if($iUserId == CH_PMT_EMPTY_ID && empty($iProviderId))
204  return $this->getAll("SELECT `id`, `name`, `type` FROM `" . $this->_sPrefix . "providers_options`");
205 
206  $sWhereAddon = "";
207  $aBindings = [];
208  if (!empty($iProviderId)) {
209  $sWhereAddon = " AND `tpo`.`provider_id`= ? ";
210  $aBindings[] = $iProviderId;
211  }
212  $aBindings[] = $iUserId;
213 
214  $sSql = "SELECT
215  `tpo`.`name` AS `name`,
216  `tuv`.`value` AS `value`
217  FROM `" . $this->_sPrefix . "providers_options` AS `tpo`
218  LEFT JOIN `" . $this->_sPrefix . "user_values` AS `tuv` ON `tpo`.`id`=`tuv`.`option_id`
219  WHERE 1" . $sWhereAddon . " AND `tuv`.`user_id`= ?";
220 
221  return $this->getAllWithKey($sSql, 'name', $aBindings);
222  }
223 
224  function getPending($aParams)
225  {
226  $sDateFormat = $this->_oConfig->getDateFormat('orders');
227 
228  $sMethodName = 'getRow';
229  $aBindings = [];
230  switch($aParams['type']) {
231  case 'id':
232  $sWhereClause = " AND `id`= ? ";
233  $aBindings[] = $aParams['id'];
234  break;
235  }
236  $sSql = "SELECT
237  `id`,
238  `client_id`,
239  `seller_id`,
240  `items`,
241  `amount`,
242  `order`,
243  `error_code`,
244  `error_msg`,
245  `provider`,
246  `date`,
247  DATE_FORMAT(FROM_UNIXTIME(`date`), '" . $sDateFormat . "') AS `date_uf`,
248  `processed`,
249  `reported`
250  FROM `" . $this->_sPrefix . "transactions_pending`
251  WHERE 1 " . $sWhereClause . "
252  LIMIT 1";
253  return $this->$sMethodName($sSql, $aBindings);
254  }
255 
256  function insertPending($iClientId, $sProviderName, $aCartInfo)
257  {
258  $sItems = "";
259  foreach($aCartInfo['items'] as $aItem)
260  $sItems .= $aCartInfo['vendor_id'] . '_' . $aItem['module_id'] . '_' . $aItem['id'] . '_' . $aItem['quantity'] . ':';
261 
262  $sSql = "INSERT INTO `" . $this->_sPrefix . "transactions_pending` SET
263  `client_id`='" . $iClientId . "',
264  `seller_id`='" . $aCartInfo['vendor_id'] . "',
265  `items`='" . trim($sItems, ':') . "',
266  `amount`='" . $aCartInfo['items_price'] . "',
267  `provider`='" . $sProviderName . "',
268  `date`=UNIX_TIMESTAMP()";
269 
270  return (int)$this->query($sSql) > 0 ? $this->lastId() : 0;
271  }
272  function updatePending($iId, $aValues)
273  {
274  $sUpdateClause = "";
275  foreach($aValues as $sName => $sValue)
276  $sUpdateClause .= "`" . $sName . "`='" . $sValue . "', ";
277 
278  $sSql = "UPDATE `" . $this->_sPrefix . "transactions_pending`
279  SET " . $sUpdateClause . "`reported`='0'
280  WHERE `id`='" . $iId . "'";
281  return (int)$this->query($sSql) > 0;
282  }
284  {
285  $sSetClause = "";
286  foreach($aInfo as $sKey => $sValue)
287  $sSetClause .= "`" . $sKey . "`='" . $sValue . "', ";
288 
289  return $this->query("INSERT INTO `" . $this->_sPrefix . "transactions` SET " . $sSetClause . "`date`=UNIX_TIMESTAMP(), `reported`='0'");
290  }
291  function updateTransaction($iId, $aValues)
292  {
293  $sUpdateClause = "";
294  foreach($aValues as $sName => $sValue)
295  $sUpdateClause .= "`" . $sName . "`='" . $sValue . "', ";
296  $sUpdateClause = substr($sUpdateClause, 0, -2);
297 
298  $sSql = "UPDATE `" . $this->_sPrefix . "transactions`
299  SET " . $sUpdateClause . "
300  WHERE `id`='" . $iId . "'";
301  return (int)$this->query($sSql) > 0;
302  }
303  function getProcessed($aParams)
304  {
305  $sDateFormat = $this->_oConfig->getDateFormat('orders');
306 
307  $sMethodName = 'getRow';
308  $sWhereClause = "";
309  switch($aParams['type']) {
310  case 'id':
311  $sWhereClause = " AND `tt`.`id`='" . $aParams['id'] . "'";
312  break;
313  case 'order_id':
314  $sMethodName = 'getAll';
315  $sWhereClause = " AND `tt`.`order_id`='" . $aParams['order_id'] . "'";
316  break;
317  case 'mixed':
318  $sMethodName = 'getAll';
319  foreach($aParams['conditions'] as $sKey => $sValue)
320  $sWhereClause .= " AND `tt`.`" . $sKey . "`='" . $sValue . "'";
321  break;
322 
323  }
324  $sSql = "SELECT
325  `tt`.`order_id` AS `order_id`,
326  `tt`.`client_id` AS `client_id`,
327  `tt`.`seller_id` AS `seller_id`,
328  `tt`.`module_id` AS `module_id`,
329  `tt`.`item_id` AS `item_id`,
330  `tt`.`item_count` AS `item_count`,
331  `tt`.`amount` AS `amount`,
332  `tt`.`date` AS `date`,
333  DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') AS `date_uf`,
334  `ttp`.`order` AS `order`,
335  `ttp`.`error_msg` AS `error_msg`,
336  `ttp`.`provider` AS `provider`
337  FROM `" . $this->_sPrefix . "transactions` AS `tt`
338  LEFT JOIN `" . $this->_sPrefix . "transactions_pending` AS `ttp` ON `tt`.`pending_id`=`ttp`.`id`
339  WHERE 1" . $sWhereClause;
340 
341  return $this->$sMethodName($sSql);
342  }
343  function getHistory($aParams)
344  {
345  return $this->getProcessed($aParams);
346  }
347  //--- Order Administration ---//
348  function userExists($sName)
349  {
350  $iId = (int)$this->getOne("SELECT `ID` FROM `Profiles` WHERE `NickName`='" . $sName . "' LIMIT 1");
351  return $iId > 0 ? $iId : false;
352  }
353  function getModules()
354  {
355  $sSql = "SELECT
356  `tsm`.`id` AS `id`,
357  `tsm`.`uri` AS `uri`,
358  `tsm`.`title` AS `title`
359  FROM `" . $this->_sPrefix . "modules` AS `tm`
360  LEFT JOIN `sys_modules` AS `tsm` ON `tm`.`uri`=`tsm`.`uri`
361  ORDER BY `tsm`.`date`";
362 
363  return $this->getAll($sSql);
364  }
365  function getPendingOrders($aParams)
366  {
367  $sDateFormat = $this->_oConfig->getDateFormat('orders');
368 
369  $sFilterAddon = "";
370  if(!empty($aParams['filter']))
371  $sFilterAddon = " AND (DATE_FORMAT(FROM_UNIXTIME(`ttp`.`date`), '" . $sDateFormat . "') LIKE '%" . $aParams['filter'] . "%' OR `tp`.`NickName` LIKE '%" . $aParams['filter'] . "%' OR `ttp`.`order` LIKE '%" . $aParams['filter'] . "%')";
372 
373  $sSql = "SELECT
374  `ttp`.`id` AS `id`,
375  `ttp`.`order` AS `order`,
376  `ttp`.`amount` AS `amount`,
377  '-' AS `license`,
378  `ttp`.`items` AS `items`,
379  `ttp`.`date` AS `date`,
380  DATE_FORMAT(FROM_UNIXTIME(`ttp`.`date`), '" . $sDateFormat . "') AS `date_uf`,
381  `ttp`.`client_id` AS `user_id`,
382  `tp`.`NickName` AS `user_name`
383  FROM `" . $this->_sPrefix . "transactions_pending` AS `ttp`
384  LEFT JOIN `Profiles` AS `tp` ON `ttp`.`client_id`=`tp`.`ID`
385  WHERE `ttp`.`seller_id`='" . $aParams['seller_id'] . "' AND (ISNULL(`ttp`.`order`) OR (NOT ISNULL(`ttp`.`order`) AND `ttp`.`error_code` NOT IN ('0' ,'1'))) " . $sFilterAddon . "
386  ORDER BY `ttp`.`date` DESC
387  LIMIT " . $aParams['start'] . ", " . $aParams['per_page'];
388  $aOrders = $this->getAll($sSql);
389 
390  foreach($aOrders as $iKey => $aOrder) {
391  $aProducts = ChPmtCart::items2array($aOrder['items']);
392  $aOrders[$iKey]['products'] = count($aProducts);
393 
394  $iItems = 0;
395  foreach($aProducts as $aProduct)
396  $iItems += (int)$aProduct['item_count'];
397  $aOrders[$iKey]['items'] = $iItems;
398  }
399  return $aOrders;
400  }
401  function getPendingOrdersCount($aParams)
402  {
403  $sDateFormat = $this->_oConfig->getDateFormat('orders');
404 
405  $sFilterAddon = "";
406  if(!empty($aParams['filter']))
407  $sFilterAddon = " AND (DATE_FORMAT(FROM_UNIXTIME(`ttp`.`date`), '" . $sDateFormat . "') LIKE '%" . $aParams['filter'] . "%' OR `tp`.`NickName` LIKE '%" . $aParams['filter'] . "%' OR `ttp`.`order` LIKE '%" . $aParams['filter'] . "%')";
408 
409  $sSql = "SELECT
410  COUNT(`ttp`.`id`)
411  FROM `" . $this->_sPrefix . "transactions_pending` AS `ttp`
412  LEFT JOIN `Profiles` AS `tp` ON `ttp`.`client_id`=`tp`.`ID`
413  WHERE `ttp`.`seller_id`='" . $aParams['seller_id'] . "' AND (ISNULL(`ttp`.`order`) OR (NOT ISNULL(`ttp`.`order`) AND `ttp`.`error_code`<>'1')) " . $sFilterAddon . "
414  LIMIT 1";
415  return (int)$this->getOne($sSql);
416  }
417  function getProcessedOrders($aParams)
418  {
419  $sDateFormat = $this->_oConfig->getDateFormat('orders');
420 
421  $sFilterAddon = "";
422  if(!empty($aParams['filter']))
423  $sFilterAddon = " AND (DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') LIKE '%" . $aParams['filter'] . "%' OR `tt`.`order_id` LIKE '%" . $aParams['filter'] . "%' OR `tp`.`NickName` LIKE '%" . $aParams['filter'] . "%' OR `ttp`.`order` LIKE '%" . $aParams['filter'] . "%')";
424 
425  $sSql = "SELECT
426  `tt`.`id` AS `id`,
427  `ttp`.`order` AS `order`,
428  `tt`.`amount` AS `amount`,
429  `tt`.`order_id` AS `license`,
430  `tt`.`date` AS `date`,
431  DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') AS `date_uf`,
432  '1' AS `products`,
433  `tt`.`item_count` AS `items`,
434  `tt`.`client_id` AS `user_id`,
435  `tp`.`NickName` AS `user_name`
436  FROM `" . $this->_sPrefix . "transactions` AS `tt`
437  LEFT JOIN `" . $this->_sPrefix . "transactions_pending` AS `ttp` ON `tt`.`pending_id`=`ttp`.`id`
438  LEFT JOIN `Profiles` AS `tp` ON `tt`.`client_id`=`tp`.`ID`
439  WHERE `tt`.`seller_id`='" . $aParams['seller_id'] . "' " . $sFilterAddon . "
440  ORDER BY `tt`.`date` DESC
441  LIMIT " . $aParams['start'] . ", " . $aParams['per_page'];
442 
443  return $this->getAll($sSql);
444  }
445  function getProcessedOrdersCount($aParams)
446  {
447  $sDateFormat = $this->_oConfig->getDateFormat('orders');
448 
449  $sFilterAddon = "";
450  if(!empty($aParams['filter']))
451  $sFilterAddon = " AND (DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') LIKE '%" . $aParams['filter'] . "%' OR `tt`.`order_id` LIKE '%" . $aParams['filter'] . "%' OR `tp`.`NickName` LIKE '%" . $aParams['filter'] . "%' OR `ttp`.`order` LIKE '%" . $aParams['filter'] . "%')";
452 
453  $sSql = "SELECT
454  COUNT(`tt`.`id`)
455  FROM `" . $this->_sPrefix . "transactions` AS `tt`
456  LEFT JOIN `" . $this->_sPrefix . "transactions_pending` AS `ttp` ON `tt`.`pending_id`=`ttp`.`id`
457  LEFT JOIN `Profiles` AS `tp` ON `tt`.`client_id`=`tp`.`ID`
458  WHERE `tt`.`seller_id`='" . $aParams['seller_id'] . "' " . $sFilterAddon . "
459  LIMIT 1";
460 
461  return (int)$this->getOne($sSql);
462  }
463  function getHistoryOrders($aParams)
464  {
465  $sDateFormat = $this->_oConfig->getDateFormat('orders');
466 
467  $sFilterAddon = $aParams['seller_id'] != CH_PMT_EMPTY_ID ? " AND `tt`.`seller_id`='" . $aParams['seller_id'] . "'" : " AND `tt`.`seller_id`<>'" . CH_PMT_ADMINISTRATOR_ID . "'";
468  if(!empty($aParams['filter']))
469  $sFilterAddon = " AND (DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') LIKE '%" . $aParams['filter'] . "%' OR `tt`.`order_id` LIKE '%" . $aParams['filter'] . "%' OR `tp`.`NickName` LIKE '%" . $aParams['filter'] . "%' OR `ttp`.`order` LIKE '%" . $aParams['filter'] . "%')";
470 
471  $sSql = "SELECT
472  `tt`.`id` AS `id`,
473  `ttp`.`order` AS `order`,
474  `tt`.`amount` AS `amount`,
475  `tt`.`order_id` AS `license`,
476  `tt`.`date` AS `date`,
477  DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') AS `date_uf`,
478  '1' AS `products`,
479  `tt`.`item_count` AS `items`,
480  `tp`.`ID` AS `user_id`,
481  `tp`.`NickName` AS `user_name`
482  FROM `" . $this->_sPrefix . "transactions` AS `tt`
483  LEFT JOIN `" . $this->_sPrefix . "transactions_pending` AS `ttp` ON `tt`.`pending_id`=`ttp`.`id`
484  LEFT JOIN `Profiles` AS `tp` ON `tt`.`seller_id`=`tp`.`ID`
485  WHERE `tt`.`client_id`='" . $aParams['user_id'] . "' " . $sFilterAddon . "
486  ORDER BY `tt`.`date` DESC
487  LIMIT " . $aParams['start'] . ", " . $aParams['per_page'];
488 
489  return $this->getAll($sSql);
490  }
491  function getHistoryOrdersCount($aParams)
492  {
493  $sDateFormat = $this->_oConfig->getDateFormat('orders');
494 
495  $sFilterAddon = !empty($aParams['seller_id']) ? " AND `tt`.`seller_id`='" . $aParams['seller_id'] . "'" : " AND `tt`.`seller_id`<>'-1'";
496  if(!empty($aParams['filter']))
497  $sFilterAddon = " AND (DATE_FORMAT(FROM_UNIXTIME(`tt`.`date`), '" . $sDateFormat . "') LIKE '%" . $aParams['filter'] . "%' OR `tt`.`order_id` LIKE '%" . $aParams['filter'] . "%' OR `tp`.`NickName` LIKE '%" . $aParams['filter'] . "%' OR `ttp`.`order` LIKE '%" . $aParams['filter'] . "%')";
498 
499  $sSql = "SELECT
500  COUNT(`tt`.`id`)
501  FROM `" . $this->_sPrefix . "transactions` AS `tt`
502  LEFT JOIN `" . $this->_sPrefix . "transactions_pending` AS `ttp` ON `tt`.`pending_id`=`ttp`.`id`
503  LEFT JOIN `Profiles` AS `tp` ON `tt`.`seller_id`=`tp`.`ID`
504  WHERE `tt`.`client_id`='" . $aParams['user_id'] . "' " . $sFilterAddon . "
505  LIMIT 1";
506 
507  return (int)$this->getOne($sSql);
508  }
509  function reportPendingOrders($aOrders)
510  {
511  $mixedResult = $this->query("UPDATE `" . $this->_sPrefix . "transactions_pending` SET `reported`=`reported`+'1' WHERE `id` IN ('" . implode("','", $aOrders) . "')");
512  return (int)$mixedResult > 0;
513  }
514  function reportProcessedOrders($aOrders)
515  {
516  $mixedResult = $this->query("UPDATE `" . $this->_sPrefix . "transactions` SET `reported`=`reported`+'1' WHERE `id` IN ('" . implode("','", $aOrders) . "')");
517  return (int)$mixedResult > 0;
518  }
519  function cancelPendingOrders($aOrders)
520  {
521  $mixedResult = $this->query("DELETE FROM `" . $this->_sPrefix . "transactions_pending` WHERE `id` IN ('" . implode("','", $aOrders) . "')");
522  return (int)$mixedResult > 0;
523  }
524  function cancelProcessedOrders($aOrders)
525  {
526  $mixedResult = $this->query("DELETE FROM `" . $this->_sPrefix . "transactions` WHERE `id` IN ('" . implode("','", $aOrders) . "')");
527  return (int)$mixedResult > 0;
528  }
530  {
531  $this->query("DELETE FROM `ch_pmt_cart` WHERE `client_id`='" . $iId . "'");
532  $this->query("DELETE FROM `ch_pmt_user_values` WHERE `user_id`='" . $iId . "'");
533  }
534 }
ChWsbDb\getParam
getParam($sName, $bCache=true)
Definition: ChWsbDb.php:454
CH_PMT_ADMINISTRATOR_ID
const CH_PMT_ADMINISTRATOR_ID
Definition: ChPmtModule.php:17
ChPmtDb\cancelPendingOrders
cancelPendingOrders($aOrders)
Definition: ChPmtDb.php:519
ChPmtDb\getProcessed
getProcessed($aParams)
Definition: ChPmtDb.php:303
ChPmtDb\insertData
insertData($aData)
Definition: ChPmtDb.php:23
ChPmtDb\userExists
userExists($sName)
Definition: ChPmtDb.php:348
ChPmtDb\getForm
getForm()
Definition: ChPmtDb.php:36
get_member_icon
get_member_icon($ID, $float='none', $bGenProfLink=false)
Definition: design.inc.php:170
ChPmtDb\onProfileDelete
onProfileDelete($iId)
Definition: ChPmtDb.php:529
ChPmtDb\updatePending
updatePending($iId, $aValues)
Definition: ChPmtDb.php:272
ChPmtDb\getProviders
getProviders($sName='')
Definition: ChPmtDb.php:179
ChPmtDb\reportProcessedOrders
reportProcessedOrders($aOrders)
Definition: ChPmtDb.php:514
ch_import
ch_import($sClassName, $aModule=array())
Definition: utils.inc.php:1218
$aResult
$aResult
Definition: index.php:19
ChPmtDb\cancelProcessedOrders
cancelProcessedOrders($aOrders)
Definition: ChPmtDb.php:524
ChPmtDb\getHistoryOrders
getHistoryOrders($aParams)
Definition: ChPmtDb.php:463
ChPmtDb\updateOption
updateOption($iUserId, $iOptionId, $sValue)
Definition: ChPmtDb.php:69
ChPmtDb\insertPending
insertPending($iClientId, $sProviderName, $aCartInfo)
Definition: ChPmtDb.php:256
ChPmtDb\getProcessedOrdersCount
getProcessedOrdersCount($aParams)
Definition: ChPmtDb.php:445
php
ChWsbModuleDb
Definition: ChWsbModuleDb.php:12
$iId
$iId
Definition: license.php:15
ChWsbDb\getAll
getAll($sQuery, $aBindings=[], $iFetchType=PDO::FETCH_ASSOC)
Definition: ChWsbDb.php:206
ChPmtDb\reportPendingOrders
reportPendingOrders($aOrders)
Definition: ChPmtDb.php:509
ChPmtDb\setCartItems
setCartItems($iId, $sItems)
Definition: ChPmtDb.php:82
ChPmtDb\getVendorInfoProviders
getVendorInfoProviders($iId, $sProvider='')
Definition: ChPmtDb.php:137
ChPmtDb\getPending
getPending($aParams)
Definition: ChPmtDb.php:224
ChPmtDb\getAdminsIds
getAdminsIds()
Definition: ChPmtDb.php:171
ChPmtDb\getCartItems
getCartItems($iId)
Definition: ChPmtDb.php:78
ChPmtDb\getPendingOrdersCount
getPendingOrdersCount($aParams)
Definition: ChPmtDb.php:401
$aInfo
$aInfo
Definition: constants.inc.php:21
ChWsbDb\getRow
getRow($sQuery, $aBindings=[], $iFetchStyle=PDO::FETCH_ASSOC)
Definition: ChWsbDb.php:225
ChPmtDb\getVendorInfoProfile
getVendorInfoProfile($iId)
Definition: ChPmtDb.php:99
ChWsbDb\query
query($sQuery, $aBindings=[])
Definition: ChWsbDb.php:386
getNickName
getNickName( $ID='')
Definition: profiles.inc.php:461
ChPmtDb
Definition: ChPmtDb.php:11
ChPmtDb\insertTransaction
insertTransaction($aInfo)
Definition: ChPmtDb.php:283
ChPmtDb\$_oConfig
$_oConfig
Definition: ChPmtDb.php:12
ChPmtDb\getFirstAdminId
getFirstAdminId()
Definition: ChPmtDb.php:167
ChWsbDb\getOne
getOne($sQuery, $aBindings=[], $iIndex=0)
Definition: ChWsbDb.php:263
getProfileLink
getProfileLink( $iID, $sLinkAdd='')
Definition: profiles.inc.php:484
ChPmtDb\getHistory
getHistory($aParams)
Definition: ChPmtDb.php:343
CH_PMT_EMPTY_ID
const CH_PMT_EMPTY_ID
Definition: ChPmtModule.php:16
ChPmtDb\getProcessedOrders
getProcessedOrders($aParams)
Definition: ChPmtDb.php:417
ChPmtDb\__construct
__construct(&$oConfig)
Definition: ChPmtDb.php:16
CH_PMT_ADMINISTRATOR_USERNAME
const CH_PMT_ADMINISTRATOR_USERNAME
Definition: ChPmtModule.php:18
ChPmtDb\updateTransaction
updateTransaction($iId, $aValues)
Definition: ChPmtDb.php:291
ChPmtDb\getHistoryOrdersCount
getHistoryOrdersCount($aParams)
Definition: ChPmtDb.php:491
ChPmtDb\getVendorId
getVendorId($sUsername)
Definition: ChPmtDb.php:92
ChPmtDb\getOptions
getOptions($iUserId=CH_PMT_EMPTY_ID, $iProviderId=0)
Definition: ChPmtDb.php:201
ChPmtDb\getModules
getModules()
Definition: ChPmtDb.php:353
ChPmtDb\getFormData
getFormData($iUserId)
Definition: ChPmtDb.php:59
ChPmtDb\getPendingOrders
getPendingOrders($aParams)
Definition: ChPmtDb.php:365
ChWsbDb\lastId
lastId()
Definition: ChWsbDb.php:449
ChPmtDb\deleteData
deleteData($aData)
Definition: ChPmtDb.php:28
empty
Attr AllowedRel this is empty
Definition: Attr.AllowedRel.txt:7
as
as
Definition: Filter.ExtractStyleBlocks.Escaping.txt:10
ChWsbDb\getAllWithKey
getAllWithKey($sQuery, $sFieldKey, $aBindings=[], $iFetchType=PDO::FETCH_ASSOC)
Definition: ChWsbDb.php:338
$sName
$sName
Definition: ChWsbAdminTools.php:853
CH_WSB_ROLE_ADMIN
const CH_WSB_ROLE_ADMIN
Definition: profiles.inc.php:17
$GLOBALS
$GLOBALS['iAdminPage']
Definition: advanced_settings.php:10
ChWsbDb\getColumn
getColumn($sQuery, $aBindings=[])
Definition: ChWsbDb.php:243
ChPmtCart\items2array
static items2array($mixed)
Definition: ChPmtCart.php:218