Duda en Modulo Oscommerce

65 views
Skip to first unread message

FallenAngel

unread,
Sep 28, 2011, 2:21:44 PM9/28/11
to TPV Banesto
He probado el modulo de pago de banesto para Oscommerce y funciona
bien, lo unico que vuelta.php esta en desuso no? Ya no es necesario
instalar nada en la parte servidor, realmente hace el pago pero claro
ahora no tengo URL donde hacerlo volver, alguien ideo algo mas
sencillo donde recibir el OK o el KO?

gus

unread,
Oct 26, 2011, 6:33:02 AM10/26/11
to TPV Banesto
Hola:

El banco configura la URL de regreso a donde quieras. puedo pasarte el
código que tengo sobre un oscommerce 2.01 no se si es válido para tu
oscommcer ya que no se coinciden los nombres.
Pego el código aqui más abajo.

Pregunta Como instalas el módulo, he copiado todos los archivos que
vienen pero no me aparece en la lista de módulos.

Gracias UN saludo.

checkout_process.php

<?php
/*
QT Pro Version 4.1 modifications

Copyright (c) 2004, 2005 Ralph Day
Released under the GNU General Public License

Based on prior works released under the GNU General Public
License:
QT Pro prior versions
Ralph Day, October 2004
Tom Wojcik aka TomThumb 2004/07/03 based on work by Michael
Coffman aka coffman
FREEZEHELL - 08/11/2003 freez...@hotmail.com Copyright (c)
2003 IBWO
Joseph Shain, January 2003
osCommerce MS2
Copyright (c) 2003 osCommerce

Modifications made:
11/2004 - Rename products_options column from special to
products_options_track_stock
Allow attribute stock to go negative
Save products_stock_attributes in order to
facilitate remove order & restock
Miscellaneous cleanup
02/2005 - Fix to allow downloads to be set to true
04/2005 - Fix to properly save information in order for order
removal, particularly for
downloadable products
14-11-05 - Fix to properly save all missing att lists from
orders_products.products_stock_attributes
mod was by Si - scra...@consultant.com or
si...@ibridge.co.uk

*******************************************************************************************

$Id: checkout_process.php,v 1.128 2003/05/28 18:00:29 hpdl Exp $

osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com

Copyright (c) 2003 osCommerce

Amended for Attributes Inventory - FREEZEHELL - 08/11/2003
freez...@hotmail.com
Copyright (c) 2003 IBWO


Released under the GNU General Public License
*/

/*
function grabalog($texto)
{
$fp = fopen("LOG_TRANSACTIONS.TXT", "a+");
if ($fp) {
fwrite($fp, $texto);
fclose($fp);
}
}
ob_start("grabalog");
echo "----[LOG DE TRANSACCIONES
SERMEPA]------------------------------------\r\n";
define("crlf", "\r\n");
*/


if (!empty($_POST['Ds_MerchantData'])) {
$_POST['osCsid'] = $_POST['Ds_MerchantData'];
$_GET['osCsid'] = $_POST['Ds_MerchantData'];
$osCsid = $_POST['Ds_MerchantData'];
}
include('includes/application_top.php');



// print_r($GLOBALS);



// 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));

// echo "****** REDIRECCION PORQUE customer_id NO ESTA REGISTRADO".
crlf;


tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL'));
}

if (!tep_session_is_registered('sendto')) {

// echo "****** REDIRECCION PORQUE sendto NO ESTA REGISTRADO". crlf;

tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));
}

if ( (tep_not_null(MODULE_PAYMENT_INSTALLED)) && (!
tep_session_is_registered('payment')) ) {


// echo "****** REDIRECCION PORQUE payment NO ESTA REGISTRADO".
crlf;


tep_redirect(tep_href_link(FILENAME_CHECKOUT_PAYMENT, '', 'SSL'));
}

// 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) {

// echo "****** REDIRECCION PORQUE cart->cartID != cartID". crlf;

