Buenas días, me estoy volviendo loco y no lo encuentro. Necesito modificar VirtueMart para poder trabaja con unidades decimales, para vender por kilos. Ya he modificado la bbdd y esta ok, una vez hecho el pedido puedo ponerle decimales, pero no encuentro dnd hace la validación al pasar de la hoja del producto al carro y siempre me los trunca.... y no he conseguido encontrar si lo hace por js o en alguna de las hojas php.
GRACIAS.
URL del sitio: http://ofertasgti.com
Hola,
No te recomiendo en absoluto hacer cambios en el código para poder trabajar con decimales ya que muy probablemente te producirá errores inesperados en otras partes de la web y tengas problemas. Además, puesto que estos cambios se aplicarán en el núcleo de Virtuemart, cuando salga una actualización también tendrás que parchearla.
En el caso de que quieras vender por Kilos, te recomiendo que utilices gramos, de forma que 1000 unidades representen el Kilo.
Buff... eso ya se lo he planteado a mi cliente y no esta de acuerdo. En VirtueMart 1 solo eran un par de cambios en la hoja php y un campo en la bbdd. Pero ahora parece q la validaciópn la hcen por JS y no consigo dar con ella....
Gracias.
Hola,
He buscado en el foro de Virtuemart pero no he encontrado demasiada información referente a este tema. Casi todo lo que hay se refiere a Virtuemart 1.1.
Es posible que el problema que tienes se puede arreglar cambiando el sistema que se utiliza para añadir los productos al carro, de forma que al pulsar en el botón de añadir al carro en lugar de salir el popup con la información se vaya directo al carro de compra.
Para hacer esto deberás ir a la administración de Virtuemart y entrar en el apartado Configuración. Vete a la pestaña Compra y desactiva el parámetro Display modal popup upon 'Add to cart' . Ahora comprueba si así se soluciona el problema.
Hola, acabo de probar como me has indicado a quitar el popUp y el comportamiento es exactamente el mismo, yo creo q el problema no esta en la hoja del producto si no en el mismo carro pq si pruebas a meter un número decimal en el propio carro y actualizas elimina los decimales...
Gracias, seguirmos probando hasta dar con la solución, pq una vez documentada aunque tengas una actualización del componente no cuesta demasiado volver a implementar los cambios.
Hola,
Te recomiendo que revises el archivo componentscom_virtuemarthelperscart.php ya que es posible que sea aquí donde se coja el valor de la cantidad añadida.
En concreto hay línea como la 356 con el código
$quantityPost = (int) $post['quantity'][$p_key];
donde habría que quitarle el (int) para evitar que convierta la cantidad a entero, quedando así:
$quantityPost = $post['quantity'][$p_key];
También supongo que habrá que hacer cambios en la línea 463 para cambiar
$quantity = JRequest::getInt('quantity');
por
$quantity = JRequest::getFloat('quantity');
En cualquier caso, ignoro si con estos cambios serán suficiente y si este es el único archivo implicado en el tema de las cantidades.
Te sugiero que plantees el tema en el foro oficial de Virtuemart.
Muchas gracias!!! Luego pruebo lo q me sugieres.
Tambien he planteado el tema en dicho foro, pero tardan mucho mas en contestar q vosotros.
De todas maneras, conocéis alguno otro modulo distinto a VirtueMart q contemple trabajar con unidades decimales para la cantidad del prodcuto.
Gracias.
Hola,
He realizado un búsqueda por las extensiones disponibles para Virtuemart 2 y no veo ninguna que sirva para esto, lo que no significa necesariamente que exista, aunque la verdad es que lo dudo bastante.
Gracias de todos modos, probaré con lo q me has indicado antes y publicaré aqui la solución q le de al problema pq supongo q habrá mas gente q les pueda interesar.
Salu2.
Hola, Ángel.
Estoy muy interesado en saber cómo solucionaste el problema de proporcionar cantidades con decimales. ¿Podrías contarme algo?
Gracias!
Hola, al final me hice mi propia extensión pq no encontré una forma sencilla de poder hacer lo q necesitaba. Tengo pendiente colgar esa y otras extensiones en mi sitio qliofactory.com pero todavía no he tenido tiempo.
Salu2.
Muy bien, Ángel.
Supongo que habrás trabajado ya con ella y te habrá ido bien, ¿no?
Te animo a que compartas esa extensión, ¡yo sería el primero en utilizarla! Y te estaría muy agradecido.
Ya me dices algo. Gracias!