Jump to content

Evitar que se actualice un producto en el contexto de ALL_SHOPS


IvanPagan

Recommended Posts

Hola, intento evitar que un producto se guarde en todas las tiendas al actualizar. Tengo 3 tiendas en multitienda y comparten los productos, pero los voy activando uno a uno en cada tienda y asignando a sus categorías individualmente. Cuando estoy en el contexto de TODAS LAS TIENDAS cuando guardo se hace en todas las tiendas, actualizando los campos comunes a todas las tiendas como por ejemplo la descripción, a la vez que el estado ACTIVE.

Hay alguna forma de hacer la comprobación antes de que se guarde? y si está en el contexto de todas las tiendas activado no se guarde, de un error?

Hay algún sitio en la configuración de Prestashop donde se pueda modificar ese comportamiento? cuando estás en modo multitienda en el contexto de todas las tiendas, sale una advertencia indicando que lo que se modifique, se modificará en todas las tiendas, pero me gustaría que en vez de avisar, no permita que se guarde...

Espero haberme explicado, suelo encontrar la respuesta a todos mis preguntas en este y otros foros, pero llevo tiempo intentando encontrar la solución y estoy en un callejón sin salida, he probado a crear los hooks actionproductsave y update pero claro, estos son llamados después de ser guardado.

 

Muchas Gracias !

 

Link to comment
Share on other sites

En el archivo controllers/admin/AdminProductsController.php al inicio del método init o initProcess (en caso de que solo quieras que aparezca el mensaje cuando se ejecuta alguna acción como guardado, eliminación, edición, etc) debes poner un código similar a este:

if (Shop::getContext() != Shop::CONTEXT_SHOP) {
	$this->errors[] = $this->trans('You must select an specific shop before continue', array(), 'Admin.Notifications.Error');
}

Básicamente lo que hace el código es verificar que el contexto sea de una sola tienda, en caso contrario debería aparecer siempre un error que no te permita guardar los cambios. Puedes modificarlo libremente a tu conveniencia.

Suerte!!

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...