tep_redirect(tep_href_link(FILENAME_CHECKOUT_SHIPPING, '',
'SSL'));
}
}


// echo "====== PASO 2 LLEGO". crlf;

include(DIR_WS_LANGUAGES . $language . '/' .
FILENAME_CHECKOUT_PROCESS);

// load selected payment module
require(DIR_WS_CLASSES . 'payment.php');
$payment_modules = new payment($payment);

// load the selected shipping module
require(DIR_WS_CLASSES . 'shipping.php');
$shipping_modules = new shipping($shipping);

require(DIR_WS_CLASSES . 'order.php');
$order = new order;


// Añadir una cláusula por cada idioma!!
// if ( ($order->info['payment_method'] != "Pago por tarjeta On-line")
&&
// ($order->info['payment_method'] != "Tarjeta de credito
(Servired)") )
// {
// load the before_process function from the payment modules


// echo "======> ANTES DE BEFORE_PROCESS" . crlf;


$payment_modules->before_process();


// echo "======> DESPUES DE BEFORE_PROCESS" . crlf;


// }


require(DIR_WS_CLASSES . 'order_total.php');
$order_total_modules = new order_total;

$order_totals = $order_total_modules->process();

$sql_data_array = array('customers_id' => $customer_id,
'customers_name' => $order-
>customer['firstname'] . ' ' . $order->customer['lastname'],
'customers_company' => $order-
>customer['company'],
'customers_street_address' => $order-
>customer['street_address'],
'customers_suburb' => $order-
>customer['suburb'],
'customers_city' => $order-
>customer['city'],
'customers_postcode' => $order-
>customer['postcode'],
'customers_state' => $order-
>customer['state'],
'customers_country' => $order-
>customer['country']['title'],
'customers_telephone' => $order-
>customer['telephone'],
'customers_email_address' => $order-
>customer['email_address'],
'customers_address_format_id' => $order-
>customer['format_id'],
'delivery_name' => $order-
>delivery['firstname'] . ' ' . $order->delivery['lastname'],
'delivery_company' => $order-
>delivery['company'],
'delivery_street_address' => $order-
>delivery['street_address'],
'delivery_suburb' => $order-
>delivery['suburb'],
'delivery_city' => $order-
>delivery['city'],
'delivery_postcode' => $order-
>delivery['postcode'],
'delivery_state' => $order-
>delivery['state'],
'delivery_country' => $order-
>delivery['country']['title'],
'delivery_address_format_id' => $order-
>delivery['format_id'],
'billing_name' => $order-
>billing['firstname'] . ' ' . $order->billing['lastname'],
'billing_company' => $order-
>billing['company'],
'billing_street_address' => $order-
>billing['street_address'],
'billing_suburb' => $order-
>billing['suburb'],
'billing_city' => $order->billing['city'],
'billing_postcode' => $order-
>billing['postcode'],
'billing_state' => $order-
>billing['state'],
'billing_country' => $order-
>billing['country']['title'],
'billing_address_format_id' => $order-
>billing['format_id'],
'payment_method' => $order-
>info['payment_method'],
'cc_type' => $order->info['cc_type'],
'cc_owner' => $order->info['cc_owner'],
'cc_number' => $_SESSION['ref'],
'cc_expires' => $order->info['cc_expires'],
'date_purchased' => 'now()',
'orders_status' => $order-
>info['order_status'],
'currency' => $order->info['currency'],
'currency_value' => $order-
>info['currency_value']);
tep_db_perform(TABLE_ORDERS, $sql_data_array);
$insert_id = tep_db_insert_id();
for ($i=0, $n=sizeof($order_totals); $i<$n; $i++) {
$sql_data_array = array('orders_id' => $insert_id,
'title' => $order_totals[$i]['title'],
'text' => $order_totals[$i]['text'],
'value' => $order_totals[$i]['value'],
'class' => $order_totals[$i]['code'],
'sort_order' => $order_totals[$i]
['sort_order']);
tep_db_perform(TABLE_ORDERS_TOTAL, $sql_data_array);
}

