Cheetah
ChMbpDb.php
Go to the documentation of this file.
1 <?php
2 
8 ch_import('ChWsbModuleDb');
9 
10 class ChMbpDb 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 getMembershipsBy($aParams = array())
24  {
25  $sMethod = "getAll";
26  $sSelectClause = $sJoinClause = $sWhereClause = $sOrderClause = $sLimitClause = "";
27  if(isset($aParams['type']))
28  switch($aParams['type']) {
29  case 'price_id':
30  $sMethod = "getRow";
31  $sSelectClause .= ", `tlp`.`id` AS `price_id`, `tlp`.`Days` AS `price_days`, `tlp`.`Price` AS `price_amount`";
32  $sJoinClause .= "LEFT JOIN `sys_acl_level_prices` AS `tlp` ON `tl`.`ID`=`tlp`.`IDLevel`";
33  $sWhereClause .= " AND `tl`.`Active`='yes' AND `tl`.`Purchasable`='yes' AND `tlp`.`id`='" . $aParams['id'] . "'";
34  break;
35  case 'price_all':
36  $sSelectClause .= ", `tlp`.`id` AS `price_id`, `tlp`.`Days` AS `price_days`, `tlp`.`Price` AS `price_amount`";
37  $sJoinClause .= "LEFT JOIN `sys_acl_level_prices` AS `tlp` ON `tl`.`ID`=`tlp`.`IDLevel`";
38  $sWhereClause = " AND `tl`.`Active`='yes' AND `tl`.`Purchasable`='yes' AND NOT ISNULL(`tlp`.`id`)";
39  if(isset($aParams['include_standard']) && $aParams['include_standard'] === true)
40  $sWhereClause .= " OR `tl`.`ID`=" . MEMBERSHIP_ID_STANDARD;
41  $sOrderClause = " ORDER BY `tl`.`Order` ASC, `tlp`.`Price` ASC";
42  break;
43  case 'level_id':
44  $sMethod = "getRow";
45  $sWhereClause .= " AND `tl`.`ID`='" . $aParams['id'] . "'";
46  break;
47  }
48 
49  $sSql = "SELECT
50  `tl`.`ID` AS `mem_id`,
51  `tl`.`Name` AS `mem_name`,
52  `tl`.`Icon` AS `mem_icon`,
53  `tl`.`Description` AS `mem_description` " . $sSelectClause . "
54  FROM `sys_acl_levels` AS `tl` " . $sJoinClause . "
55  WHERE 1" . $sWhereClause . $sOrderClause . $sLimitClause;
56  return $this->$sMethod($sSql);
57  }
58 
60  {
61  $sSql = "SELECT
62  `tlm`.`IDMember` AS `member_id`,
63  `tlm`.`IDLevel` AS `level_id`,
64  `tlm`.`DateStarts` AS `date_starts`,
65  `tlm`.`DateExpires` AS `date_expires`,
66  `tlm`.`TransactionID` AS `transaction_id`,
67  `tlm`.`Expiring` AS `expiring`
68  FROM `sys_acl_levels_members` AS `tlm`
69  WHERE `tlm`.`Expiring`='1'";
70 
71  return $this->getAll($sSql);
72  }
73 }
ChMbpDb\getExpiringMemberships
getExpiringMemberships()
Definition: ChMbpDb.php:59
ch_import
ch_import($sClassName, $aModule=array())
Definition: utils.inc.php:1218
ChMbpDb\getMembershipsBy
getMembershipsBy($aParams=array())
Definition: ChMbpDb.php:23
php
ChWsbModuleDb
Definition: ChWsbModuleDb.php:12
ChWsbDb\getAll
getAll($sQuery, $aBindings=[], $iFetchType=PDO::FETCH_ASSOC)
Definition: ChWsbDb.php:206
MEMBERSHIP_ID_STANDARD
const MEMBERSHIP_ID_STANDARD
Definition: membership_levels.inc.php:49
ChMbpDb\$_oConfig
$_oConfig
Definition: ChMbpDb.php:12
ChMbpDb
Definition: ChMbpDb.php:11
ChMbpDb\__construct
__construct(&$oConfig)
Definition: ChMbpDb.php:16