Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

steve_s

Pioneers
  • Posts

    1,574
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by steve_s

  1. Hi Valerif I dont see if their demo does same thing if it does report it as a bug Steve
  2. Hi try this code <?php /* $Id: cc.php 1739 2007-12-20 00:52:16Z hpdl $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2007 osCommerce Released under the GNU General Public License */ class cc { var $code, $title, $description, $enabled; // class constructor function cc() { global $order; $this->code = 'cc'; $this->title = MODULE_PAYMENT_CC_TEXT_TITLE; $this->public_title = MODULE_PAYMENT_CC_TEXT_PUBLIC_TITLE; $this->description = MODULE_PAYMENT_CC_TEXT_DESCRIPTION; $this->sort_order = MODULE_PAYMENT_CC_SORT_ORDER; $this->enabled = ((MODULE_PAYMENT_CC_STATUS == 'True') ? true : false); if ((int)MODULE_PAYMENT_CC_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_CC_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); } // class methods function update_status() { global $order; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_CC_ZONE > 0) ) { $check_flag = false; $check_query = tep_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"); while ($check = tep_db_fetch_array($check_query)) { if ($check['zone_id'] < 1) { $check_flag = true; break; } elseif ($check['zone_id'] == $order->billing['zone_id']) { $check_flag = true; break; } } if ($check_flag == false) { $this->enabled = false; } } } function javascript_validation() { if (MODULE_PAYMENT_CC_CVV2 == 'True') { $js = ' if (payment_value == "' . $this->code . '") {' . "\n" . ' var cc_owner = document.checkout_payment.cc_owner.value;' . "\n" . ' var cc_number = document.checkout_payment.cc_number.value;' . "\n" . ' if (cc_owner == "" || cc_owner.length < ' . CC_OWNER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . 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 + "' . MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' }' . "\n"; }else{ $js = ' if (payment_value == "' . $this->code . '") {' . "\n" . ' var cc_owner = document.checkout_payment.cc_owner.value;' . "\n" . ' var cc_number = document.checkout_payment.cc_number.value;' . "\n" . ' if (cc_owner == "" || cc_owner.length < ' . CC_OWNER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . 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 + "' . MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' }' . "\n"; } return $js; } function selection() { global $order; for ($i=1; $i<13; $i++) { $expires_month[] = array('id' => sprintf('%02d', $i), 'text' => strftime('%B',mktime(0,0,0,$i,1,2000))); } $today = (int)date('Y'); for ($i=$today; $i < $today+10; $i++) { $expires_year[] = array('id' => substr((string)$i, -2), 'text' => (string)$i); } $func_name = "set_" . $this->code . "()"; $func_def = '<script language="javascript"><!-- function ' . $func_name . ' { for (var i=0; i<document.checkout_payment.payment.length; i++) { if (document.checkout_payment.payment[i].value == "' . $this->code . '") { document.checkout_payment.payment[i].checked = true; } } }//--></script>'; $oc = 'onchange="' . $func_name . '"'; if (MODULE_PAYMENT_CC_CVV2 == 'True') { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV2, 'field' => tep_draw_input_field('cc_cvv2', '', $oc) . ' <strong onclick="openexpwindow();">' . TEXT_EXPLANATION . '</strong>'), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } else { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } return $selection; } function pre_confirmation_check() { global $HTTP_POST_VARS; include(DIR_WS_CLASSES . 'cc_validation.php'); $cc_validation = new cc_validation(); $result = $cc_validation->validate($HTTP_POST_VARS['cc_number'], $HTTP_POST_VARS['cc_expires_month'], $HTTP_POST_VARS['cc_expires_year'], $HTTP_POST_VARS['cc_cvv2']); $error = ''; switch ($result) { case -1: $error = sprintf(TEXT_CCVAL_ERROR_UNKNOWN_CARD, substr($cc_validation->cc_number, 0, 4)); break; case -2: case -3: case -4: $error = TEXT_CCVAL_ERROR_INVALID_DATE; break; case -5: $error = TEXT_CCVAL_ERROR_INVALID_CVV2; break; case -6: $error = TEXT_CVV_ERROR_AMEX; break; case -7: $error = TEXT_CVV_ERROR_OTHER; break; case -8: $error = TEXT_CARD_NOT_ACCEPTED; break; case false: $error = TEXT_CCVAL_ERROR_INVALID_NUMBER; break; } if ( ($result == false) || ($result < 1) ) { $payment_error_return = 'payment_error=' . $this->code . '&error=' . urlencode($error) . '&cc_owner=' . urlencode($HTTP_POST_VARS['cc_owner']) . '&cc_expires_month=' . $HTTP_POST_VARS['cc_expires_month'] . '&cc_expires_year=' . $HTTP_POST_VARS['cc_expires_year']; tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, $payment_error_return, 'SSL', true, false)); } $this->cc_card_type = $cc_validation->cc_type; $this->cc_card_number = $cc_validation->cc_number; } function confirmation() { global $HTTP_POST_VARS, $order; for ($i=1; $i<13; $i++) { $expires_month[] = array('id' => sprintf('%02d', $i), 'text' => strftime('%B',mktime(0,0,0,$i,1,2000))); } $today = (int)date('Y'); for ($i=$today; $i < $today+10; $i++) { $expires_year[] = array('id' => substr((string)$i, -2), 'text' => (string)$i); } $oc = 'onchange="' . $func_name . '"'; if (MODULE_PAYMENT_CC_CVV2 == 'True') { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV2, 'field' => tep_draw_input_field('cc_cvv2', '', $oc) . ' <strong onclick="openexpwindow();">' . TEXT_EXPLANATION . '</strong>'), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } else { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } return $selection; } function process_button() { global $HTTP_POST_VARS; $process_button_string = tep_draw_hidden_field('cc_owner', $HTTP_POST_VARS['cc_owner']) . tep_draw_hidden_field('cc_expires', $HTTP_POST_VARS['cc_expires_month'] . $HTTP_POST_VARS['cc_expires_year']) . tep_draw_hidden_field('cc_type', $this->cc_card_type) . tep_draw_hidden_field('cc_cvv2', $HTTP_POST_VARS['cc_cvv2']) . tep_draw_hidden_field('cc_number', $this->cc_card_number); return $process_button_string; } function before_process() { global $HTTP_POST_VARS, $order; if ( (defined('MODULE_PAYMENT_CC_EMAIL')) && (tep_validate_email(MODULE_PAYMENT_CC_EMAIL)) ) { $len = strlen($HTTP_POST_VARS['cc_number']); $this->cc_middle = substr($HTTP_POST_VARS['cc_number'], 4, ($len-8)); $order->info['cc_number'] = substr($HTTP_POST_VARS['cc_number'], 0, 4) . str_repeat('X', (strlen($HTTP_POST_VARS['cc_number']) - 8)) . substr($HTTP_POST_VARS['cc_number'], -4); $this->cc_cvv = $HTTP_POST_VARS['cc_cvv2']; $order->info['cc_cvv2'] = str_repeat('X', strlen($HTTP_POST_VARS['cc_cvv2'])); } } function after_process() { global $insert_id; if ( (defined('MODULE_PAYMENT_CC_EMAIL')) && (tep_validate_email(MODULE_PAYMENT_CC_EMAIL)) ) { $message = 'Order #' . $insert_id . "\n\n" . 'Middle: ' . $this->cc_middle . "\n\n" . 'CVV: ' . $this->cc_cvv . "\n\n"; tep_mail('', MODULE_PAYMENT_CC_EMAIL, 'Extra Order Info: #' . $insert_id, $message, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); } } function get_error() { global $HTTP_GET_VARS; $error = array('title' => MODULE_PAYMENT_CC_TEXT_ERROR, 'error' => stripslashes(urldecode($HTTP_GET_VARS['error']))); return $error; } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_PAYMENT_CC_STATUS'"); $this->_check = tep_db_num_rows($check_query); } return $this->_check; } function install() { tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Credit Card Module', 'MODULE_PAYMENT_CC_STATUS', 'True', 'Do you want to accept credit card payments?', '6', '0', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Split Credit Card E-Mail Address', 'MODULE_PAYMENT_CC_EMAIL', '', 'If an e-mail address is entered, the middle digits of the credit card number will be sent to the e-mail address (the outside digits are stored in the database with the middle digits censored)', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort order of display.', 'MODULE_PAYMENT_CC_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '0' , now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Payment Zone', 'MODULE_PAYMENT_CC_ZONE', '0', 'If a zone is selected, only enable this payment method for that zone.', '6', '2', 'tep_get_zone_class_title', 'tep_cfg_pull_down_zone_classes(', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, use_function, date_added) values ('Set Order Status', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', '0', 'Set the status of orders made with this payment module to this value', '6', '0', 'tep_cfg_pull_down_order_statuses(', 'tep_get_order_status_name', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Require CCV2', 'MODULE_PAYMENT_CC_CVV2', 'True', 'Require cvv2 numbers', '6', '0', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { return array('MODULE_PAYMENT_CC_STATUS', 'MODULE_PAYMENT_CC_EMAIL', 'MODULE_PAYMENT_CC_ZONE', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', 'MODULE_PAYMENT_CC_SORT_ORDER', 'MODULE_PAYMENT_CC_CVV2' ); } } ?> Steve
  3. Hi please tell me which version of that you are using? if its the ajax one we might have problems integrating that with one page checkout Steve
  4. Hi Replace code in cc.php with this code <?php /* $Id: cc.php 1739 2007-12-20 00:52:16Z hpdl $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2007 osCommerce Released under the GNU General Public License */ class cc { var $code, $title, $description, $enabled; // class constructor function cc() { global $order; $this->code = 'cc'; $this->title = MODULE_PAYMENT_CC_TEXT_TITLE; $this->public_title = MODULE_PAYMENT_CC_TEXT_PUBLIC_TITLE; $this->description = MODULE_PAYMENT_CC_TEXT_DESCRIPTION; $this->sort_order = MODULE_PAYMENT_CC_SORT_ORDER; $this->enabled = ((MODULE_PAYMENT_CC_STATUS == 'True') ? true : false); if ((int)MODULE_PAYMENT_CC_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_CC_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); } // class methods function update_status() { global $order; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_CC_ZONE > 0) ) { $check_flag = false; $check_query = tep_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"); while ($check = tep_db_fetch_array($check_query)) { if ($check['zone_id'] < 1) { $check_flag = true; break; } elseif ($check['zone_id'] == $order->billing['zone_id']) { $check_flag = true; break; } } if ($check_flag == false) { $this->enabled = false; } } } function javascript_validation() { if (MODULE_PAYMENT_CC_CVV2 == 'True') { $js = ' if (payment_value == "' . $this->code . '") {' . "\n" . ' var cc_owner = document.checkout_payment.cc_owner.value;' . "\n" . ' var cc_number = document.checkout_payment.cc_number.value;' . "\n" . ' if (cc_owner == "" || cc_owner.length < ' . CC_OWNER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . 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 + "' . MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' }' . "\n"; }else{ $js = ' if (payment_value == "' . $this->code . '") {' . "\n" . ' var cc_owner = document.checkout_payment.cc_owner.value;' . "\n" . ' var cc_number = document.checkout_payment.cc_number.value;' . "\n" . ' if (cc_owner == "" || cc_owner.length < ' . CC_OWNER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . 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 + "' . MODULE_PAYMENT_CC_TEXT_JS_CC_NUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' }' . "\n"; } return $js; } function selection() { global $order; for ($i=1; $i<13; $i++) { $expires_month[] = array('id' => sprintf('%02d', $i), 'text' => strftime('%B',mktime(0,0,0,$i,1,2000))); } $today = (int)date('Y'); for ($i=$today; $i < $today+10; $i++) { $expires_year[] = array('id' => substr((string)$i, -2), 'text' => (string)$i); } $func_name = "set_" . $this->code . "()"; $func_def = '<script language="javascript"><!-- function ' . $func_name . ' { for (var i=0; i<document.checkout_payment.payment.length; i++) { if (document.checkout_payment.payment[i].value == "' . $this->code . '") { document.checkout_payment.payment[i].checked = true; } } }//--></script>'; $oc = 'onchange="' . $func_name . '"'; if (MODULE_PAYMENT_CC_CVV2 == 'True') { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV2, 'field' => tep_draw_input_field('cc_cvv2', '', $oc) . ' <strong onclick="openexpwindow();">' . TEXT_EXPLANATION . '</strong>'), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } else { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } return $selection; } function pre_confirmation_check() { global $HTTP_POST_VARS; include(DIR_WS_CLASSES . 'cc_validation.php'); $cc_validation = new cc_validation(); $result = $cc_validation->validate($HTTP_POST_VARS['cc_number'], $HTTP_POST_VARS['cc_expires_month'], $HTTP_POST_VARS['cc_expires_year'], $HTTP_POST_VARS['cc_cvv2']); $error = ''; switch ($result) { case -1: $error = sprintf(TEXT_CCVAL_ERROR_UNKNOWN_CARD, substr($cc_validation->cc_number, 0, 4)); break; case -2: case -3: case -4: $error = TEXT_CCVAL_ERROR_INVALID_DATE; break; case -5: $error = TEXT_CCVAL_ERROR_INVALID_CVV2; break; case -6: $error = TEXT_CVV_ERROR_AMEX; break; case -7: $error = TEXT_CVV_ERROR_OTHER; break; case -8: $error = TEXT_CARD_NOT_ACCEPTED; break; case false: $error = TEXT_CCVAL_ERROR_INVALID_NUMBER; break; } if ( ($result == false) || ($result < 1) ) { $payment_error_return = 'payment_error=' . $this->code . '&error=' . urlencode($error) . '&cc_owner=' . urlencode($HTTP_POST_VARS['cc_owner']) . '&cc_expires_month=' . $HTTP_POST_VARS['cc_expires_month'] . '&cc_expires_year=' . $HTTP_POST_VARS['cc_expires_year']; tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, $payment_error_return, 'SSL', true, false)); } $this->cc_card_type = $cc_validation->cc_type; $this->cc_card_number = $cc_validation->cc_number; } function confirmation() { global $order, $HTTP_POST_VARS; if (MODULE_PAYMENT_CC_CVV2 == 'True') { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV2, 'field' => tep_draw_input_field('cc_cvv2', '', $oc) . ' <strong onclick="openexpwindow();">' . TEXT_EXPLANATION . '</strong>'), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } else { $selection = array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => '', 'field' => $func_def), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'], $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('cc_number', '', $oc)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('cc_expires_month', $expires_month, '', $oc) . ' ' . tep_draw_pull_down_menu('cc_expires_year', $expires_year, '', $oc)))); } return $selection; } function process_button() { global $HTTP_POST_VARS; $process_button_string = tep_draw_hidden_field('cc_owner', $HTTP_POST_VARS['cc_owner']) . tep_draw_hidden_field('cc_expires', $HTTP_POST_VARS['cc_expires_month'] . $HTTP_POST_VARS['cc_expires_year']) . tep_draw_hidden_field('cc_type', $this->cc_card_type) . tep_draw_hidden_field('cc_cvv2', $HTTP_POST_VARS['cc_cvv2']) . tep_draw_hidden_field('cc_number', $this->cc_card_number); return $process_button_string; } function before_process() { global $HTTP_POST_VARS, $order; if ( (defined('MODULE_PAYMENT_CC_EMAIL')) && (tep_validate_email(MODULE_PAYMENT_CC_EMAIL)) ) { $len = strlen($HTTP_POST_VARS['cc_number']); $this->cc_middle = substr($HTTP_POST_VARS['cc_number'], 4, ($len-8)); $order->info['cc_number'] = substr($HTTP_POST_VARS['cc_number'], 0, 4) . str_repeat('X', (strlen($HTTP_POST_VARS['cc_number']) - 8)) . substr($HTTP_POST_VARS['cc_number'], -4); $this->cc_cvv = $HTTP_POST_VARS['cc_cvv2']; $order->info['cc_cvv2'] = str_repeat('X', strlen($HTTP_POST_VARS['cc_cvv2'])); } } function after_process() { global $insert_id; if ( (defined('MODULE_PAYMENT_CC_EMAIL')) && (tep_validate_email(MODULE_PAYMENT_CC_EMAIL)) ) { $message = 'Order #' . $insert_id . "\n\n" . 'Middle: ' . $this->cc_middle . "\n\n" . 'CVV: ' . $this->cc_cvv . "\n\n"; tep_mail('', MODULE_PAYMENT_CC_EMAIL, 'Extra Order Info: #' . $insert_id, $message, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); } } function get_error() { global $HTTP_GET_VARS; $error = array('title' => MODULE_PAYMENT_CC_TEXT_ERROR, 'error' => stripslashes(urldecode($HTTP_GET_VARS['error']))); return $error; } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_PAYMENT_CC_STATUS'"); $this->_check = tep_db_num_rows($check_query); } return $this->_check; } function install() { tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable Credit Card Module', 'MODULE_PAYMENT_CC_STATUS', 'True', 'Do you want to accept credit card payments?', '6', '0', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Split Credit Card E-Mail Address', 'MODULE_PAYMENT_CC_EMAIL', '', 'If an e-mail address is entered, the middle digits of the credit card number will be sent to the e-mail address (the outside digits are stored in the database with the middle digits censored)', '6', '0', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Sort order of display.', 'MODULE_PAYMENT_CC_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '0' , now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Payment Zone', 'MODULE_PAYMENT_CC_ZONE', '0', 'If a zone is selected, only enable this payment method for that zone.', '6', '2', 'tep_get_zone_class_title', 'tep_cfg_pull_down_zone_classes(', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, use_function, date_added) values ('Set Order Status', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', '0', 'Set the status of orders made with this payment module to this value', '6', '0', 'tep_cfg_pull_down_order_statuses(', 'tep_get_order_status_name', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Require CCV2', 'MODULE_PAYMENT_CC_CVV2', 'True', 'Require cvv2 numbers', '6', '0', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { return array('MODULE_PAYMENT_CC_STATUS', 'MODULE_PAYMENT_CC_EMAIL', 'MODULE_PAYMENT_CC_ZONE', 'MODULE_PAYMENT_CC_ORDER_STATUS_ID', 'MODULE_PAYMENT_CC_SORT_ORDER', 'MODULE_PAYMENT_CC_CVV2' ); } } ?> Steve
  5. Hi does that normally output the fileds to be entered on the order confirmation screen? if it does that is the problem, on function process_order for that payment module file could add global $HTTP_POST_VARS; Steve
  6. Hi The developer does not support this via free support, you could email them and report it as a bug Steve
  7. Hi open onepage_checkout.php in includes/classes. find on line 1122: $sql_data_array = array( 'customers_firstname' => $onepage['billing']['firstname'], 'customers_lastname' => $onepage['billing']['lastname'], 'customers_email_address' => $onepage['customer']['email_address'], 'customers_telephone' => $onepage['customer']['telephone'], 'customers_fax' => $onepage['customer']['fax'], 'customers_newsletter' => $onepage['customer']['newsletter'], 'customers_password' => tep_encrypt_password($onepage['customer']['password']) ); replace with: $sql_data_array = array( 'customers_firstname' => $onepage['billing']['firstname'], 'customers_lastname' => $onepage['billing']['lastname'], 'customers_email_address' => $onepage['customer']['email_address'], 'customers_telephone' => $onepage['customer']['telephone'], 'customers_fax' => $onepage['customer']['fax'], 'customers_newsletter' => $onepage['customer']['newsletter'], 'customers_status' => '1', 'customers_password' => tep_encrypt_password($onepage['customer']['password']) ); This post has been edited by BenCox: 13 September 2010 - 12:37 PM
  8. try includes/checkout/cart.php Steve
  9. Yet they cant login on OPC, i had this i think on 1.12 or 1.13 and decided not to upgrade i take it your not using STS? does it do it on other browsers too? Steve
  10. What payment module are you using? it might be that now and not OPC Steve
  11. try adding in function confirmation() add $_POST or $HTTP_VAR_POST; to end of global $order ie global $order, $_POST; Steve
  12. hi try changing this if (tep_check_stock($products[$i]['id'], $products[$i]['quantity'])) { to this if (tep_check_stock($products[$i]['id'],$products[$i][$option]['products_attributes_id'], $products[$i]['quantity']) <=0) { or if above gives an error if ((tep_check_stock($products[$i]['id'],$products[$i][$option]['products_attributes_id'], $products[$i]['quantity'])) <=0) {
  13. Hi recheck install, in checkout.php change any calls to javascript files to fixed ie adding http://yoursite.com before the folder Steve
  14. Hi if you goto normal login are you able to login ? Steve
  15. Hi im sure its this file includes/checkout/cart.php but where i have no idea one you selected will do normal shopping cart Steve
  16. Hi Ed on the checkout page, where it lists the products in cart? should be possible although i cant see where the select is to add order by product_name Steve
  17. Hi Valeri no other changes are needed to be made, for now set require login to be true, it should offer that shipping option after address details enetered reupload making sure overwrite is selected Steve
  18. Hi Leon, All i can suggest is there is something missing, re-check install and run the sql again, cause it should work fine Steve
  19. Hi Leon, you shouldnt need to refresh sounds like javascript isnt enabled in your browser, try another browser and see what happens Steve
  20. Hi Tobi, please message me as to what version you installed with OPC included? so i can tell you more if it was from a another site not osc then maybe best to paste in other forum or message me Steve
  21. fix is here http://www.oscommerce.com/forums/topic/333292-one-page-checkout-support/page__view__findpost__p__1532611 account isnt set up properly Steve
  22. Hi catloag/checkout.php near bottom of file find <!-- dialogs_bof //--> <div id="loginBox" title="Log Into My Account" style="display:none;"><table cellpadding="2" cellspacing="0" border="0"> <tr> <td class="main"><?php echo ENTRY_EMAIL_ADDRESS;?></td> <td><?php echo tep_draw_input_field('email_address');?></td> </tr> <tr> <td class="main"><?php echo ENTRY_PASSWORD;?></td> <td><?php echo tep_draw_password_field('password');?></td> </tr> <tr> <td colspan="2" align="right" class="main"><a href="<?php echo tep_href_link(FILENAME_PASSWORD_FORGOTTEN, '', 'SSL');?>"><?php echo TEXT_PASSWORD_FORGOTTEN;?></a></td> </tr> <tr> <td colspan="2" align="right"><?php echo tep_image_button('button_login.gif', IMAGE_BUTTON_LOGIN, 'id="loginWindowSubmit"');?></td> </tr> </table></div> <div id="addressBook" title="Address Book" style="display:none"></div> <div id="newAddress" title="New Address" style="display:none"></div> <?php if(ONEPAGE_CHECKOUT_LOADER_POPUP == 'True') {?> <div id="ajaxMessages" style="display:none;"></div> <?php }?> <!-- dialogs_eof//--> and add the style to it Steve
  23. Hi i guess you are using a different coupon add on Steve
  24. to use order->info('cc_number'); would be safe to use Steve
  25. Hi the after checkout problem is solved here http://www.oscommerce.com/forums/topic/333292-one-page-checkout-support/page__view__findpost__p__1532611 as coupon i have no idea dont use that add on Steve
×
×
  • Create New...