$customer_notification = (SEND_EMAILS == 'true') ? '1' : '0';
$sql_data_array = array('orders_id' => $insert_id,
'orders_status_id' => $order-
>info['order_status'],
'date_added' => 'now()',
'customer_notified' =>
$customer_notification,
'comments' => $order->info['comments']);
tep_db_perform(TABLE_ORDERS_STATUS_HISTORY, $sql_data_array);

// initialized for the email confirmation
$products_ordered = '';
$products_ordered_idx = 1;
$subtotal = 0;
$total_tax = 0;

for ($i=0, $n=sizeof($order->products); $i<$n; $i++) {
// Stock Update - Joao Correia
//++++ QT Pro: Begin Changed code
$products_stock_attributes=null;
if (STOCK_LIMITED == 'true') {
$products_attributes = $order->products[$i]['attributes'];
// if (DOWNLOAD_ENABLED == 'true') {
//++++ QT Pro: End Changed Code
$stock_query_raw = "SELECT products_quantity,
pad.products_attributes_filename
FROM " . TABLE_PRODUCTS . " p
LEFT JOIN " . TABLE_PRODUCTS_ATTRIBUTES . "
pa
ON p.products_id=pa.products_id
LEFT JOIN " .
TABLE_PRODUCTS_ATTRIBUTES_DOWNLOAD . " pad
ON
pa.products_attributes_id=pad.products_attributes_id
WHERE p.products_id = '" .
tep_get_prid($order->products[$i]['id']) . "'";
// Will work with only one option for downloadable products
// otherwise, we have to build the query dynamically with a loop
//++++ QT Pro: Begin Changed code
// $products_attributes = $order->products[$i]['attributes'];
//++++ QT Pro: End Changed Code
if (is_array($products_attributes)) {
$stock_query_raw .= " AND pa.options_id = '" .
$products_attributes[0]['option_id'] . "' AND pa.options_values_id =
'" . $products_attributes[0]['value_id'] . "'";
}
$stock_query = tep_db_query($stock_query_raw);
if (tep_db_num_rows($stock_query) > 0) {
$stock_values = tep_db_fetch_array($stock_query);
//++++ QT Pro: Begin Changed code
$actual_stock_bought = $order->products[$i]['qty'];
$download_selected = false;
if ((DOWNLOAD_ENABLED == 'true') &&
isset($stock_values['products_attributes_filename']) &&
tep_not_null($stock_values['products_attributes_filename'])) {
$download_selected = true;
$products_stock_attributes='$$DOWNLOAD$$';
}
// If not downloadable and attributes present, adjust attribute
stock
if (!$download_selected && is_array($products_attributes)) {
$all_nonstocked = true;
$products_stock_attributes_array = array();
foreach ($products_attributes as $attribute) {

//**si** 14-11-05 fix missing att list
// if ($attribute['track_stock'] == 1) {
// $products_stock_attributes_array[] =
$attribute['option_id'] . "-" . $attribute['value_id'];
$products_stock_attributes_array[] = $attribute['option_id'] . "-" .
$attribute['value_id'];
if ($attribute['track_stock'] == 1) {
//**si** 14-11-05 end

$all_nonstocked = false;
}
}
if ($all_nonstocked) {
$actual_stock_bought = $order->products[$i]['qty'];

//**si** 14-11-05 fix missing att list
asort($products_stock_attributes_array, SORT_NUMERIC);
$products_stock_attributes = implode(",",
$products_stock_attributes_array);
//**si** 14-11-05 end

} else {
asort($products_stock_attributes_array, SORT_NUMERIC);
$products_stock_attributes = implode(",",
$products_stock_attributes_array);
$attributes_stock_query = tep_db_query("select
products_stock_quantity from " . TABLE_PRODUCTS_STOCK . " where
products_stock_attributes = '$products_stock_attributes' AND
products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
if (tep_db_num_rows($attributes_stock_query) > 0) {
$attributes_stock_values =
tep_db_fetch_array($attributes_stock_query);
$attributes_stock_left =
$attributes_stock_values['products_stock_quantity'] - $order-
>products[$i]['qty'];
tep_db_query("update " . TABLE_PRODUCTS_STOCK . " set
products_stock_quantity = '" . $attributes_stock_left . "' where
products_stock_attributes = '$products_stock_attributes' AND
products_id = '" . tep_get_prid($order->products[$i]['id']) . "'");
$actual_stock_bought = ($attributes_stock_left < 1) ?
$attributes_stock_values['products_stock_quantity'] : $order-
>products[$i]['qty'];
} else {
$attributes_stock_left = 0 - $order->products[$i]
['qty'];
tep_db_query("insert into " . TABLE_PRODUCTS_STOCK .
" (products_id, products_stock_attributes, products_stock_quantity)
values ('" . tep_get_prid($order->products[$i]['id']) . "', '" .
$products_stock_attributes . "', '" . $attributes_stock_left . "')");
$actual_stock_bought = 0;
}
}
}
// $stock_query = tep_db_query("select products_quantity from
" . TABLE_PRODUCTS . " where products_id = '" . tep_get_prid($order-
>products[$i]['id']) . "'");
// }
// if (tep_db_num_rows($stock_query) > 0) {
// $stock_values = tep_db_fetch_array($stock_query);
// do not decrement quantities if products_attributes_filename exists
if (!$download_selected) {
$stock_left = $stock_values['products_quantity'] -
$actual_stock_bought;
tep_db_query("UPDATE " . TABLE_PRODUCTS . "
SET products_quantity = products_quantity -
'" . $actual_stock_bought . "'
WHERE products_id = '" . tep_get_prid($order-
>products[$i]['id']) . "'");
//++++ QT Pro: End Changed Code
if ( ($stock_left < 1) && (STOCK_ALLOW_CHECKOUT ==
'false') ) {
// tep_db_query("update " . TABLE_PRODUCTS . " set
products_status = '0' where products_id = '" . tep_get_prid($order-
>products[$i]['id']) . "'");
}
}
}
//++++ QT Pro: Begin Changed code
}


