PageRenderTime 51ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 1ms

/includes/modules/payment/cc.php

https://github.com/tisoft/xtcmodified
PHP | 386 lines | 278 code | 64 blank | 44 comment | 74 complexity | 6e400aba8a6d6ad7fe9be6cd34bc6851 MD5 | raw file
Possible License(s): AGPL-1.0, LGPL-2.1, GPL-2.0
  1. <?php
  2. /*------------------------------------------------------------------------------
  3. $Id: cc.php 1160 2005-08-16 22:25:01Z hhgag $
  4. XTC-CC - Contribution for XT-Commerce http://www.xt-commerce.com
  5. modified by http://www.netz-designer.de
  6. Copyright (c) 2003 netz-designer
  7. -----------------------------------------------------------------------------
  8. based on:
  9. $Id: cc.php 1160 2005-08-16 22:25:01Z hhgag $
  10. osCommerce, Open Source E-Commerce Solutions
  11. http://www.oscommerce.com
  12. Copyright (c) 2003 osCommerce
  13. Released under the GNU General Public License
  14. ------------------------------------------------------------------------------*/
  15. // include needed functions
  16. require_once (DIR_FS_INC.'xtc_php_mail.inc.php');
  17. require_once (DIR_FS_INC.'xtc_validate_email.inc.php');
  18. class cc {
  19. var $code, $title, $description, $enabled;
  20. // class constructor
  21. // BOF - Hendrik - 2010-08-11 - php5 compatible
  22. // function cc() {
  23. function __construct() {
  24. // EOF - Hendrik - 2010-08-11 - php5 compatible
  25. global $order, $xtPrice;
  26. $this->code = 'cc';
  27. $this->title = MODULE_PAYMENT_CC_TEXT_TITLE;
  28. $this->description = MODULE_PAYMENT_CC_TEXT_DESCRIPTION;
  29. $this->sort_order = MODULE_PAYMENT_CC_SORT_ORDER;
  30. $this->enabled = ((MODULE_PAYMENT_CC_STATUS == 'True') ? true : false);
  31. $this->info = MODULE_PAYMENT_CC_TEXT_INFO;
  32. $this->accepted="";
  33. if ((int) MODULE_PAYMENT_CC_ORDER_STATUS_ID > 0) {
  34. $this->order_status = MODULE_PAYMENT_CC_ORDER_STATUS_ID;
  35. }
  36. if (is_object($order))
  37. $this->update_status();
  38. // if ($xtPrice->xtcRemoveCurr($_SESSION['cart']->show_total())>600) $this->enabled=false;
  39. }
  40. // class methods
  41. function update_status() {
  42. global $order;
  43. // BOF - Hendrik - 2010-08-09 - exlusion config for shipping modules
  44. if( MODULE_PAYMENT_CC_NEG_SHIPPING != '' ) {
  45. $neg_shpmod_arr = explode(',',MODULE_PAYMENT_CC_NEG_SHIPPING);
  46. foreach( $neg_shpmod_arr as $neg_shpmod ) {
  47. $nd=$neg_shpmod.'_'.$neg_shpmod;
  48. if( $_SESSION['shipping']['id']==$nd || $_SESSION['shipping']['id']==$neg_shpmod ) {
  49. $this->enabled = false;
  50. break;
  51. }
  52. }
  53. }
  54. // EOF - Hendrik - 2010-08-09 - exlusion config for shipping modules
  55. if (($this->enabled == true) && ((int) MODULE_PAYMENT_CC_ZONE > 0)) {
  56. $check_flag = false;
  57. $check_query = xtc_db_query("select zone_id from ".TABLE_ZONES_TO_GEO_ZONES." where geo_zone_id = '".MODULE_PAYMENT_CC_ZONE."' and zone_country_id = '".$order->billing['country']['id']."' order by zone_id");
  58. while ($check = xtc_db_fetch_array($check_query)) {
  59. if ($check['zone_id'] < 1) {
  60. $check_flag = true;
  61. break;
  62. }
  63. elseif ($check['zone_id'] == $order->billing['zone_id']) {
  64. $check_flag = true;
  65. break;
  66. }
  67. }
  68. if ($check_flag == false) {
  69. $this->enabled = false;
  70. }
  71. }
  72. }
  73. function javascript_validation() {
  74. if (strtolower(USE_CC_CVV) == 'true') {
  75. $js = ' if (payment_value == "'.$this->code.'") {'."\n".' var cc_owner = document.getElementById("checkout_payment").cc_owner.value;'."\n".' var cc_number = document.getElementById("checkout_payment").cc_number.value;'."\n".' var cc_cvv = document.getElementById("checkout_payment").cc_cvv.value;'."\n".' if (cc_owner == "" || cc_owner.length < '.CC_OWNER_MIN_LENGTH.') {'."\n".' error_message = error_message + unescape("'.xtc_js_lang(MODULE_PAYMENT_CC_TEXT_JS_CC_OWNER).'");'."\n".' error = 1;'."\n".' }'."\n".' if (cc_number == "" || cc_number.length < '.CC_NUMBER_MIN_LENGTH.') {'."\n".' error_message = error_message + unescape("'.xtc_js_lang(MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER).'");'."\n".' error = 1;'."\n".' }'."\n".' if (cc_cvv == "" || cc_cvv.length <= 2) {'."\n".' error_message = error_message + unescape("'.xtc_js_lang(MODULE_PAYMENT_CC_TEXT_JS_CC_CVV).'");'."\n".' error = 1;'."\n".' }'."\n".' }'."\n";
  76. return $js;
  77. } else {
  78. $js = ' if (payment_value == "'.$this->code.'") {'."\n".' var cc_owner = document.getElementById("checkout_payment").cc_owner.value;'."\n".' var cc_number = document.getElementById("checkout_payment").cc_number.value;'."\n".' if (cc_owner == "" || cc_owner.length < '.CC_OWNER_MIN_LENGTH.') {'."\n".' error_message = error_message + unescape("'.xtc_js_lang(MODULE_PAYMENT_CC_TEXT_JS_CC_OWNER).'");'."\n".' error = 1;'."\n".' }'."\n".' if (cc_number == "" || cc_number.length < '.CC_NUMBER_MIN_LENGTH.') {'."\n".' error_message = error_message + unescape("'.xtc_js_lang(MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER).'");'."\n".' error = 1;'."\n".' }'."\n".' }'."\n";
  79. return $js;
  80. }
  81. }
  82. function selection() {
  83. global $order;
  84. for ($i = 1; $i < 13; $i ++) {
  85. $expires_month[] = array ('id' => sprintf('%02d', $i), 'text' => strftime('%B', mktime(0, 0, 0, $i, 1, 2000)));
  86. }
  87. $today = getdate();
  88. for ($i = $today['year']; $i < $today['year'] + 10; $i ++) {
  89. $expires_year[] = array ('id' => strftime('%y', mktime(0, 0, 0, 1, 1, $i)), 'text' => strftime('%Y', mktime(0, 0, 0, 1, 1, $i)));
  90. }
  91. for ($i = 1; $i < 13; $i ++) {
  92. $start_month[] = array ('id' => sprintf('%02d', $i), 'text' => strftime('%B', mktime(0, 0, 0, $i, 1, 2000)));
  93. }
  94. $today = getdate();
  95. for ($i = $today['year'] - 4; $i <= $today['year']; $i ++) {
  96. $start_year[] = array ('id' => strftime('%y', mktime(0, 0, 0, 1, 1, $i)), 'text' => strftime('%Y', mktime(0, 0, 0, 1, 1, $i)));
  97. }
  98. $form_array = array ();
  99. // Owner
  100. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => xtc_draw_input_field('cc_owner', $order->billing['firstname'].' '.$order->billing['lastname']))));
  101. // CC Number
  102. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => xtc_draw_input_field('cc_number'))));
  103. // Startdate
  104. if (strtolower(USE_CC_START) == 'true') {
  105. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_START, 'field' => xtc_draw_pull_down_menu('cc_start_month', $start_month).'&nbsp;'.xtc_draw_pull_down_menu('cc_start_year', $start_year))));
  106. }
  107. // expire date
  108. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => xtc_draw_pull_down_menu('cc_expires_month', $expires_month).'&nbsp;'.xtc_draw_pull_down_menu('cc_expires_year', $expires_year))));
  109. // CVV
  110. if (strtolower(USE_CC_CVV) == 'true') {
  111. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV.' '.'<a href="javascript:popupWindow(\''.xtc_href_link(FILENAME_POPUP_CVV, '', 'SSL').'\')">'.MODULE_PAYMENT_CC_TEXT_CVV_LINK.'</a>', 'field' => xtc_draw_input_field('cc_cvv', '', 'size=4 maxlength=4'))));
  112. }
  113. if (strtolower(USE_CC_ISS) == 'true') {
  114. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_ISSUE, 'field' => xtc_draw_input_field('cc_issue', '', 'size=2 maxlength=2'))));
  115. }
  116. // cards
  117. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_VISA) == 'true')
  118. $this->accepted .= xtc_image(DIR_WS_ICONS.'cc_visa.jpg');
  119. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_MASTERCARD) == 'true')
  120. $this->accepted .= xtc_image(DIR_WS_ICONS.'cc_mastercard.jpg');
  121. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_AMERICANEXPRESS) == 'true')
  122. $this->accepted .= xtc_image(DIR_WS_ICONS.'cc_amex.jpg');
  123. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_DINERSCLUB) == 'true')
  124. $this->accepted .= xtc_image(DIR_WS_ICONS.'cc_diners.jpg');
  125. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_DISCOVERNOVUS) == 'true')
  126. $this->accepted .= xtc_image(DIR_WS_ICONS.'cc_discover.jpg');
  127. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_JCB) == 'true')
  128. $this->accepted .= xtc_image(DIR_WS_ICONS.'cc_jcb.jpg');
  129. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_OZBANKCARD) == 'true')
  130. $this->accepted .='';
  131. $form_array=array_merge(array(array('title'=>MODULE_PAYMENT_CC_ACCEPTED_CARDS,'field'=>$this->accepted)),$form_array);
  132. $selection = array ('id' => $this->code, 'module' => $this->title, 'fields' => $form_array, 'description' => $this->info);
  133. return $selection;
  134. }
  135. function pre_confirmation_check() {
  136. include (DIR_WS_CLASSES.'cc_validation.php');
  137. $cc_validation = new cc_validation();
  138. $result = $cc_validation->validate($_POST['cc_number'], $_POST['cc_expires_month'], $_POST['cc_expires_year']);
  139. $error = '';
  140. switch ($result) {
  141. case -1 :
  142. $error = sprintf(TEXT_CCVAL_ERROR_UNKNOWN_CARD, substr($cc_validation->cc_number, 0, 4));
  143. break;
  144. case -2 :
  145. case -3 :
  146. case -4 :
  147. $error = TEXT_CCVAL_ERROR_INVALID_DATE;
  148. break;
  149. case -5 :
  150. $error = sprintf(TEXT_CCVAL_ERROR_NOT_ACCEPTED, substr($cc_validation->cc_type, 0, 10), substr($cc_validation->cc_type, 0, 10));
  151. break;
  152. case -6 :
  153. $error = TEXT_CCVAL_ERROR_SHORT;
  154. break;
  155. case -7 :
  156. $error = TEXT_CCVAL_ERROR_BLACKLIST;
  157. break;
  158. case -8 :
  159. $cards = '';
  160. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_VISA) == 'true')
  161. $cards .= ' Visa,';
  162. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_MASTERCARD) == 'true')
  163. $cards .= ' Master Card,';
  164. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_AMERICANEXPRESS) == 'true')
  165. $cards .= ' American Express,';
  166. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_DINERSCLUB) == 'true')
  167. $cards .= ' Diners Club,';
  168. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_DISCOVERNOVUS) == 'true')
  169. $cards .= ' Discover,';
  170. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_JCB) == 'true')
  171. $cards .= ' JCB,';
  172. if (strtolower(MODULE_PAYMENT_CC_ACCEPT_OZBANKCARD) == 'true')
  173. $cards .= ' Australian BankCard,';
  174. $error = sprintf(TEXT_CARD_NOT_ACZEPTED, $cc_validation->cc_type).$cards;
  175. break;
  176. case false :
  177. $error = TEXT_CCVAL_ERROR_INVALID_NUMBER;
  178. break;
  179. }
  180. if (($result == false) || ($result < 1)) {
  181. $payment_error_return = 'payment_error='.$this->code.'&error='.urlencode($error).'&cc_owner='.urlencode($_POST['cc_owner']).'&cc_expires_month='.$_POST['cc_expires_month'].'&cc_expires_year='.$_POST['cc_expires_year'];
  182. xtc_redirect(xtc_href_link(FILENAME_CHECKOUT_PAYMENT, $payment_error_return, 'SSL', true, false));
  183. }
  184. if (strtolower(USE_CC_CVV) != 'true') {
  185. $this->cc_cvv = '000';
  186. }
  187. $this->cc_card_type = $cc_validation->cc_type;
  188. $this->cc_card_number = $cc_validation->cc_number;
  189. }
  190. function confirmation() {
  191. $_SESSION['ccard'] = array ('cc_owner' => $_POST['cc_owner'], 'cc_type' => $this->cc_card_type, 'cc_number' => $_POST['cc_number'], 'cc_start' => $_POST['cc_start_month'].$_POST['cc_start_year'], 'cc_expires' => $_POST['cc_expires_month'].$_POST['cc_expires_year'], 'cc_cvv' => $_POST['cc_cvv'], 'cc_issue' => $_POST['cc_issue']);
  192. $form_array = array ();
  193. // CC Owner
  194. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => $_POST['cc_owner'])));
  195. // CC Number
  196. echo (strlen($_POST['cc_number']) - 8);
  197. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => substr($_POST['cc_number'], 0, 4).str_repeat('X', (strlen($_POST['cc_number']) - 8)).substr($_POST['cc_number'], -4))));
  198. // startdate
  199. if (strtolower(USE_CC_START) == 'true') {
  200. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_START, 'field' => strftime('%B, %Y', mktime(0, 0, 0, $_POST['cc_start_month'], 1, $_POST['cc_start_year'])))));
  201. }
  202. //expire date
  203. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => strftime('%B, %Y', mktime(0, 0, 0, $_POST['cc_expires_month'], 1, '20'.$_POST['cc_expires_year'])))));
  204. // CCV
  205. if (strtolower(USE_CC_CVV) == 'true') {
  206. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV, 'field' => $_POST['cc_cvv'])));
  207. }
  208. // ISS
  209. if (strtolower(USE_CC_ISS) == 'true') {
  210. $form_array = array_merge($form_array, array (array ('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_ISSUE, 'field' => $_POST['cc_issue'])));
  211. }
  212. $confirmation = array ('title' => $this->title.': '.$this->cc_card_type, 'fields' => $form_array);
  213. return $confirmation;
  214. }
  215. function process_button() {
  216. $process_button_string = xtc_draw_hidden_field('cc_owner', $_POST['cc_owner']).xtc_draw_hidden_field('cc_expires', $_POST['cc_expires_month'].$_POST['cc_expires_year']).xtc_draw_hidden_field('cc_start', $_POST['cc_start_month'].$_POST['cc_start_year']).xtc_draw_hidden_field('cc_cvv', $_POST['cc_cvv']).xtc_draw_hidden_field('cc_issue', $_POST['cc_issue']).xtc_draw_hidden_field('cc_type', $this->cc_card_type).xtc_draw_hidden_field('cc_number', $this->cc_card_number);
  217. return $process_button_string;
  218. }
  219. function before_process() {
  220. global $order;
  221. if ((defined('MODULE_PAYMENT_CC_EMAIL')) && (xtc_validate_email(MODULE_PAYMENT_CC_EMAIL))) {
  222. $len = strlen($_POST['cc_number']);
  223. $this->cc_middle = substr($_POST['cc_number'], 4, ($len -8));
  224. $order->info['cc_number'] = substr($_POST['cc_number'], 0, 4).str_repeat('X', (strlen($_POST['cc_number']) - 8)).substr($_POST['cc_number'], -4);
  225. $this->cc_cvv = $_POST['cc_cvv'];
  226. $this->cc_start = $_POST['cc_start'];
  227. $this->cc_issue = $_POST['cc_issue'];
  228. }
  229. }
  230. function after_process() {
  231. global $insert_id;
  232. if ((defined('MODULE_PAYMENT_CC_EMAIL')) && (xtc_validate_email(MODULE_PAYMENT_CC_EMAIL))) {
  233. $message = 'Order #'.$insert_id."\n\n".'Middle: '.$this->cc_middle."\n\n".'CVV:'.$this->cc_cvv."\n\n".'Start:'.$this->cc_start."\n\n".'ISSUE:'.$this->cc_issue."\n\n";
  234. xtc_php_mail(STORE_OWNER_EMAIL_ADDRESS, STORE_OWNER, MODULE_PAYMENT_CC_EMAIL, '', '', STORE_OWNER_EMAIL_ADDRESS, STORE_OWNER, '', '', 'Extra Order Info: #'.$insert_id, nl2br($message), $message);
  235. }
  236. if ($this->order_status)
  237. xtc_db_query("UPDATE ".TABLE_ORDERS." SET orders_status='".$this->order_status."' WHERE orders_id='".$insert_id."'");
  238. }
  239. function get_error() {
  240. $error = array ('title' => MODULE_PAYMENT_CC_TEXT_ERROR, 'error' => stripslashes(urldecode($_GET['error'])));
  241. return $error;
  242. }
  243. function check() {
  244. if (!isset ($this->_check)) {
  245. $check_query = xtc_db_query("select configuration_value from ".TABLE_CONFIGURATION." where configuration_key = 'MODULE_PAYMENT_CC_STATUS'");
  246. $this->_check = xtc_db_num_rows($check_query);
  247. }
  248. return $this->_check;
  249. }
  250. function install() {
  251. // BMC Changes Start
  252. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_STATUS', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  253. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('', 'MODULE_PAYMENT_CC_ALLOWED', '', '6', '0', now())");
  254. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'CC_VAL', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  255. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'CC_BLACK', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  256. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'CC_ENC', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  257. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('', 'MODULE_PAYMENT_CC_SORT_ORDER', '0', '6', '0' , now())");
  258. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, use_function, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ZONE', '0', '6', '2', 'xtc_get_zone_class_title', 'xtc_cfg_pull_down_zone_classes(', now())");
  259. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, use_function, date_added) values ('', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', '0', '6', '0', 'xtc_cfg_pull_down_order_statuses(', 'xtc_get_order_status_name', now())");
  260. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'USE_CC_CVV', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  261. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'USE_CC_ISS', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  262. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'USE_CC_START', 'True', '6', '0', 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  263. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('', 'CC_CVV_MIN_LENGTH', '3', '6', '0', now())");
  264. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('', 'MODULE_PAYMENT_CC_EMAIL', '', '6', '0', now())");
  265. // added new configuration keys
  266. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_DINERSCLUB','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  267. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_AMERICANEXPRESS','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  268. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_CARTEBLANCHE','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  269. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_OZBANKCARD','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  270. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_DISCOVERNOVUS','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  271. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_DELTA','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  272. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_ELECTRON','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  273. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_MASTERCARD','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  274. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_SWITCH','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  275. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_SOLO','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  276. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_JCB','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  277. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_MAESTRO','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  278. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_id, configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) values ('', 'MODULE_PAYMENT_CC_ACCEPT_VISA','False', 6, 0, 'xtc_cfg_select_option(array(\'True\', \'False\'), ', now())");
  279. // BMC Changes End
  280. // BOF - Hendrik - 2010-08-09 - exlusion config for shipping modules
  281. xtc_db_query("insert into ".TABLE_CONFIGURATION." (configuration_key, configuration_value, configuration_group_id, sort_order, date_added) values ('MODULE_PAYMENT_CC_NEG_SHIPPING', '', '6', '10', now())");
  282. // EOF - Hendrik - 2010-08-09 - exlusion config for shipping modules
  283. }
  284. function remove() {
  285. xtc_db_query("delete from ".TABLE_CONFIGURATION." where configuration_key in ('".implode("', '", $this->keys())."')");
  286. }
  287. function keys() {
  288. return array ( 'MODULE_PAYMENT_CC_STATUS',
  289. 'MODULE_PAYMENT_CC_ALLOWED',
  290. 'USE_CC_CVV',
  291. 'USE_CC_ISS',
  292. 'USE_CC_START',
  293. 'CC_CVV_MIN_LENGTH',
  294. 'CC_ENC',
  295. 'CC_VAL',
  296. 'CC_BLACK',
  297. 'MODULE_PAYMENT_CC_EMAIL',
  298. 'MODULE_PAYMENT_CC_ZONE',
  299. 'MODULE_PAYMENT_CC_ORDER_STATUS_ID',
  300. 'MODULE_PAYMENT_CC_SORT_ORDER',
  301. 'MODULE_PAYMENT_CC_ACCEPT_DINERSCLUB',
  302. 'MODULE_PAYMENT_CC_ACCEPT_AMERICANEXPRESS',
  303. 'MODULE_PAYMENT_CC_ACCEPT_CARTEBLANCHE',
  304. 'MODULE_PAYMENT_CC_ACCEPT_OZBANKCARD',
  305. 'MODULE_PAYMENT_CC_ACCEPT_DISCOVERNOVUS',
  306. 'MODULE_PAYMENT_CC_ACCEPT_DELTA',
  307. 'MODULE_PAYMENT_CC_ACCEPT_ELECTRON',
  308. 'MODULE_PAYMENT_CC_ACCEPT_MASTERCARD',
  309. 'MODULE_PAYMENT_CC_ACCEPT_SWITCH',
  310. 'MODULE_PAYMENT_CC_ACCEPT_SOLO',
  311. 'MODULE_PAYMENT_CC_ACCEPT_JCB',
  312. 'MODULE_PAYMENT_CC_ACCEPT_MAESTRO',
  313. 'MODULE_PAYMENT_CC_ACCEPT_VISA',
  314. 'MODULE_PAYMENT_CC_NEG_SHIPPING' ); // Hendrik - 2010-08-09 - exlusion config for shipping modules
  315. }
  316. }
  317. ?>