Jump to content

Caducidad de carrito


Carlostlr

Recommended Posts

Buenas a todos y gracias de antemano.

Estoy creando una tienda online y quiero que al añadir un articulo al carrito empiece un contador de 15 minutos, tiempo en el cual no cambiará el precio y ademas tendremos reservado el numero de artículos añadidos, al pasar los 15 minutos debe de liberarse, he pensado en realizar esto guardando los datos en una cookie que nada mas crearla caduque en ese tiempo, el problema es como hago para que se descuente el numero de artículos del stock para evitar que otros compradores se lo lleven?.

Un saludo.

Link to comment
Share on other sites

lo mejor sera que desarrolles un modulo, que al añadir el producto de una lista genere la cookie, reste del stock la cantidad añadida, en java que compruebe cada X tiempo si ha pasado el tiempo, y que elimine del carrito y recupere el stock cuando pase el tiempo.

no hay otra forma de hacerlo y de tener el control sobre ello.

 

Link to comment
Share on other sites

Eso mismo había pensado, de que al añadirlo al carrito descontarlo del stock y si caduca la cookie antes de confirmarlo vuelva a añadirse al stock, el problema es, que si la persona crea un carrito, se le reserva el stock y sale de la pagina y no vuelve a entrar a la misma nunca mas, la cookie caducará en el navegador pero al no estar en la página no se añadirá al stock y creará descuadres en el stock.

Link to comment
Share on other sites

añade una tabla, con el id del producto,stock y fecha de la cookie, id del carrito, incluso un id_customer si lo tuviera, 

Añade a esta los datos del producto y usa algún hook de producto para comprobar esa tabla, al entrar otro cliente en ese producto que compruebe la  fecha y hora y que lo restaure si ha pasado el tiempo

Si ademas detecta el Id de customer, podria avisar cuando volviera diciendo algo asi "has vuelto demasiado tarde, el producto XX no lo tienes reservado"

 

 

Edited by gusman126 (see edit history)
  • Thanks 1
Link to comment
Share on other sites

Muchas gracias por tu ayuda, en vez de usar cookies, crearé una tabla en el que se añada el hora actual con time() de php sumandole 15 minutos, y que al comprobarlo con la tabla si ha pasado el tiempo borre esa fila y devuelva la cantidad al stock original.

Otra duda que tengo es, yo estoy modificando el front desde los tpl de la plantilla, esto donde tendría que hacerlo? En los tpl del carrito o donde exactamente? Estoy empezando con prestashop y nose todavía muy bien como hacer los modulos o donde hacerlos. Muchas gracias por tu ayuda.

Link to comment
Share on other sites

Comprueba si existe un modulo que lo haga, si no lo hay....

Usa los hook...

actionCartSave -> para controlar el producto añadido

displayShoppingCartFooter -> para mostrar la información en un tpl con el producto.

displayHeader o displayProductTab -> para comprobar el producto y que busque en la tabla

Para empezar a desarrollar un modulo te puede ayudar esta herramienta

https://validator.prestashop.com/generator#

Aqui ayuda de como desarrollar usando hooks 

https://devdocs.prestashop.com/1.7/modules/concepts/hooks/list-of-hooks/

https://devdocs.prestashop.com/1.7/basics/

O pregunta a alguno de los profesionales del foro cuanto podria costar hacer el modulo, ten en cuenta que si es un modulo interesante y NO existe, puede interesarle al desarrollador.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...