Jak odstranit automatický status „vyprodáno – outofstock“ v prestashopu verze 1.5.x?
Pokud povolíte řízení skladu a u některého zboží máte uvedeno 0, automaticky při jeho objednání se nastaví status zákazníkovi – vyprodáno.
Zakázání emailu, aby nechodil zvládne každý v administraci, nicméně status se automaticky zobrazil.
Pátral jsem jak tomu zabránit.
Soubor, který provádí funkci je classes/PaymentModule.php, doporučuji ho stáhnout a upravit kde je zakomentováno // Switch to back order if needed
if (Configuration::get('PS_STOCK_MANAGEMENT') && $order_detail->getStockState())
{
$history = new OrderHistory();
$history->id_order = (int)$order->id;
$history->changeIdOrderState(Configuration::get('PS_OS_OUTOFSTOCK'), $order, true);
$history->addWithemail();
}
Zakomentujte, nebo odstraňte tyto řádky, které automaticky přidá a zašle případně email „outofstock“
Soubor upravený uložte a nahrajte do složky override/classes/
Vhodné informace!
1) v configuračním souboru jsem zjistil, že všechny stavy objednávek jsou přidělené z config souboru do tabulky ps_configuration v databázi
define('_PS_OS_CHEQUE_', Configuration::get('PS_OS_CHEQUE'));
define('_PS_OS_PAYMENT_', Configuration::get('PS_OS_PAYMENT'));
define('_PS_OS_PREPARATION_', Configuration::get('PS_OS_PREPARATION'));
define('_PS_OS_SHIPPING_', Configuration::get('PS_OS_SHIPPING'));
define('_PS_OS_DELIVERED_', Configuration::get('PS_OS_DELIVERED'));
define('_PS_OS_CANCELED_', Configuration::get('PS_OS_CANCELED'));
define('_PS_OS_REFUND_', Configuration::get('PS_OS_REFUND'));
define('_PS_OS_ERROR_', Configuration::get('PS_OS_ERROR'));
define('_PS_OS_OUTOFSTOCK_', Configuration::get('PS_OS_OUTOFSTOCK'));
define('_PS_OS_BANKWIRE_', Configuration::get('PS_OS_BANKWIRE'));
define('_PS_OS_PAYPAL_', Configuration::get('PS_OS_PAYPAL'));
define('_PS_OS_WS_PAYMENT_', Configuration::get('PS_OS_WS_PAYMENT'));
2) v databázi v tabulce ps_configuration jsou skutečně přidělené id statusů, tzn např. ‚PS_OS_OUTOFSTOCK má ID 9.
Takže pokud budete potřebovat nastavit jiné id, aby systém věděl co má při objednávce dělat, nyní již víte kde hledat.

2 komentáře u Jak odstranit automatický status „vyprodáno – outofstock“ v PS 1.5?