//**si** 14-11-05 fix missing att list
else {
if ( is_array($order->products[$i]['attributes']) ) {
$products_stock_attributes_array = array();
foreach ($order->products[$i]['attributes'] as $attribute) {
$products_stock_attributes_array[] = $attribute['option_id'] .
"-" . $attribute['value_id'];
}
asort($products_stock_attributes_array, SORT_NUMERIC);
$products_stock_attributes = implode(",",
$products_stock_attributes_array);
}
}
//**si** 14-11-05 end



//++++ QT Pro: End Changed Code
// Update products_ordered (for bestsellers list)
tep_db_query("update " . TABLE_PRODUCTS . " set products_ordered =
products_ordered + " . sprintf('%d', $order->products[$i]['qty']) . "
where products_id = '" . tep_get_prid($order->products[$i]['id']) .
"'");

//++++ QT Pro: Begin Changed code
if (!isset($products_stock_attributes))
$products_stock_attributes=null;
$sql_data_array = array('orders_id' => $insert_id,
'products_id' => tep_get_prid($order-
>products[$i]['id']),
'products_model' => $order->products[$i]
['model'],
'products_name' => $order->products[$i]
['name'],
'products_price' => $order->products[$i]
['price'],
'final_price' => $order->products[$i]
['final_price'],
'products_tax' => $order->products[$i]
['tax'],
'products_quantity' => $order->products[$i]
['qty'],
'products_stock_attributes' =>
$products_stock_attributes);
//++++ QT Pro: End Changed Code
tep_db_perform(TABLE_ORDERS_PRODUCTS, $sql_data_array);
$order_products_id = tep_db_insert_id();

