Jump to content

austintechsus

Members
  • Content count

    19
  • Joined

  • Last visited

  1. austintechsus

    Master Products - MS2

    First, I would like to thank those responsible for this contribution. It is something I have wanted for a while but was unaware existed until recently... I have it largely installed and am able to make the relationships just fine. When I assign a product as a slave, however, the search does not show that it exists nor does the category listing. Can someone please explain to me why the search was even changed? Can someone also please give me a clue as to why the category listing would exclude slaves? Are both of these normal behavior? I have one other quandry... Why does the SQL script add products_master as a varchar(255)? Shouldn't it be int(11)? Thanks in advance, Tom
  2. austintechsus

    Automatically send data feed to Froogle

    I've been trying to install (and make work) Google Base / Froogle Data Feeder v1.20 and am having problems... When I try to test the file creation in a browser, I get: File completed: filename.txt Script timer: 41.191138 seconds. filename.txt has a link to where I told it to put the file in the configuration step. When I go to the file, which is 777 and in a subdirectory (also 777) of a temp directory (also 777) under the catalog directory, the file is empty. I tried adding content to the placeholder file. It doesn't overwrite the content even though it says, "File completed". I have tried all sorts of stuff including taking the .htaccess file out of the admin path. Nothing seems to work. I have seen several posting in this thread that had the same problem but I didn't see one that got an answer. Can anyone out there please give me some suggestions? Thanks in advance, Tom
  3. austintechsus

    Multi_Vendor_Shipping new thread

    First, thanks to everyone involved, especially you, Craig... This is excellent! I installed it and everything seems to work except when I try to add a free shipping option per vendor. The free shipping should be triggered by the product total amount per vendor and it appears to be accumulating the product total amounts among all vendors. I've tried many things including the MVS 1.0 free shipping add-in by NancyL7 and the errant behavior seems the same. I thought it was the OT module so I ensured it was off and changed the "Free Shipping For Orders Over" value to $50,000,000.00. I suspect this is something stupidly simple but I can't find it after days of trying. Can anyone please come up with any suggestions? I've read this thread from when Craig started it and can't seem to find my problem.
  4. austintechsus

    Authorize.net AIM not passing Low Order Fee

    I'm still stuck on this issue... PayPal passes Low Order Fee, it appears in the Order Email, and in the GUI. The Database includes it in the Order Total, but Authorize.net does not get the Low Order Fee and the Order Total in Authorize.net has it subtracted??? Is anyone else out there experiencing this? Does anyone have any ideas? Thanks in advance, Tom
  5. You might try to see if you are forcing cookie usage.
  6. austintechsus

    Authorize.net AIM not passing Low Order Fee

    I thought it might help is I gave you the code for my authorizenet_aim.php also. It follows: <?php /* $Id: authorizenet_aim.php 8th March, 2006 23:39:00 Rhea Anthony $ Released under the GNU General Public License osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Original portions copyright 2003 osCommerce Updated portions copyright 2004 Jason LeBaron (jason@networkdad.com) Restoration of original portions and addition of new portions Copyright © 2006 osCommerce */ class authorizenet_aim { var $code, $title, $description, $enabled, $response; // class constructor function authorizenet_aim() { $this->code = 'authorizenet_aim'; if ($_GET['main_page'] != '') { $this->title = MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CATALOG_TITLE; // Module title in Catalog } else { $this->title = MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_ADMIN_TITLE; // Module title it Admin } $this->description = MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_DESCRIPTION; // Description of Module in Admin $this->enabled = ((MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS == 'True') ? true : false); // If the module is installed or not $this->sort_order = MODULE_PAYMENT_AUTHORIZENET_AIM_SORT_ORDER; // Sort Order of this payment option on the checkout_payment.php page $this->form_action_url = tep_href_link(FILENAME_CHECKOUT_PROCESS, '', 'SSL', true); // checkout_process.php - page to go to on completion if ((int)MODULE_PAYMENT_AUTHORIZENET_AIM_ORDER_STATUS_ID > 0) { $this->order_status = MODULE_PAYMENT_AUTHORIZENET_AIM_ORDER_STATUS_ID; } if (is_object($order)) $this->update_status(); } // class methods function update_status() { global $order, $db; if ( ($this->enabled == true) && ((int)MODULE_PAYMENT_AUTHORIZENET_AIM_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_AUTHORIZENET_AIM_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; } } } // Validate the credit card information via javascript (Number, Owner, and CVV Lengths) function javascript_validation() { $js = ' if (payment_value == "' . $this->code . '") {' . "\n" . ' var cc_owner = document.checkout_payment.authorizenet_aim_cc_owner.value;' . "\n" . ' var cc_number = document.checkout_payment.authorizenet_aim_cc_number.value;' . "\n"; if (MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV == 'True') { $js .= ' var cc_cvv = document.checkout_payment.authorizenet_aim_cc_cvv.value;' . "\n"; } $js .= ' if (cc_owner == "" || cc_owner.length < ' . CC_OWNER_MIN_LENGTH . ') {' . "\n" . ' error_message = error_message + "' . MODULE_PAYMENT_AUTHORIZENET_AIM_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_AUTHORIZENET_AIM_TEXT_JS_CC_NUMBER . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n"; if (MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV == 'True') { $js .= ' if (cc_cvv == "" || cc_cvv.length < "3" || cc_cvv.length > "4") {' . "\n". ' error_message = error_message + "' . MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_JS_CC_CVV . '";' . "\n" . ' error = 1;' . "\n" . ' }' . "\n" . ' }' . "\n"; } return $js; } // Display Credit Card information on the checkout_payment.php page 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 = getdate(); for ($i=$today['year']; $i < $today['year']+10; $i++) { $expires_year[] = array('id' => strftime('%y',mktime(0,0,0,1,1,$i)), 'text' => strftime('%Y',mktime(0,0,0,1,1,$i))); } if (MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV == 'True') { $selection = array('id' => $this->code, 'module' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CATALOG_TITLE, 'fields' => array(array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('authorizenet_aim_cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'])), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('authorizenet_aim_cc_number')), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('authorizenet_aim_cc_expires_month', $expires_month) . '?' . tep_draw_pull_down_menu('authorizenet_aim_cc_expires_year', $expires_year)), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CVV, 'field' => tep_draw_input_field('authorizenet_aim_cc_cvv','',"size=4, maxlength=4")))); } else { $selection = array('id' => $this->code, 'module' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CATALOG_TITLE, 'fields' => array(array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_OWNER, 'field' => tep_draw_input_field('authorizenet_aim_cc_owner', $order->billing['firstname'] . ' ' . $order->billing['lastname'])), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_NUMBER, 'field' => tep_draw_input_field('authorizenet_aim_cc_number')), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_EXPIRES, 'field' => tep_draw_pull_down_menu('authorizenet_aim_cc_expires_month', $expires_month) . '?' . tep_draw_pull_down_menu('authorizenet_aim_cc_expires_year', $expires_year)))); } return $selection; } // Evaluates the Credit Card Type for acceptance and validity of the Credit Card Number and Expiry Date function pre_confirmation_check() { global $_POST; include(DIR_WS_CLASSES . 'cc_validation.php'); $cc_validation = new cc_validation(); $result = $cc_validation->validate($_POST['authorizenet_aim_cc_number'], $_POST['authorizenet_aim_cc_expires_month'], $_POST['authorizenet_aim_cc_expires_year'], $_POST['authorizenet_aim_cc_cvv']); $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 false: $error = TEXT_CCVAL_ERROR_INVALID_NUMBER; break; } if ( ($result == false) || ($result < 1) ) { $payment_error_return = 'payment_error=' . $this->code . '&error=' . urlencode($error) . '&authorizenet_aim_cc_owner=' . urlencode($_POST['authorizenet_aim_cc_owner']) . '&authorizenet_aim_cc_expires_month=' . $_POST['authorizenet_aim_cc_expires_month'] . '&authorizenet_aim_cc_expires_year=' . $_POST['authorizenet_aim_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; $this->cc_expiry_month = $cc_validation->cc_expiry_month; $this->cc_expiry_year = $cc_validation->cc_expiry_year; } // Display Credit Card Information on the Checkout Confirmation Page function confirmation() { global $_POST; if (MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV == 'True') { $confirmation = array(//'title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CATALOG_TITLE, // Redundant 'fields' => array(array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_TYPE, 'field' => $this->cc_card_type), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_OWNER, 'field' => $_POST['authorizenet_aim_cc_owner']), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_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_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_EXPIRES, 'field' => strftime('%B, %Y', mktime(0,0,0,$_POST['authorizenet_aim_cc_expires_month'], 1, '20' . $_POST['authorizenet_aim_cc_expires_year']))), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CVV, 'field' => $_POST['authorizenet_aim_cc_cvv']))); } else { $confirmation = array(//'title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CATALOG_TITLE, // Redundant 'fields' => array(array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_TYPE, 'field' => $this->cc_card_type), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_OWNER, 'field' => $_POST['authorizenet_aim_cc_owner']), array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_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_AUTHORIZENET_AIM_TEXT_CREDIT_CARD_EXPIRES, 'field' => strftime('%B, %Y', mktime(0,0,0,$_POST['authorizenet_aim_cc_expires_month'], 1, '20' . $_POST['authorizenet_aim_cc_expires_year']))))); } return $confirmation; } function process_button() { // Hidden fields on the checkout confirmation page $process_button_string = tep_draw_hidden_field('cc_owner', $_POST['authorizenet_aim_cc_owner']) . tep_draw_hidden_field('cc_expires', $this->cc_expiry_month . substr($this->cc_expiry_year, -2)) . tep_draw_hidden_field('cc_type', $this->cc_card_type) . tep_draw_hidden_field('cc_number', $this->cc_card_number); if (MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV == 'True') { $process_button_string .= tep_draw_hidden_field('cc_cvv', $_POST['authorizenet_aim_cc_cvv']); } $process_button_string .= tep_draw_hidden_field(tep_session_name(), tep_session_id()); return $process_button_string; return false; } function before_process() { global $_POST, $response, $db, $order; // DATA PREPARATION SECTION unset($submit_data); // Cleans out any previous data stored in the variable // Create a string that contains a listing of products ordered for the description field $description = ''; for ($i=0; $i<sizeof($order->products); $i++) { $description .= $order->products[$i]['name'] . '(qty: ' . $order->products[$i]['qty'] . ') + '; } // Strip the last "\n" from the string $description = substr($description, 0, -2); // Create a variable that holds the order time $order_time = date("F j, Y, g:i a"); // Calculate the next expected order id $last_order_id = tep_db_query("select * from " . TABLE_ORDERS . " order by orders_id desc limit 1"); $new_order_id = $last_order_id->fields['orders_id']; $new_order_id = ($new_order_id + 1); // Populate an array that contains all of the data to be submitted $submit_data = array( x_login => MODULE_PAYMENT_AUTHORIZENET_AIM_LOGIN, // The login name as assigned to you by authorize.net x_tran_key => MODULE_PAYMENT_AUTHORIZENET_AIM_TXNKEY, // The Transaction Key (16 digits) is generated through the merchant interface x_relay_response => 'FALSE', // AIM uses direct response, not relay response x_delim_data => 'TRUE', // The default delimiter is a comma x_version => '3.1', // 3.1 is required to use CVV codes x_type => MODULE_PAYMENT_AUTHORIZENET_AIM_AUTHORIZATION_TYPE == 'Authorize' ? 'AUTH_ONLY': 'AUTH_CAPTURE', x_method => 'CC', //MODULE_PAYMENT_AUTHORIZENET_AIM_METHOD == 'Credit Card' ? 'CC' : 'ECHECK', x_amount => number_format($order->info['total'], 2), x_card_num => $_POST['cc_number'], x_exp_date => $_POST['cc_expires'], x_card_code => $_POST['cc_cvv'], x_email_customer => MODULE_PAYMENT_AUTHORIZENET_AIM_EMAIL_CUSTOMER == 'True' ? 'TRUE': 'FALSE', x_email_merchant => MODULE_PAYMENT_AUTHORIZENET_AIM_EMAIL_MERCHANT == 'True' ? 'TRUE': 'FALSE', x_cust_id => $_SESSION['customer_id'], x_invoice_num => $new_order_id, x_first_name => $order->billing['firstname'], x_last_name => $order->billing['lastname'], x_company => $order->billing['company'], x_address => $order->billing['street_address'], x_city => $order->billing['city'], x_state => $order->billing['state'], x_zip => $order->billing['postcode'], x_country => $order->billing['country']['title'], x_phone => $order->customer['telephone'], x_email => $order->customer['email_address'], x_ship_to_first_name => $order->delivery['firstname'], x_ship_to_last_name => $order->delivery['lastname'], x_ship_to_address => $order->delivery['street_address'], x_ship_to_city => $order->delivery['city'], x_ship_to_state => $order->delivery['state'], x_ship_to_zip => $order->delivery['postcode'], x_ship_to_country => $order->delivery['country']['title'], x_description => $description, // Merchant defined variables go here Date => $order_time, IP => $_SERVER['REMOTE_ADDR'], Session => tep_session_id()); if(MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE == 'Test') { $submit_data['x_test_request'] = 'TRUE'; } else { $submit_data['x_test_request'] = 'FALSE'; } // concatenate the submission data and put into variable $data while(list($key, $value) = each($submit_data)) { $data .= $key . '=' . urlencode(ereg_replace(',', '', $value)) . '&'; } // Remove the last "&" from the string $data = substr($data, 0, -1); // Post order info data to Authorize.net // cURL must be compiled into PHP // Connection must be https // Test or Live Server address set // using 'Test' or 'Live' mode in // osCommerce admin panel unset($response); if (MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE == 'Test') { $url = 'https://secure.authorize.net/gateway/transact.dll'; // If this does not work then change 'secure' to 'certification' on this line } else { $url = 'https://secure.authorize.net/gateway/transact.dll'; } $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_VERBOSE, 0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); $authorize = curl_exec($ch); curl_close ($ch); $response = split('\,', $authorize); // Parse the response code and text for custom error display $response_code = explode(',', $response[0]); $response_text = explode(',', $response[3]); $x_response_code = $response_code[0]; $x_response_text = $response_text[0]; // If the response code is not 1 (approved) then redirect back to the payment page with the appropriate error message if ($x_response_code != '1') { tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . $x_response_text . ' - ' . urlencode(MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_DECLINED_MESSAGE), 'SSL', true, false)); } } function after_process() { return false; } function get_error() { global $_GET; $error = array('title' => MODULE_PAYMENT_AUTHORIZENET_AIM_TEXT_ERROR, 'error' => stripslashes(urldecode($_GET['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_AUTHORIZENET_AIM_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 Authorize.net AIM Module', 'MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS', 'True', 'Do you want to accept Authorize.net payments via the AIM Method?', '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 ('Login Username', 'MODULE_PAYMENT_AUTHORIZENET_AIM_LOGIN', 'Your User Name', 'The login username used for the Authorize.net service', '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 ('Transaction Key', 'MODULE_PAYMENT_AUTHORIZENET_AIM_TXNKEY', '16 digit key', 'Transaction Key used for encrypting TP data', '6', '0', 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 ('Transaction Mode', 'MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE', 'Test', 'Transaction mode used for processing orders', '6', '0', 'tep_cfg_select_option(array(\'Test\', \'Live\'), ', 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 ('Authorization Type', 'MODULE_PAYMENT_AUTHORIZENET_AIM_AUTHORIZATION_TYPE', 'Authorize/Capture', 'Do you want submitted credit card transactions to be authorized only, or authorized and captured?', '6', '0', 'tep_cfg_select_option(array(\'Authorize\', \'Authorize/Capture\'), ', 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 ('Customer Notifications', 'MODULE_PAYMENT_AUTHORIZENET_AIM_EMAIL_CUSTOMER', 'False', 'Should Authorize.Net e-mail a receipt to the customer?', '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, set_function, date_added) values ('Merchant Notifications', 'MODULE_PAYMENT_AUTHORIZENET_AIM_EMAIL_MERCHANT', 'True', 'Should Authorize.Net e-mail a receipt to the merchant?', '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, set_function, date_added) values ('Request CVV Number', 'MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV', 'True', 'Do you want to ask the customer for the card\'s CVV number', '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 ('Sort order of display.', 'MODULE_PAYMENT_AUTHORIZENET_AIM_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_AUTHORIZENET_AIM_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_AUTHORIZENET_AIM_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() { return array('MODULE_PAYMENT_AUTHORIZENET_AIM_STATUS', 'MODULE_PAYMENT_AUTHORIZENET_AIM_LOGIN', 'MODULE_PAYMENT_AUTHORIZENET_AIM_TXNKEY', 'MODULE_PAYMENT_AUTHORIZENET_AIM_TESTMODE', 'MODULE_PAYMENT_AUTHORIZENET_AIM_AUTHORIZATION_TYPE', 'MODULE_PAYMENT_AUTHORIZENET_AIM_EMAIL_CUSTOMER', 'MODULE_PAYMENT_AUTHORIZENET_AIM_EMAIL_MERCHANT', 'MODULE_PAYMENT_AUTHORIZENET_AIM_USE_CVV', 'MODULE_PAYMENT_AUTHORIZENET_AIM_SORT_ORDER', 'MODULE_PAYMENT_AUTHORIZENET_AIM_ZONE', 'MODULE_PAYMENT_AUTHORIZENET_AIM_ORDER_STATUS_ID'); //'MODULE_PAYMENT_AUTHORIZENET_AIM_METHOD' } } ?>
  7. austintechsus

    Authorize.net AIM not passing Low Order Fee

    The following is from the Authorize.net Merchant Email Receipt: ========= ORDER INFORMATION ========= Invoice : 1 Description : Wilton 540A-4 - Carriage C-Clamps - 540A Series - 4(qty: 1) + Lincoln Lubrication G410 - Plastic Pump - 5-55 gal. Drum(qty: 1) Amount : 42.30 (USD) Payment Method : MasterCard Type : Authorization Only and this is from the Order Process email: Products ------------------------------------------------------ 1 x Wilton 540A-4 - Carriage C-Clamps - 540A Series - 4 (IWIL22003) = $13.74 1 x Lincoln Lubrication G410 - Plastic Pump - 5-55 gal. Drum (ILING410) = $19.61 ------------------------------------------------------ Sub-Total: $33.35 Low Order Fee: $5.00 United Parcel Service (XML) (1 pkg x 6 lbs total) (UPS Ground, 2006-11-13): $6.87 TX Tax @ 6.25%: $2.08 Total: $47.30 You can see that it is either not receiving or not accepting the $5.00 Low Order Fee at Authorize.net.
  8. austintechsus

    Authorize.net AIM not passing Low Order Fee

    Sure, it's live at tool-home.com. Are you asking to see the files?
  9. austintechsus

    Authorize.net AIM not passing Low Order Fee

    My compliments to all contributors to osCommerce! I have installed Authorize.net AIM and everything appears to work well EXCEPT that the Low Order Fee is getting stripped from the total as it passes to Authorize.net. The Low Order Fee appears everywhere else, including in the sum of ot_total in orders_total table. I have PayPal configured and it takes the Low Order Fee. The Order Process email includes the Low Order Fee. The UI shows the Low Order Fee. The only place it gets left out is at Authorize.net. Can anyone please help me? I'm really stuck Thanks in advance, Tom
  10. austintechsus

    Authorization.net Confirm Order

    I just switched from a Yahoo hosted store to osC. My compliments to all the excellent work by all of the writers! I had Paymentech for the Yahoo store and switched to Paymentech with Authorize.net for the osC store. I have had no issues with Paymentech except one... I have a Low Order Fee and when the customer uses PayPal, the fee is included in the total. When they use a credit card using the Authorize.net AIM module, it drops off the Low Order Fee when transferring the sale data to Authorize.net. Does anybody know how to fix this? I'm kind of stuck... Thanks in advance
  11. austintechsus

    Forget Paymentech

    I also just switched from a Yahoo hosted store to osC (tool-home.com). My compliments to all the excellent work by all of the writers! I had Paymentech for the Yahoo store and switched to Paymentech with Authorize.net for the osC store. I have had no issues with Paymentech except one... I have a Low Order Fee and when the customer uses PayPal, the fee is included in the total. When they use a credit card using the Authorize.net AIM module, it drops off the Low Order Fee when transferring the sale data to Authorize.net. Does anybody know how to fix this? I'm kind of stuck...
  12. austintechsus

    Easy Populate & Products Attributes

    Thanks for the reply, Hugh! I am not the best at DBA stuff... in fact, I'm at best a hack. I made one index of products_image, products_model, products_price, and manufacturers_id. My thinking was that they all appeared in my product listings in the store and at the same time that I lost the ability to download from EP, I had a marked degredation in store performance, seemingly related to product listing speed. Did I do the right thing, or can you suggest a better way to index? I did it through Toad because that is how I know to do it. Thanks again, Tom
  13. austintechsus

    Easy Populate & Products Attributes

    Thanks to VJ and Mibble! This is a great contrib' EP worked well to load about 3-4K of products but now it won't export the full file. I can still get an abbreviated version. I went to the DB and indexed product_names, model, price, image, and manufacturers_id trying to speed up the DB. It didn't work. I changed the resource parameters in BASIC.INI to: max_execution_time = 600 max_input_time = 600 memory_limit = 128M and that didn't work. I then went to my.ini and added the last three lines of the following: # The MySQL server [mysqld] bind-address = 127.0.0.1 port = 3306 skip-locking default-character-set=latin1 set-variable = key_buffer=32M set-variable = max_allowed_packet=1M set-variable = thread_stack=128K set-variable = flush_time=1800 set-variable = max_connections=200 set-variable = read_buffer_size=16M set-variable = sort_buffer_size=16M while increasing the previous values above. I read something in the hundreds of posts that I've read while trying to get EP to work about database performance that worked for somebody but I can't find it again. It seemed like a pretty easy fix at the time but I was just trying to get EP working then. Now I'm trying to keep it working and improve my store's performance as well. Does anyone have any ideas? I'm out of thoughts... Thanks in advance for help, Tom
  14. austintechsus

    Paymentech contribution

    First, Thanks so much for this contribution, Wheat! Thanks also for the explanation below, Paul! I am not a programmer, but a hack and so far have been able to make things work. I have a question for you, Paul about the Fix, Item 4. below... Is this rounding to the nearest unit ($) because of the zero "0" or the 100th (penny)? If it is rounding to the dollar and I use a two (2) instead of the zero (0), can I get it to round to a penny? Thanks in advance, Tom
  15. austintechsus

    no EP upload, no errors

    Hi: I'm new to osC and really appreciate all the excellent prior effort. I was able to get up and running on a test server in a couple of hours using Apache2triad. I've installed EP 2.60 and can Download catalog data, just a few test products with off-the-shelf package plus a couple of my own. I edit the file (with EOREOR to end each row) and try to Upload. Nothing happens in my store. I try to Upload the original file (first deleting one of the products in it through the store admin) and nothing happens in my store. The following is the result in EP: File uploaded. Temporary filename: C:\apache2triad\temp\phpC6.tmp User filename: EP2006Jul11-1111.txt Size: 16080 This all happens almost instantly. It looks like it would be writing a file to C:\apache2triad\temp\ but there is no phpC6.tmp in the folder. The folder is not read only and I"m on Win2K. I've tried IE and Mozilla with the same result from each. I searched this forum for answers, tried importing only a 3-product file, while setting $maxrecs to 4 (as suggested). I'm at a real loss. Can anyone please help? Thanks in advance, Tom
×