Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

themadman

Members
  • Content count

    82
  • Joined

  • Last visited

Profile Information

  • Real Name
    at large
  • Location
    Boon Docks
  • Website
  1. themadman

    I got paysystems doing reoccuring billing!

    http://www.oscommerce.com/community/contributions,1751
  2. themadman

    I got paysystems doing reoccuring billing!

    sorry... been workin on other things for couple months. will reply soon as i catch up and try somethin for ya i hope.
  3. I just finished having my way with paysystems. I made a contribution out of it. Thanks to the ones who responded to my previous postings... on this same issue. Thanks to both of ya. Download here! Peace.
  4. if ( (isset($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0) ) { for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<$n2; $j++) { echo '<br><nobr><small> <i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '</i></small></nobr>'; // added by themadman for option checking $billingmethod = '' . $order->products[$i]['attributes'][$j]['value'] . ''; } } if ($billingmethod == Monthly) { $reoccuring = Y; $billingcycle = 30; global $billingmethod; global $reoccuring; global $billingcycle; } elseif ($billingmethod == Yearly) { $reoccuring = Y; $billingcycle = 365; global $billingmethod; global $reoccuring; global $billingcycle; } else { $reoccuring = N; $billingcycle = ''; }
  5. i set it like thie in paysystems... had no effect. function process_button() { global $order, $customer_id, $currencies, $billingmethod; instead of billing_method like ya said... where i typed it wrong.. .
  6. and this is my current paysystems.php... for the record. =P <?php /* $Id: paysystems.php,v 1.2 2003/03/17 Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2003 osCommerce Released under the GNU General Public License */ //******************** class paysystems { var $code, $title, $description, $enabled; // class constructor function paysystems() { global $order; $this->code = 'paysystems'; $this->title = MODULE_PAYMENT_PAYSYSTEMS_TEXT_TITLE; $this->description = MODULE_PAYMENT_PAYSYSTEMS_TEXT_DESCRIPTION; $this->sort_order = MODULE_PAYMENT_PAYSYSTEMS_SORT_ORDER; $this->enabled = ((MODULE_PAYMENT_PAYSYSTEMS_STATUS == 'True') ? true : false); if ((int)MODULE_PAYMENT_PAYSYSTEMS_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_PAYSYSTEMS_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); $this->form_action_url = 'https://secure.paysystems1.com/cgi-v310/payment/onlinesale-tpppro.asp'; } // class methods function update_status() { global $order; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_PAYSYSTEMS_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_PAYSYSTEMS_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() { return false; } function selection() { //return false; return array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => MODULE_PAYMENT_PAYSYSTEMS_CREDIT_CARD, 'field' => tep_draw_radio_field('paysystems_method', 'Credit Card', true)), array('title' => MODULE_PAYMENT_PAYSYSTEMS_ONLINE_CHECK, 'field' => tep_draw_radio_field('paysystems_method', 'Online Check', false)))); } function pre_confirmation_check() { global $HTTP_POST_VARS; // Default method is credit card and set in constructor if($HTTP_POST_VARS['paysystems_method'] == 'Online Check') { $this->form_action_url = 'https://secure.paysystems1.com/cgi-v310/payment/onlinesale-tpppro_check.asp'; } } function confirmation() { return false; // global $checkout_form_action; // $checkout_form_action = 'https://secure.paysystems1.com/cgi-v310/payment/onlinesale-tpppro.asp'; } function process_button() { global $order, $customer_id, $currencies, $billing_method, $reoccuring, $billingcycle; for ($i=0; $i<sizeof($order->products); $i++) { if ($i==0) { $products_list = $products_list. "" .$order->products[$i]['name'][$i]['attributes'][$j]['value']; }else{ $products_list = $products_list. ", " .$order->products[$i]['name'][$i]['attributes'][$j]['value']; } } $process_button_string = tep_draw_hidden_field('product1',$products_list) . tep_draw_hidden_field('companyid', MODULE_PAYMENT_PAYSYSTEMS_LOGIN) . tep_draw_hidden_field('formget','Y') . tep_draw_hidden_field('redirect',tep_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL', false)) . tep_draw_hidden_field('redirectfail',tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL', false)) . tep_draw_hidden_field('reoccur',$reoccuring) . tep_draw_hidden_field('cycle', $billingcycle) . tep_draw_hidden_field('totalperiod','') . tep_draw_hidden_field('repeatamount', number_format($order->info['total'], 2)) . tep_draw_hidden_field('total', number_format($order->info['total'], 2)) . tep_draw_hidden_field('b_firstname', $order->customer['firstname']) . tep_draw_hidden_field('b_middlename','') . tep_draw_hidden_field('b_lastname', $order->customer['lastname']) . tep_draw_hidden_field('b_address', $order->customer['street_address']) . tep_draw_hidden_field('b_city', $order->customer['city']) . tep_draw_hidden_field('b_state', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('b_zip', $order->customer['postcode']) . tep_draw_hidden_field('b_country',$order->customer['country']['iso_code_2']) . tep_draw_hidden_field('b_tel', $order->customer['telephone']) . tep_draw_hidden_field('email', $order->customer['email_address']) . tep_draw_hidden_field('s_firstname', $order->delivery['firstname']) . tep_draw_hidden_field('s_middlename','') . tep_draw_hidden_field('s_lastname', $order->delivery['lastname']) . tep_draw_hidden_field('s_address', $order->delivery['street_address']) . tep_draw_hidden_field('s_city', $order->delivery['city']) . tep_draw_hidden_field('s_state', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('s_zip', $order->delivery['postcode']) . tep_draw_hidden_field('s_country', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('s_tel','') . $process_button_string .= tep_draw_hidden_field(tep_session_name(), tep_session_id()); return $process_button_string; } function before_process() { global $HTTP_GET_VARS; if ($HTTP_GET_VARS['cc_status'] != 'pass') { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode(MODULE_PAYMENT_PAYSYSTEMS_TEXT_ERROR_MESSAGE), 'SSL', true, false)); } } function after_process() { return false; } function output_error() { global $HTTP_GET_VARS; $output_error_string = '<table border="0" cellspacing="0" cellpadding="0" width="100%">' . "\n" . ' <tr>' . "\n" . ' <td class="main"> <font color="#FF0000"><b>' . MODULE_PAYMENT_PAYSYSTEMS_TEXT_ERROR . '</b></font><br> ' . stripslashes($HTTP_GET_VARS['cc_val']) . ' </td>' . "\n" . ' </tr>' . "\n" . '</table>' . "\n"; return $output_error_string; } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_PAYMENT_PAYSYSTEMS_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 Paysystems Module', 'MODULE_PAYMENT_PAYSYSTEMS_STATUS', 'True', 'Do you want to accept Paysystems payments?', '6', '1', '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 ('Paysystems Login', 'MODULE_PAYMENT_PAYSYSTEMS_LOGIN', '3800', 'Login used for Paysystems payments', '6', '2', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Paysystems E-Mail Client', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL', '0', 'Should Paysystems e-mail the customer too? 0=NO, 1=YES', '6', '3', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Paysystems E-Mail Merchant', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL_MERCHANT', '1', 'Should Paysystems e-mail you? 0=NO, 1=YES', '6', '4', 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_PAYSYSTEMS_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '5', 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_PAYSYSTEMS_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_PAYSYSTEMS_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())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { $keys = array('MODULE_PAYMENT_PAYSYSTEMS_STATUS', 'MODULE_PAYMENT_PAYSYSTEMS_LOGIN', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL_MERCHANT', 'MODULE_PAYMENT_PAYSYSTEMS_ZONE', 'MODULE_PAYMENT_PAYSYSTEMS_ORDER_STATUS_ID', 'MODULE_PAYMENT_PAYSYSTEMS_SORT_ORDER'); return $keys; } } ?>
  7. its in this version... where i define it first.
  8. tried this... didn't work. function process_button() { global $order, $customer_id, $currencies, $billing_method, $reoccuring, $billingcycle; for ($i=0; $i<sizeof($order->products); $i++) { if ($i==0) { $products_list = $products_list. "" .$order->products[$i]['name'][$i]['attributes'][$j]['value']; }else{ $products_list = $products_list. ", " .$order->products[$i]['name'][$i]['attributes'][$j]['value']; } } $process_button_string = tep_draw_hidden_field('product1',$products_list) . tep_draw_hidden_field('companyid', MODULE_PAYMENT_PAYSYSTEMS_LOGIN) . tep_draw_hidden_field('formget','Y') . tep_draw_hidden_field('redirect',tep_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL', false)) . tep_draw_hidden_field('redirectfail',tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL', false)) . tep_draw_hidden_field('reoccur',$reoccuring) . tep_draw_hidden_field('cycle', $billingcycle) . tep_draw_hidden_field('totalperiod','') . tep_draw_hidden_field('repeatamount', number_format($order->info['total'], 2)) . tep_draw_hidden_field('total', number_format($order->info['total'], 2)) . tep_draw_hidden_field('b_firstname', $order->customer['firstname']) . tep_draw_hidden_field('b_middlename','') . tep_draw_hidden_field('b_lastname', $order->customer['lastname']) . tep_draw_hidden_field('b_address', $order->customer['street_address']) . tep_draw_hidden_field('b_city', $order->customer['city']) . tep_draw_hidden_field('b_state', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('b_zip', $order->customer['postcode']) . tep_draw_hidden_field('b_country',$order->customer['country']['iso_code_2']) . tep_draw_hidden_field('b_tel', $order->customer['telephone']) . tep_draw_hidden_field('email', $order->customer['email_address']) . tep_draw_hidden_field('s_firstname', $order->delivery['firstname']) . tep_draw_hidden_field('s_middlename','') . tep_draw_hidden_field('s_lastname', $order->delivery['lastname']) . tep_draw_hidden_field('s_address', $order->delivery['street_address']) . tep_draw_hidden_field('s_city', $order->delivery['city']) . tep_draw_hidden_field('s_state', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('s_zip', $order->delivery['postcode']) . tep_draw_hidden_field('s_country', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('s_tel','') . $process_button_string .= tep_draw_hidden_field(tep_session_name(), tep_session_id()); return $process_button_string; }
  9. this is really kickin my butt...that didn't seem to help... probably did it wrong... im just not versed enough in the code. This would be easy for a real developer... i would think. Too bad im not one... it would be a contribution already.
  10. This code in checkout_confirmation.php with my modifications creates the variables needed for paystems to do reoccuring billing and to set the billing cycle to 30 or 365 according to the option chose, but it does not pass them on to paysystems payment module. How can I ensure that these variables are available? checkout_confirmation.php <?php /* $Id: checkout_confirmation.php,v 1.139 2003/06/11 17:34:53 hpdl Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2003 osCommerce Released under the GNU General Public License */ require('includes/application_top.php'); // if the customer is not logged on, redirect them to the login page if (!tep_session_is_registered('customer_id')) { $navigation->set_snapshot(array('mode' => 'SSL', 'page' => FILENAME_CHECKOUT_PAYMENT)); tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL')); } // if there is nothing in the customers cart, redirect them to the shopping cart page if ($cart->count_contents() < 1) { tep_redirect(tep_href_link(FILENAME_SHOPPING_CART)); } // avoid hack attempts during the checkout procedure by checking the internal cartID if (isset($cart->cartID) && tep_session_is_registered('cartID')) { if ($cart->cartID != $cartID) { tep_redirect(tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL')); } } // if no shipping method has been selected, redirect the customer to the shipping method selection page if (!tep_session_is_registered('shipping')) { tep_redirect(tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL')); } if (!tep_session_is_registered('payment')) tep_session_register('payment'); if (isset($HTTP_POST_VARS['payment'])) $payment = $HTTP_POST_VARS['payment']; if (!tep_session_is_registered('comments')) tep_session_register('comments'); if (tep_not_null($HTTP_POST_VARS['comments'])) { $comments = tep_db_prepare_input($HTTP_POST_VARS['comments']); } // load the selected payment module require(DIR_WS_CLASSES . 'payment.php'); $payment_modules = new payment($payment); require(DIR_WS_CLASSES . 'order.php'); $order = new order; $payment_modules->update_status(); if ( ( is_array($payment_modules->modules) && (sizeof($payment_modules->modules) > 1) && !is_object($$payment) ) || (is_object($$payment) && ($$payment->enabled == false)) ) { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode(ERROR_NO_PAYMENT_MODULE_SELECTED), 'SSL')); } if (is_array($payment_modules->modules)) { $payment_modules->pre_confirmation_check(); } // load the selected shipping module require(DIR_WS_CLASSES . 'shipping.php'); $shipping_modules = new shipping($shipping); require(DIR_WS_CLASSES . 'order_total.php'); $order_total_modules = new order_total; // Stock Check $any_out_of_stock = false; if (STOCK_CHECK == 'true') { for ($i=0, $n=sizeof($order->products); $i<$n; $i++) { if (tep_check_stock($order->products[$i]['id'], $order->products[$i]['qty'])) { $any_out_of_stock = true; } } // Out of Stock if ( (STOCK_ALLOW_CHECKOUT != 'true') && ($any_out_of_stock == true) ) { tep_redirect(tep_href_link(FILENAME_SHOPPING_CART)); } } require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_CHECKOUT_CONFIRMATION); $breadcrumb->add(NAVBAR_TITLE_1, tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL')); $breadcrumb->add(NAVBAR_TITLE_2); ?> <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> <html <?php echo HTML_PARAMS; ?>> <head> <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>"> <title><?php echo TITLE; ?></title> <base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>"> <link rel="stylesheet" type="text/css" href="stylesheet.css"> </head> <body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0"> <!-- header //--> <?php require(DIR_WS_INCLUDES . 'headercart.php'); ?> <!-- header_eof //--> <!-- body //--> <table border="0" width="100%" cellspacing="3" cellpadding="3"> <tr> <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2"> <!-- left_navigation //--> <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?> <!-- left_navigation_eof //--> </table></td> <!-- body_text //--> <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_confirmation.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox"> <tr class="infoBoxContents"> <?php if ($sendto != false) { ?> <td width="30%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td class="main"><?php echo '<b>' . HEADING_DELIVERY_ADDRESS . '</b> <a href="' . tep_href_link(FILENAME_CHECKOUT_SHIPPING_ADDRESS, '', 'SSL') . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> </tr> <tr> <td class="main"><?php echo tep_address_format($order->delivery['format_id'], $order->delivery, 1, ' ', '<br>'); ?></td> </tr> <?php if ($order->info['shipping_method']) { ?> <tr> <td class="main"><?php echo '<b>' . HEADING_SHIPPING_METHOD . '</b> <a href="' . tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL') . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> </tr> <tr> <td class="main"><?php echo $order->info['shipping_method']; ?></td> </tr> <?php } ?> </table></td> <?php } ?> <td width="<?php echo (($sendto != false) ? '70%' : '100%'); ?>" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> <?php if (sizeof($order->info['tax_groups']) > 1) { ?> <tr> <td class="main" colspan="2"><?php echo '<b>' . HEADING_PRODUCTS . '</b> <a href="' . tep_href_link(FILENAME_SHOPPING_CART) . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> <td class="smallText" align="right"><b><?php echo HEADING_TAX; ?></b></td> <td class="smallText" align="right"><b><?php echo HEADING_TOTAL; ?></b></td> </tr> <?php } else { ?> <tr> <td class="main" colspan="3"><?php echo '<b>' . HEADING_PRODUCTS . '</b> <a href="' . tep_href_link(FILENAME_SHOPPING_CART) . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> </tr> <?php } for ($i=0, $n=sizeof($order->products); $i<$n; $i++) { echo ' <tr>' . "\n" . ' <td class="main" align="right" valign="top" width="30">' . $order->products[$i]['qty'] . ' x</td>' . "\n" . ' <td class="main" valign="top">' . $order->products[$i]['name']; if (STOCK_CHECK == 'true') { echo tep_check_stock($order->products[$i]['id'], $order->products[$i]['qty']); } if ( (isset($order->products[$i]['attributes'])) && (sizeof($order->products[$i]['attributes']) > 0) ) { for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<$n2; $j++) { echo '<br><nobr><small> <i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . $order->products[$i]['attributes'][$j]['value'] . '</i></small></nobr>'; } } if ($billingmethod == Monthly) { $reoccurring = "Y"; $billingcycle = "30"; } elseif ($billingmethod == Yearly) { $reoccurring = "Y"; $billingcycle = "365"; } else { $reoccurring = "N"; $billingcycle = ""; } // echo output on screen echo " You will be billed every $billcycle days and reoccuring is set to $reoccurring"; echo '</td>' . "\n"; if (sizeof($order->info['tax_groups']) > 1) echo ' <td class="main" valign="top" align="right">' . tep_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n"; echo ' <td class="main" align="right" valign="top">' . $currencies->display_price($order->products[$i]['final_price'], $order->products[$i]['tax'], $order->products[$i]['qty']) . '</td>' . "\n" . ' </tr>' . "\n"; } ?> </table></td> </tr> </table></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td class="main"><b><?php echo HEADING_BILLING_INFORMATION; ?></b></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox"> <tr class="infoBoxContents"> <td width="30%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td class="main"><?php echo '<b>' . HEADING_BILLING_ADDRESS . '</b> <a href="' . tep_href_link(FILENAME_CHECKOUT_PAYMENT_ADDRESS, '', 'SSL') . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> </tr> <tr> <td class="main"><?php echo tep_address_format($order->billing['format_id'], $order->billing, 1, ' ', '<br>'); ?></td> </tr> <tr> <td class="main"><?php echo '<b>' . HEADING_PAYMENT_METHOD . '</b> <a href="' . tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL') . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> </tr> <tr> <td class="main"><?php echo $order->info['payment_method']; ?></td> </tr> </table></td> <td width="70%" valign="top" align="right"><table border="0" cellspacing="0" cellpadding="2"> <?php if (MODULE_ORDER_TOTAL_INSTALLED) { $order_total_modules->process(); echo $order_total_modules->output(); } ?> </table></td> </tr> </table></td> </tr> <?php if (is_array($payment_modules->modules)) { if ($confirmation = $payment_modules->confirmation()) { $payment_info = $confirmation['title']; if (!tep_session_is_registered('payment_info')) tep_session_register('payment_info'); ?> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td class="main"><b><?php echo HEADING_PAYMENT_INFORMATION; ?></b></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox"> <tr class="infoBoxContents"> <td><table border="0" cellspacing="0" cellpadding="2"> <tr> <td class="main" colspan="4"><?php echo $confirmation['title']; ?></td> </tr> <?php for ($i=0, $n=sizeof($confirmation['fields']); $i<$n; $i++) { ?> <tr> <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td> <td class="main"><?php echo $confirmation['fields'][$i]['title']; ?></td> <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td> <td class="main"><?php echo $confirmation['fields'][$i]['field']; ?></td> </tr> <?php } ?> </table></td> </tr> </table></td> </tr> <?php } } ?> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <?php if (tep_not_null($order->info['comments'])) { ?> <tr> <td class="main"><?php echo '<b>' . HEADING_ORDER_COMMENTS . '</b> <a href="' . tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL') . '"><span class="orderEdit">(' . TEXT_EDIT . ')</span></a>'; ?></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox"> <tr class="infoBoxContents"> <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td class="main"><?php echo nl2br(tep_output_string_protected($order->info['comments'])) . tep_draw_hidden_field('comments', $order->info['comments']); ?></td> </tr> </table></td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <?php } ?> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td align="right" class="main"> <?php if (isset($$payment->form_action_url)) { $form_action_url = $$payment->form_action_url; } else { $form_action_url = tep_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL'); } echo tep_draw_form('checkout_confirmation', $form_action_url, 'post'); if (is_array($payment_modules->modules)) { echo $payment_modules->process_button(); } echo tep_image_submit('button_confirm_order.gif', IMAGE_BUTTON_CONFIRM_ORDER) . '</form>' . "\n"; ?> </td> </tr> </table></td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td width="25%"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td width="50%" align="right"><?php echo tep_draw_separator('pixel_silver.gif', '1', '5'); ?></td> <td width="50%"><?php echo tep_draw_separator('pixel_silver.gif', '100%', '1'); ?></td> </tr> </table></td> <td width="25%"><?php echo tep_draw_separator('pixel_silver.gif', '100%', '1'); ?></td> <td width="25%"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td width="50%"><?php echo tep_draw_separator('pixel_silver.gif', '100%', '1'); ?></td> <td><?php echo tep_image(DIR_WS_IMAGES . 'checkout_bullet.gif'); ?></td> <td width="50%"><?php echo tep_draw_separator('pixel_silver.gif', '100%', '1'); ?></td> </tr> </table></td> <td width="25%"><table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr> <td width="50%"><?php echo tep_draw_separator('pixel_silver.gif', '100%', '1'); ?></td> <td width="50%"><?php echo tep_draw_separator('pixel_silver.gif', '1', '5'); ?></td> </tr> </table></td> </tr> <tr> <td align="center" width="25%" class="checkoutBarFrom"><?php echo '<a href="' . tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL') . '" class="checkoutBarFrom">' . CHECKOUT_BAR_DELIVERY . '</a>'; ?></td> <td align="center" width="25%" class="checkoutBarFrom"><?php echo '<a href="' . tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL') . '" class="checkoutBarFrom">' . CHECKOUT_BAR_PAYMENT . '</a>'; ?></td> <td align="center" width="25%" class="checkoutBarCurrent"><?php echo CHECKOUT_BAR_CONFIRMATION; ?></td> <td align="center" width="25%" class="checkoutBarTo"><?php echo CHECKOUT_BAR_FINISHED; ?></td> </tr> </table></td> </tr> </table></td> <!-- body_text_eof //--> </tr> </table> <!-- body_eof //--> <!-- footer //--> <?php require(DIR_WS_INCLUDES . 'footer.php'); ?> <!-- footer_eof //--> <br> </body> </html> <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?> But when submitted by clicking "confirm order" button the variables arent passed along with the rest. I have tried different things on how to get this to work but have been unsussessful. Here, in /includes/modules/payment/paysystems.php I have tried many things, in this one I have only changed the cycle and reoccuring values to the variables to $billingcycle and $reoccuring /includes/modules/payment/paysystems.php <?php /* $Id: paysystems.php,v 1.2 2003/03/17 Exp $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2003 osCommerce Released under the GNU General Public License */ class paysystems { var $code, $title, $description, $enabled; // class constructor function paysystems() { global $order; $this->code = 'paysystems'; $this->title = MODULE_PAYMENT_PAYSYSTEMS_TEXT_TITLE; $this->description = MODULE_PAYMENT_PAYSYSTEMS_TEXT_DESCRIPTION; $this->sort_order = MODULE_PAYMENT_PAYSYSTEMS_SORT_ORDER; $this->enabled = ((MODULE_PAYMENT_PAYSYSTEMS_STATUS == 'True') ? true : false); if ((int)MODULE_PAYMENT_PAYSYSTEMS_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_PAYSYSTEMS_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); $this->form_action_url = 'https://secure.paysystems1.com/cgi-v310/payment/onlinesale-tpppro.asp'; } // class methods function update_status() { global $order; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_PAYSYSTEMS_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_PAYSYSTEMS_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() { return false; } function selection() { //return false; return array('id' => $this->code, 'module' => $this->title, 'fields' => array(array('title' => MODULE_PAYMENT_PAYSYSTEMS_CREDIT_CARD, 'field' => tep_draw_radio_field('paysystems_method', 'Credit Card', true)), array('title' => MODULE_PAYMENT_PAYSYSTEMS_ONLINE_CHECK, 'field' => tep_draw_radio_field('paysystems_method', 'Online Check', false)))); } function pre_confirmation_check() { global $HTTP_POST_VARS; // Default method is credit card and set in constructor if($HTTP_POST_VARS['paysystems_method'] == 'Online Check') { $this->form_action_url = 'https://secure.paysystems1.com/cgi-v310/payment/onlinesale-tpppro_check.asp'; } } function confirmation() { return false; // global $checkout_form_action; // $checkout_form_action = 'https://secure.paysystems1.com/cgi-v310/payment/onlinesale-tpppro.asp'; } function process_button() { global $order, $customer_id, $currencies; for ($i=0; $i<sizeof($order->products); $i++) { if ($i==0) { $products_list = $products_list. "" .$order->products[$i]['name'][$i]['attributes'][$j]['value']; }else{ $products_list = $products_list. ", " .$order->products[$i]['name'][$i]['attributes'][$j]['value']; } } $process_button_string = tep_draw_hidden_field('product1',$products_list) . tep_draw_hidden_field('companyid', MODULE_PAYMENT_PAYSYSTEMS_LOGIN) . tep_draw_hidden_field('formget','Y') . tep_draw_hidden_field('redirect',tep_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL', false)) . tep_draw_hidden_field('redirectfail',tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL', false)) . tep_draw_hidden_field('reoccur',$reoccuring) . tep_draw_hidden_field('cycle', $billingcycle) . tep_draw_hidden_field('totalperiod','36') . tep_draw_hidden_field('repeatamount', number_format($order->info['total'], 2)) . tep_draw_hidden_field('total', number_format($order->info['total'], 2)) . tep_draw_hidden_field('b_firstname', $order->customer['firstname']) . tep_draw_hidden_field('b_middlename','') . tep_draw_hidden_field('b_lastname', $order->customer['lastname']) . tep_draw_hidden_field('b_address', $order->customer['street_address']) . tep_draw_hidden_field('b_city', $order->customer['city']) . tep_draw_hidden_field('b_state', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('b_zip', $order->customer['postcode']) . tep_draw_hidden_field('b_country',$order->customer['country']['iso_code_2']) . tep_draw_hidden_field('b_tel', $order->customer['telephone']) . tep_draw_hidden_field('email', $order->customer['email_address']) . tep_draw_hidden_field('s_firstname', $order->delivery['firstname']) . tep_draw_hidden_field('s_middlename','') . tep_draw_hidden_field('s_lastname', $order->delivery['lastname']) . tep_draw_hidden_field('s_address', $order->delivery['street_address']) . tep_draw_hidden_field('s_city', $order->delivery['city']) . tep_draw_hidden_field('s_state', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('s_zip', $order->delivery['postcode']) . tep_draw_hidden_field('s_country', $order->delivery['country']['iso_code_2']) . tep_draw_hidden_field('s_tel','') . $process_button_string .= tep_draw_hidden_field(tep_session_name(), tep_session_id()); return $process_button_string; } function before_process() { global $HTTP_GET_VARS; if ($HTTP_GET_VARS['cc_status'] != 'pass') { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . urlencode(MODULE_PAYMENT_PAYSYSTEMS_TEXT_ERROR_MESSAGE), 'SSL', true, false)); } } function after_process() { return false; } function output_error() { global $HTTP_GET_VARS; $output_error_string = '<table border="0" cellspacing="0" cellpadding="0" width="100%">' . "\n" . ' <tr>' . "\n" . ' <td class="main"> <font color="#FF0000"><b>' . MODULE_PAYMENT_PAYSYSTEMS_TEXT_ERROR . '</b></font><br> ' . stripslashes($HTTP_GET_VARS['cc_val']) . ' </td>' . "\n" . ' </tr>' . "\n" . '</table>' . "\n"; return $output_error_string; } function check() { if (!isset($this->_check)) { $check_query = tep_db_query("select configuration_value from " . TABLE_CONFIGURATION . " where configuration_key = 'MODULE_PAYMENT_PAYSYSTEMS_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 Paysystems Module', 'MODULE_PAYMENT_PAYSYSTEMS_STATUS', 'True', 'Do you want to accept Paysystems payments?', '6', '1', '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 ('Paysystems Login', 'MODULE_PAYMENT_PAYSYSTEMS_LOGIN', '3800', 'Login used for Paysystems payments', '6', '2', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Paysystems E-Mail Client', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL', '0', 'Should Paysystems e-mail the customer too? 0=NO, 1=YES', '6', '3', now())"); tep_db_query("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Paysystems E-Mail Merchant', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL_MERCHANT', '1', 'Should Paysystems e-mail you? 0=NO, 1=YES', '6', '4', 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_PAYSYSTEMS_SORT_ORDER', '0', 'Sort order of display. Lowest is displayed first.', '6', '5', 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_PAYSYSTEMS_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_PAYSYSTEMS_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())"); } function remove() { tep_db_query("delete from " . TABLE_CONFIGURATION . " where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { $keys = array('MODULE_PAYMENT_PAYSYSTEMS_STATUS', 'MODULE_PAYMENT_PAYSYSTEMS_LOGIN', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL', 'MODULE_PAYMENT_PAYSYSTEMS_EMAIL_MERCHANT', 'MODULE_PAYMENT_PAYSYSTEMS_ZONE', 'MODULE_PAYMENT_PAYSYSTEMS_ORDER_STATUS_ID', 'MODULE_PAYMENT_PAYSYSTEMS_SORT_ORDER'); return $keys; } } ?> Maybe i got some syntax wrong... as i look at the paystems.php i get the feeling the answer is in there already. makes me feel nauscious. thanks for any help!
  11. themadman

    Cant make new boxes in Infobox Admin

    figured it out myself.... hate doin that ;) seems that the file name should be the filename minus any _ and minus the .php extension. Thanx for the support yo.
  12. themadman

    Cant make new boxes in Infobox Admin

    maybe i need to put my boxes in a different folder
  13. themadman

    Cant make new boxes in Infobox Admin

    cant afford to keep it in its non working form much longer, bout to remove it and never think of usin it again since non one knows how it works... especially me.
  14. Im on ms2 i have installed it correctly best I can tell... because it works in the admin. I can enable/disable boxes... move them from left to right. I can click add new box and type in all the info and itll show up in the admin list with the rest.... but on the catalog the box never shows up. I even tried using the sql file as an example one and modifying the sql and that also didnt show up on the store. I need some help... I don't know why they wont show up.... I think it has to do with the filename. But I cant figure out where it's pullin that info at, since the boxes in the sql file dont have a filename mentioned... so i don't know how those boxes work in the first place. Please advise... thanks. Oh, all the boxes i want to add... already existed prior to installing this.... trying to bring them back in.
×