//------insert customer choosen option to order--------
$attributes_exist = '0';
$products_ordered_attributes = '';
if (isset($order->products[$i]['attributes'])) {
$attributes_exist = '1';
for ($j=0, $n2=sizeof($order->products[$i]['attributes']); $j<
$n2; $j++) {
if (DOWNLOAD_ENABLED == 'true') {
$attributes_query = "select popt.products_options_name,
poval.products_options_values_name, pa.options_values_price,
pa.price_prefix, pad.products_attributes_maxdays,
pad.products_attributes_maxcount , pad.products_attributes_filename
from " . TABLE_PRODUCTS_OPTIONS . "
popt, " . TABLE_PRODUCTS_OPTIONS_VALUES . " poval, " .
TABLE_PRODUCTS_ATTRIBUTES . " pa
left join " .
TABLE_PRODUCTS_ATTRIBUTES_DOWNLOAD . " pad
on
pa.products_attributes_id=pad.products_attributes_id
where pa.products_id = '" . $order-
>products[$i]['id'] . "'
and pa.options_id = '" . $order-
>products[$i]['attributes'][$j]['option_id'] . "'
and pa.options_id =
popt.products_options_id
and pa.options_values_id = '" . $order-
>products[$i]['attributes'][$j]['value_id'] . "'
and pa.options_values_id =
poval.products_options_values_id
and popt.language_id = '" .
$languages_id . "'
and poval.language_id = '" .
$languages_id . "'";
$attributes = tep_db_query($attributes_query);
} else {
$attributes = tep_db_query("select
popt.products_options_name, poval.products_options_values_name,
pa.options_values_price, pa.price_prefix from " .
TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_OPTIONS_VALUES . "
poval, " . TABLE_PRODUCTS_ATTRIBUTES . " pa where pa.products_id =
'" . $order->products[$i]['id'] . "' and pa.options_id = '" . $order-
>products[$i]['attributes'][$j]['option_id'] . "' and pa.options_id =
popt.products_options_id and pa.options_values_id = '" . $order-
>products[$i]['attributes'][$j]['value_id'] . "' and
pa.options_values_id = poval.products_options_values_id and
popt.language_id = '" . $languages_id . "' and poval.language_id =
'" . $languages_id . "'");
}
$attributes_values = tep_db_fetch_array($attributes);

$sql_data_array = array('orders_id' => $insert_id,
'orders_products_id' =>
$order_products_id,
'products_options' =>
$attributes_values['products_options_name'],
'products_options_values' =>
$attributes_values['products_options_values_name'],
'options_values_price' =>
$attributes_values['options_values_price'],
'price_prefix' =>
$attributes_values['price_prefix']);
tep_db_perform(TABLE_ORDERS_PRODUCTS_ATTRIBUTES,
$sql_data_array);

if ((DOWNLOAD_ENABLED == 'true') &&
isset($attributes_values['products_attributes_filename']) &&
tep_not_null($attributes_values['products_attributes_filename'])) {
$sql_data_array = array('orders_id' => $insert_id,
'orders_products_id' =>
$order_products_id,
'orders_products_filename' =>
$attributes_values['products_attributes_filename'],
'download_maxdays' =>
$attributes_values['products_attributes_maxdays'],
'download_count' =>
$attributes_values['products_attributes_maxcount']);
tep_db_perform(TABLE_ORDERS_PRODUCTS_DOWNLOAD,
$sql_data_array);
}
$products_ordered_attributes .= "\n\t" .
$attributes_values['products_options_name'] . ' ' .
$attributes_values['products_options_values_name'];
}
}
//------insert customer choosen option eof ----
$total_weight += ($order->products[$i]['qty'] * $order-
>products[$i]['weight']);
$total_tax += tep_calculate_tax($total_products_price,
$products_tax) * $order->products[$i]['qty'];
$total_cost += $total_products_price;

// $products_ordered .= $order->products[$i]['qty'] . ' x ' .
$order->products[$i]['name'] . ' (' . $order->products[$i]['model'] .
') = ' . $currencies->display_price($order->products[$i]
['final_price'], $order->products[$i]['tax'], $order->products[$i]
['qty']) . $products_ordered_attributes . "\n";

$products_ordered .= "<strong>".$products_ordered_idx.".</strong> ";
$products_ordered .= $order->products[$i]['name'];
if (intval($order->products[$i]['qty']) > 1) $products_ordered .=
"(".intval($order->products[$i]['qty'])." uds.)";
$products_ordered .= "<br />\n";
$products_ordered_idx++;
}



