nanozombi Posted June 24, 2010 Share Posted June 24, 2010 Hola,he instalado el módulo que comentáis y tengo un problema. La cantidad de los artículos me salen mal. Cuando debería ser una unidad me dice 1000. ¿Alguna idea?Esto es lo que me sale:(PC) LOS SIMS 3:ED.CONMEMORATIVA €59,16 1000 €59.160,00 Paypal Surcharge €2,30 1 €2,30 Total artículos: €59.162,30 Envío y manejo: €5,90 Total: €59.168,20 EUR Me pasa exactamente lo mismo con la versión 3.0 de prestashop y la versión del módulo de Paypal 1.6, pero a mí las unidades se me multiplican por 10000 y el precio también, en cambio, el transporte no, se queda en el precio correcto. Supongo que las unidades y el total del producto se pasan con los decimales mal, y el transporte no. Pues he mirado en el módulo paypal y el fichero paypal.php tiene 4 lineas con el formato de las monedas (las marco en negrita):foreach ($products as $key => $product) { $products[$key]['name'] = str_replace('"', '\'', $product['name']); if (isset($product['attributes'])) $products[$key]['attributes'] = str_replace('"', '\'', $product['attributes']); $products[$key]['name'] = htmlentities(utf8_decode($product['name']));$products[$key]['paypalAmount'] = number_format(Tools::convertPrice($product['price_wt'], $currency), 2, '.', ''); } $smarty->assign(array( 'address' => $address, 'country' => new Country(intval($address->id_country)), 'customer' => $customer, 'business' => $business, 'header' => $header, 'currency' => $currency, 'paypalUrl' => $this->getPaypalUrl(), // products + discounts - shipping cost'amount' => number_format(Tools::convertPrice($params['cart']->getOrderTotal(true, 4), $currency), 2, '.', ''), // shipping cost + wrapping'shipping' => number_format(Tools::convertPrice(($params['cart']->getOrderShippingCost() + $params['cart']->getOrderTotal(true, 6)), $currency), 2, '.', ''), 'discounts' => $params['cart']->getDiscounts(), 'products' => $products, // products + discounts + shipping cost'total' => number_format(Tools::convertPrice($params['cart']->getOrderTotal(true, 3), $currency), 2, '.', ''), 'id_cart' => intval($params['cart']->id), 'goBackUrl' => 'http://'.htmlspecialchars($_SERVER['HTTP_HOST'], ENT_COMPAT, 'UTF-8').__PS_BASE_URI__.'order-confirmation.php?key='.$customer->secure_key.'&id;_cart='.intval($params['cart']->id).'&id;_module='.intval($this->id), 'notify' => 'http://'.htmlspecialchars($_SERVER['HTTP_HOST'], ENT_COMPAT, 'UTF-8').__PS_BASE_URI__.'modules/paypal/validation.php', 'cancelUrl' => 'http://'.htmlspecialchars($_SERVER['HTTP_HOST'], ENT_COMPAT, 'UTF-8').__PS_BASE_URI__.'index.php', 'this_path' => $this->_path )); return $this->display(__FILE__, 'paypal.tpl'); }Si cambio el '.' por ',', al pasarlo a la página de PayPal responde que el formato de moneda que se ha pasado es incorrecto.¿Qué es lo que hay que modificar entonces para pasarle el formato correcto a PayPal?Gracias a todos,NZB Link to comment Share on other sites More sharing options...
nanozombi Posted June 30, 2010 Author Share Posted June 30, 2010 Ya está solucionado. Simplemente creé una nueva web, borré el módulo PayPal de la web antigua y copié el módulo de la nueva y ha ido perfecto. Link to comment Share on other sites More sharing options...
Recommended Posts