| 1 |
<?php
|
| 2 |
/********************************************************************
|
| 3 |
* Paycom / Epoch payment gateway for the Drupal
|
| 4 |
* Author : Heshan Wanigasooriy (heshan@heidisoft.com)
|
| 5 |
* Date : 22/12/2008
|
| 6 |
********************************************************************/
|
| 7 |
|
| 8 |
function paycom_install() {
|
| 9 |
switch ($GLOBALS['db_type']) {
|
| 10 |
case 'mysql':
|
| 11 |
case 'mysqli':
|
| 12 |
db_query("CREATE TABLE {paycom} (
|
| 13 |
pid int(11) NOT NULL,
|
| 14 |
uid int(11) NOT NULL,
|
| 15 |
product_id varchar(30) NOT NULL,
|
| 16 |
PRIMARY KEY (pid, uid)
|
| 17 |
) TYPE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 */;");
|
| 18 |
|
| 19 |
db_query("CREATE TABLE {EpochTransStats} (
|
| 20 |
ets_transaction_id int(11) NOT NULL default '0',
|
| 21 |
ets_member_idx int(11) NOT NULL default '0',
|
| 22 |
ets_transaction_date datetime default NULL,
|
| 23 |
ets_transaction_type char(1) NOT NULL default '',
|
| 24 |
ets_co_code varchar(6) NOT NULL default '',
|
| 25 |
ets_pi_code varchar(32) NOT NULL default '',
|
| 26 |
ets_reseller_code varchar(64) default 'a',
|
| 27 |
ets_transaction_amount decimal(10,2) NOT NULL default '0.00',
|
| 28 |
ets_payment_type char(1) default 'A',
|
| 29 |
ets_username varchar(32) default NULL,
|
| 30 |
ets_ref_trans_ids int(11) default NULL,
|
| 31 |
ets_password_expire varchar(20) default NULL,
|
| 32 |
PRIMARY KEY (ets_transaction_id),
|
| 33 |
KEY idx_reseller (ets_reseller_code),
|
| 34 |
KEY idx_product (ets_pi_code),
|
| 35 |
KEY idx_transdate (ets_transaction_date),
|
| 36 |
KEY idx_type (ets_transaction_type)
|
| 37 |
) TYPE=MyISAM;");
|
| 38 |
|
| 39 |
db_query("CREATE TABLE {MemberCancelStats} (
|
| 40 |
mcs_or_idx int(11) NOT NULL default '0',
|
| 41 |
mcs_canceldate datetime default NULL,
|
| 42 |
mcs_signupdate datetime default NULL,
|
| 43 |
mcs_cocode varchar(16) NOT NULL default '',
|
| 44 |
mcs_picode varchar(32) NOT NULL default '',
|
| 45 |
mcs_reseller varchar(32) default NULL,
|
| 46 |
mcs_reason varchar(64) default NULL,
|
| 47 |
mcs_memberstype char(1) default NULL,
|
| 48 |
mcs_username varchar(32) default NULL,
|
| 49 |
mcs_email varchar(64) default NULL,
|
| 50 |
mcs_passwordremovaldate datetime default NULL,
|
| 51 |
PRIMARY KEY (mcs_or_idx),
|
| 52 |
KEY ix_initdate (mcs_canceldate),
|
| 53 |
KEY ix_signupdate (mcs_signupdate),
|
| 54 |
KEY ix_pwdremdate (mcs_passwordremovaldate)
|
| 55 |
) TYPE=MyISAM;");
|
| 56 |
break;
|
| 57 |
|
| 58 |
case 'pgsql';
|
| 59 |
db_query("CREATE TABLE {paycom} (
|
| 60 |
pid integer NOT NULL default '0',
|
| 61 |
uid integer NOT NULL default '0',
|
| 62 |
product_id varchar(30) NOT NULL default '',
|
| 63 |
PRIMARY KEY (pid, uid)
|
| 64 |
)");
|
| 65 |
|
| 66 |
db_query("CREATE TABLE {EpochTransStats} (
|
| 67 |
ets_transaction_id integer NOT NULL default '0',
|
| 68 |
ets_member_idx integer NOT NULL default '0',
|
| 69 |
ets_transaction_date datetime default NULL,
|
| 70 |
ets_transaction_type char(1) NOT NULL default '',
|
| 71 |
ets_co_code varchar(6) NOT NULL default '',
|
| 72 |
ets_pi_code varchar(32) NOT NULL default '',
|
| 73 |
ets_reseller_code varchar(64) default 'a',
|
| 74 |
ets_transaction_amount decimal(10,2) NOT NULL default '0.00',
|
| 75 |
ets_payment_type char(1) default 'A',
|
| 76 |
ets_username varchar(32) default NULL,
|
| 77 |
ets_ref_trans_ids integer default NULL,
|
| 78 |
ets_password_expire varchar(20) default NULL,
|
| 79 |
PRIMARY KEY (ets_transaction_id),
|
| 80 |
KEY idx_reseller (ets_reseller_code),
|
| 81 |
KEY idx_product (ets_pi_code),
|
| 82 |
KEY idx_transdate (ets_transaction_date),
|
| 83 |
KEY idx_type (ets_transaction_type)
|
| 84 |
)");
|
| 85 |
|
| 86 |
db_query("CREATE TABLE {MemberCancelStats} (
|
| 87 |
mcs_or_idx integer NOT NULL default '0',
|
| 88 |
mcs_canceldate datetime default NULL,
|
| 89 |
mcs_signupdate datetime default NULL,
|
| 90 |
mcs_cocode varchar(16) NOT NULL default '',
|
| 91 |
mcs_picode varchar(32) NOT NULL default '',
|
| 92 |
mcs_reseller varchar(32) default NULL,
|
| 93 |
mcs_reason varchar(64) default NULL,
|
| 94 |
mcs_memberstype char(1) default NULL,
|
| 95 |
mcs_username varchar(32) default NULL,
|
| 96 |
mcs_email varchar(64) default NULL,
|
| 97 |
mcs_passwordremovaldate datetime default NULL,
|
| 98 |
PRIMARY KEY (mcs_or_idx),
|
| 99 |
KEY ix_initdate (mcs_canceldate),
|
| 100 |
KEY ix_signupdate (mcs_signupdate),
|
| 101 |
KEY ix_pwdremdate (mcs_passwordremovaldate)
|
| 102 |
)");
|
| 103 |
|
| 104 |
break;
|
| 105 |
}
|
| 106 |
drupal_set_message(t('Paycom tables have been created.'));
|
| 107 |
}
|
| 108 |
|
| 109 |
// unstall module
|
| 110 |
|
| 111 |
function paycom_uninstall() {
|
| 112 |
db_query('DROP TABLE {paycom}');
|
| 113 |
db_query('DROP TABLE {EpochTransStats}');
|
| 114 |
db_query('DROP TABLE {MemberCancelStats}');
|
| 115 |
|
| 116 |
variable_del('paycom_role');
|
| 117 |
variable_del('paycom_co_code');
|
| 118 |
variable_del('paycom_reseller');
|
| 119 |
variable_del('paycom_ach');
|
| 120 |
variable_del('paycom_processing_url');
|
| 121 |
variable_del('paycom_handle_response');
|
| 122 |
variable_del('product_packages');
|
| 123 |
variable_del('paycom_response_post');
|
| 124 |
}
|