// lets start with the email confirmation

// Antigua generación del email de bienvenida...
// Se ha modificado para usar el correo HTML del directorio:
// marketing/emails/compra_ok.html

/*
$email_order = STORE_NAME . "\n" .
EMAIL_SEPARATOR . "\n" .
EMAIL_TEXT_ORDER_NUMBER . ' ' . $insert_id . "\n" .
EMAIL_TEXT_INVOICE_URL . ' ' .
tep_href_link(FILENAME_ACCOUNT_HISTORY_INFO, 'order_id=' . $insert_id,
'SSL', false) . "\n" .
EMAIL_TEXT_DATE_ORDERED . ' ' .
strftime(DATE_FORMAT_LONG) . "\n\n";
if ($order->info['comments']) {
$email_order .= tep_db_output($order->info['comments']) . "\n\n";
}
$email_order .= EMAIL_TEXT_PRODUCTS . "\n" .
EMAIL_SEPARATOR . "\n" .
$products_ordered .
EMAIL_SEPARATOR . "\n";

for ($i=0, $n=sizeof($order_totals); $i<$n; $i++) {
$email_order .= strip_tags($order_totals[$i]['title']) . ' ' .
strip_tags($order_totals[$i]['text']) . "\n";
}

if ($order->content_type != 'virtual') {
$email_order .= "\n" . EMAIL_TEXT_DELIVERY_ADDRESS . "\n" .
EMAIL_SEPARATOR . "\n" .
tep_address_label($customer_id, $sendto, 0, '',
"\n") . "\n";
}

$email_order .= "\n" . EMAIL_TEXT_BILLING_ADDRESS . "\n" .
EMAIL_SEPARATOR . "\n" .
tep_address_label($customer_id, $billto, 0, '',
"\n") . "\n\n";
if (is_object($$payment)) {
$email_order .= EMAIL_TEXT_PAYMENT_METHOD . "\n" .
EMAIL_SEPARATOR . "\n";
$payment_class = $$payment;
$email_order .= $payment_class->title . "\n\n";
if ($payment_class->email_footer) {
$email_order .= $payment_class->email_footer . "\n\n";
}
}
*/


// 1º Cogemos el texto del mensaje...
$email_order = file_get_contents(DIR_WS_EMAILS . "compra_ok.html");

// Reemplazamos los datos...
$email_order = ereg_replace("\[%-NUMERO_PEDIDO-%\]",
$_SESSION['ref'], $email_order);
$email_order = ereg_replace("\[%-FECHA-%\]", date("d/m/Y"),
$email_order);
$email_order = ereg_replace("\[%-PRODUCTOS-%\]", $products_ordered,
$email_order);

$totales_temp = "";
for ($i=0, $n=sizeof($order_totals); $i<$n; $i++) {
$totales_temp .= "<strong>" . strip_tags($order_totals[$i]
['title']) . "</strong> " . strip_tags($order_totals[$i]['text']) .
"<br />\n";
}
$email_order = ereg_replace("\[%-TOTALES-%\]", $totales_temp,
$email_order);
$email_order = ereg_replace("\[%-DIRECCION_ENTREGA-%\]",
tep_address_label($customer_id, $sendto, 0, '', " "), $email_order);

if (is_object($$payment)) {
$payment_class = $$payment;
$email_order = ereg_replace("\[%-FORMA_PAGO-%\]", $payment_class-
>title, $email_order);
} else {
$email_order = ereg_replace("\[%-FORMA_PAGO-%\]", "--",
$email_order);
}

