Jump to content

kalcable

Members
  • Content count

    11
  • Joined

  • Last visited

1 Follower

Profile Information

  • Real Name
    Tom Fried
  1. kalcable

    SiteMonitor

    I'm getting a 403 Forbidden error when i click update in Config. All the files are in the right places. Is this a host server issue or a contribution issue? Thanks
  2. On the checkout.php page, when I click continue at the bottom after filling out the information, it check sends me back to checkout.php. Why wont it continue to the next page? Any ideas? Thanks
  3. kalcable

    One Page Checkout Support

    That did it! Thank you so much Steve, you're a life saver!
  4. kalcable

    One Page Checkout Support

    Thank Steve it worked!!! But now there is a problem with the Credit Card Expiration drop down menu....they're blank Here is a picture
  5. kalcable

    One Page Checkout Support

    Thanks Steve, but that didnt do anything either. Here is a screenshot of the problem: Here is the code for the module: <?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; if (MODULE_PAYMENT_CC_CVV2 == 'True') { $confirmation = array('title' => $this->title . ': ' . $this->cc_card_type, 'fields' => array(array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => $HTTP_POST_VARS['cc_owner']), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => substr($this->cc_card_number, 0, 4) . str_repeat('X', (strlen($this->cc_card_number) - 8)) . substr($this->cc_card_number, -4)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_CVV2, 'field' => $HTTP_POST_VARS['cc_cvv2']), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => strftime('%B, %Y', mktime(0,0,0,$HTTP_POST_VARS['cc_expires_month'], 1, '20' . $HTTP_POST_VARS['cc_expires_year']))))); } else { $confirmation = array('title' => $this->title . ': ' . $this->cc_card_type, 'fields' => array(array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_OWNER, 'field' => $HTTP_POST_VARS['cc_owner']), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_NUMBER, 'field' => substr($this->cc_card_number, 0, 4) . str_repeat('X', (strlen($this->cc_card_number) - 8)) . substr($this->cc_card_number, -4)), array('title' => MODULE_PAYMENT_CC_TEXT_CREDIT_CARD_EXPIRES, 'field' => strftime('%B, %Y', mktime(0,0,0,$HTTP_POST_VARS['cc_expires_month'], 1, '20' . $HTTP_POST_VARS['cc_expires_year']))))); } return $confirmation; } 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' ); } } ?> Thanks
  6. kalcable

    One Page Checkout Support

    Steve, I am using Credit Card with CVV2 v2.3 Thanks
  7. kalcable

    One Page Checkout Support

    Ok thanks, I tried that but it didnt work. ine onepagecheck.php I changed /* Comment line below for oscommerce versions before MS2.2 RC2a */ $confirmation = $GLOBALS[$payment]->confirmation(); /* Uncomment line below for oscommerce versions before MS2.2 RC2a */ //$confirmation = $GLOBALS[$payment]->selection(); break; } to: /* Comment line below for oscommerce versions before MS2.2 RC2a */ //$confirmation = $GLOBALS[$payment]->confirmation(); /* Uncomment line below for oscommerce versions before MS2.2 RC2a */ $confirmation = $GLOBALS[$payment]->selection(); break; } when i did this it showed but an error pops up saying, "There was an error setting payment method, please inform "storename" about this error. After you click ok, you can checkout successfully. Is there a way to eliminate that error message? thank you
  8. kalcable

    One Page Checkout Support

    Hello, I know people have had this problem and seems to not be fixed. I have credit card with cvv2 but the text input fields do not show. I was able to make it so they would but only if you refreshed the page. Also a few times they would show up until all the areas loaded (shipping and Order Total) and then it would go back to having no text fields. Does anyone know how to make the text fields show up again? Thank you
×