tep_mail($order->customer['firstname'] . ' ' . $order-
>customer['lastname'], $order->customer['email_address'],
EMAIL_TEXT_SUBJECT, $email_order, STORE_OWNER,
STORE_OWNER_EMAIL_ADDRESS);



// send emails to other people
if (SEND_EXTRA_ORDER_EMAILS_TO != '') {
tep_mail('', SEND_EXTRA_ORDER_EMAILS_TO, EMAIL_TEXT_SUBJECT,
$email_order, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS);
}

// load the after_process function from the payment modules
$payment_modules->after_process();

$cart->reset(true);

// unregister session variables used during checkout
tep_session_unregister('sendto');
tep_session_unregister('billto');
tep_session_unregister('shipping');
tep_session_unregister('payment');
tep_session_unregister('comments');

tep_redirect(tep_href_link(FILENAME_CHECKOUT_SUCCESS, '', 'SSL'));

require(DIR_WS_INCLUDES . 'application_bottom.php');
?>

ce...@ymail.com

unread,
Nov 23, 2011, 3:16:26 PM11/23/11
to TPV Banesto
El fichero vuelta.php es funcional si has realizado instalación en tu
propio servidor.

ce...@ymail.com

unread,
Nov 23, 2011, 3:18:18 PM11/23/11
to TPV Banesto
Hola,

El módulo es funcional con cualquier versión de Oscommerce. Esperamos
lanzar uno mejorado en breve si es que hay demanda porque cada vez
Oscommerce se utiliza menos.

Saludos.

On 26 oct, 11:33, gus <ccastrogust...@gmail.com> wrote:
> Hola:
>
> El banco configura la URL de regreso a donde quieras. puedo pasarte el
> código que tengo sobre un oscommerce 2.01  no se si es válido para tu
> oscommcer ya que no se coinciden los nombres.
> Pego el código aqui más abajo.
>
> Pregunta Como instalas el módulo,  he copiado todos los archivos que
> vienen pero no me aparece en la lista  de módulos.
>
> Gracias UN saludo.
>
> checkout_process.php
>
> <?php
> /*
>       QT Pro Version 4.1 modifications
>
>       Copyright (c) 2004, 2005 Ralph Day
>       Released under the GNU General Public License
>
>       Based on prior works released under the GNU General Public
> License:
>         QT Pro prior versions
>           Ralph Day, October 2004
>           Tom Wojcik aka TomThumb 2004/07/03 based on work by Michael
> Coffman aka coffman

>           FREEZEHELL - 08/11/2003 freezeh...@hotmail.com Copyright (c)


> 2003 IBWO
>           Joseph Shain, January 2003
>         osCommerce MS2
>           Copyright (c) 2003 osCommerce
>
>       Modifications made:
>         11/2004 - Rename products_options column from special to
> products_options_track_stock
>                   Allow attribute stock to go negative
>                   Save products_stock_attributes in order to
> facilitate remove order & restock
>                   Miscellaneous cleanup
>         02/2005 - Fix to allow downloads to be set to true
>         04/2005 - Fix to properly save information in order for order
> removal, particularly for
>                   downloadable products
>        14-11-05 - Fix to properly save all missing att lists from
> orders_products.products_stock_attributes

>                   mod was by Si - scran...@consultant.com or


> si...@ibridge.co.uk
>
> *******************************************************************************************
>
>   $Id: checkout_process.php,v 1.128 2003/05/28 18:00:29 hpdl Exp $
>
>   osCommerce, Open Source E-Commerce Solutions
>  http://www.oscommerce.com
>
>   Copyright (c) 2003 osCommerce
>
>   Amended for Attributes Inventory - FREEZEHELL - 08/11/2003

> freezeh...@hotmail.com

> ...
>
> leer más »

Reply all
Reply to author
Forward
0 new messages