Fix test if qualified for stock change at wrong place
This commit is contained in:
parent
3c1b860da4
commit
827a2e1809
@ -518,20 +518,23 @@ if (empty($reshook))
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$qualified_for_stock_change = 0;
|
|
||||||
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
|
||||||
} else {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check for warehouse
|
// Check for warehouse
|
||||||
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change)
|
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL))
|
||||||
{
|
{
|
||||||
if (! $idwarehouse || $idwarehouse == - 1) {
|
$qualified_for_stock_change = 0;
|
||||||
$error++;
|
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
||||||
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Warehouse")), null, 'errors');
|
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
||||||
$action = '';
|
} else {
|
||||||
|
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($qualified_for_stock_change)
|
||||||
|
{
|
||||||
|
if (! $idwarehouse || $idwarehouse == - 1) {
|
||||||
|
$error++;
|
||||||
|
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Warehouse")), null, 'errors');
|
||||||
|
$action = '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -575,20 +578,23 @@ if (empty($reshook))
|
|||||||
$object->fetch($id);
|
$object->fetch($id);
|
||||||
$object->fetch_thirdparty();
|
$object->fetch_thirdparty();
|
||||||
|
|
||||||
$qualified_for_stock_change = 0;
|
|
||||||
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
|
||||||
} else {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check parameters
|
// Check parameters
|
||||||
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change)
|
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL))
|
||||||
{
|
{
|
||||||
if (! $idwarehouse || $idwarehouse == - 1) {
|
$qualified_for_stock_change = 0;
|
||||||
$error++;
|
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
||||||
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Warehouse")), null, 'errors');
|
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
||||||
$action = '';
|
} else {
|
||||||
|
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($qualified_for_stock_change))
|
||||||
|
{
|
||||||
|
if (! $idwarehouse || $idwarehouse == - 1) {
|
||||||
|
$error++;
|
||||||
|
setEventMessages($langs->trans('ErrorFieldRequired', $langs->transnoentitiesnoconv("Warehouse")), null, 'errors');
|
||||||
|
$action = '';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3426,28 +3432,35 @@ elseif ($id > 0 || ! empty($ref))
|
|||||||
$text = $langs->trans('ConfirmDeleteBill', $object->ref);
|
$text = $langs->trans('ConfirmDeleteBill', $object->ref);
|
||||||
$formquestion = array();
|
$formquestion = array();
|
||||||
|
|
||||||
$qualified_for_stock_change = 0;
|
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $object->statut >= 1)
|
||||||
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
|
||||||
} else {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change && $object->statut >= 1)
|
|
||||||
{
|
{
|
||||||
$langs->load("stocks");
|
$qualified_for_stock_change = 0;
|
||||||
require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
|
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
||||||
$formproduct = new FormProduct($db);
|
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
||||||
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("SelectWarehouseForStockDecrease") : $langs->trans("SelectWarehouseForStockIncrease");
|
} else {
|
||||||
$forcecombo=0;
|
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
||||||
if ($conf->browser->name == 'ie') $forcecombo = 1; // There is a bug in IE10 that make combo inside popup crazy
|
}
|
||||||
$formquestion = array(
|
|
||||||
// 'text' => $langs->trans("ConfirmClone"),
|
if ($qualified_for_stock_change)
|
||||||
// array('type' => 'checkbox', 'name' => 'clone_content', 'label' => $langs->trans("CloneMainAttributes"), 'value' => 1),
|
{
|
||||||
// array('type' => 'checkbox', 'name' => 'update_prices', 'label' => $langs->trans("PuttingPricesUpToDate"), 'value' => 1),
|
$langs->load("stocks");
|
||||||
array('type' => 'other','name' => 'idwarehouse','label' => $label,'value' => $formproduct->selectWarehouses(GETPOST('idwarehouse')?GETPOST('idwarehouse'):'ifone', 'idwarehouse', '', 1, 0, 0, $langs->trans("NoStockAction"), 0, $forcecombo))
|
require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
|
||||||
);
|
$formproduct = new FormProduct($db);
|
||||||
$formconfirm = $form->formconfirm($_SERVER['PHP_SELF'] . '?facid=' . $object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', $formquestion, "yes", 1);
|
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("SelectWarehouseForStockDecrease") : $langs->trans("SelectWarehouseForStockIncrease");
|
||||||
|
$forcecombo=0;
|
||||||
|
if ($conf->browser->name == 'ie') $forcecombo = 1; // There is a bug in IE10 that make combo inside popup crazy
|
||||||
|
$formquestion = array(
|
||||||
|
// 'text' => $langs->trans("ConfirmClone"),
|
||||||
|
// array('type' => 'checkbox', 'name' => 'clone_content', 'label' => $langs->trans("CloneMainAttributes"), 'value' => 1),
|
||||||
|
// array('type' => 'checkbox', 'name' => 'update_prices', 'label' => $langs->trans("PuttingPricesUpToDate"), 'value' => 1),
|
||||||
|
array('type' => 'other','name' => 'idwarehouse','label' => $label,'value' => $formproduct->selectWarehouses(GETPOST('idwarehouse')?GETPOST('idwarehouse'):'ifone', 'idwarehouse', '', 1, 0, 0, $langs->trans("NoStockAction"), 0, $forcecombo))
|
||||||
|
);
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER['PHP_SELF'] . '?facid=' . $object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', $formquestion, "yes", 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER['PHP_SELF'] . '?facid=' . $object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', '', 'no', 1);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
$formconfirm = $form->formconfirm($_SERVER['PHP_SELF'] . '?facid=' . $object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', '', 'no', 1);
|
$formconfirm = $form->formconfirm($_SERVER['PHP_SELF'] . '?facid=' . $object->id, $langs->trans('DeleteBill'), $text, 'confirm_delete', '', 'no', 1);
|
||||||
}
|
}
|
||||||
@ -3496,35 +3509,38 @@ elseif ($id > 0 || ! empty($ref))
|
|||||||
}
|
}
|
||||||
$formquestion = array();
|
$formquestion = array();
|
||||||
|
|
||||||
$qualified_for_stock_change = 0;
|
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL))
|
||||||
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
|
||||||
} else {
|
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change)
|
|
||||||
{
|
{
|
||||||
$langs->load("stocks");
|
$qualified_for_stock_change = 0;
|
||||||
require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
|
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
||||||
require_once DOL_DOCUMENT_ROOT . '/product/stock/class/entrepot.class.php';
|
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
||||||
$formproduct = new FormProduct($db);
|
|
||||||
$warehouse = new Entrepot($db);
|
|
||||||
$warehouse_array = $warehouse->list_array();
|
|
||||||
if (count($warehouse_array) == 1) {
|
|
||||||
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("WarehouseForStockIncrease", current($warehouse_array)) : $langs->trans("WarehouseForStockDecrease", current($warehouse_array));
|
|
||||||
$value = '<input type="hidden" id="idwarehouse" name="idwarehouse" value="' . key($warehouse_array) . '">';
|
|
||||||
} else {
|
} else {
|
||||||
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("SelectWarehouseForStockIncrease") : $langs->trans("SelectWarehouseForStockDecrease");
|
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
||||||
$value = $formproduct->selectWarehouses(GETPOST('idwarehouse')?GETPOST('idwarehouse'):'ifone', 'idwarehouse', '', 1);
|
}
|
||||||
|
|
||||||
|
if ($qualified_for_stock_change)
|
||||||
|
{
|
||||||
|
$langs->load("stocks");
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/product/stock/class/entrepot.class.php';
|
||||||
|
$formproduct = new FormProduct($db);
|
||||||
|
$warehouse = new Entrepot($db);
|
||||||
|
$warehouse_array = $warehouse->list_array();
|
||||||
|
if (count($warehouse_array) == 1) {
|
||||||
|
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("WarehouseForStockIncrease", current($warehouse_array)) : $langs->trans("WarehouseForStockDecrease", current($warehouse_array));
|
||||||
|
$value = '<input type="hidden" id="idwarehouse" name="idwarehouse" value="' . key($warehouse_array) . '">';
|
||||||
|
} else {
|
||||||
|
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("SelectWarehouseForStockIncrease") : $langs->trans("SelectWarehouseForStockDecrease");
|
||||||
|
$value = $formproduct->selectWarehouses(GETPOST('idwarehouse')?GETPOST('idwarehouse'):'ifone', 'idwarehouse', '', 1);
|
||||||
|
}
|
||||||
|
$formquestion = array(
|
||||||
|
// 'text' => $langs->trans("ConfirmClone"),
|
||||||
|
// array('type' => 'checkbox', 'name' => 'clone_content', 'label' => $langs->trans("CloneMainAttributes"), 'value' =>
|
||||||
|
// 1),
|
||||||
|
// array('type' => 'checkbox', 'name' => 'update_prices', 'label' => $langs->trans("PuttingPricesUpToDate"), 'value'
|
||||||
|
// => 1),
|
||||||
|
array('type' => 'other','name' => 'idwarehouse','label' => $label,'value' => $value));
|
||||||
}
|
}
|
||||||
$formquestion = array(
|
|
||||||
// 'text' => $langs->trans("ConfirmClone"),
|
|
||||||
// array('type' => 'checkbox', 'name' => 'clone_content', 'label' => $langs->trans("CloneMainAttributes"), 'value' =>
|
|
||||||
// 1),
|
|
||||||
// array('type' => 'checkbox', 'name' => 'update_prices', 'label' => $langs->trans("PuttingPricesUpToDate"), 'value'
|
|
||||||
// => 1),
|
|
||||||
array('type' => 'other','name' => 'idwarehouse','label' => $label,'value' => $value));
|
|
||||||
}
|
}
|
||||||
if ($object->type != Facture::TYPE_CREDIT_NOTE && $object->total_ttc < 0) // Can happen only if $conf->global->FACTURE_ENABLE_NEGATIVE is on
|
if ($object->type != Facture::TYPE_CREDIT_NOTE && $object->total_ttc < 0) // Can happen only if $conf->global->FACTURE_ENABLE_NEGATIVE is on
|
||||||
{
|
{
|
||||||
@ -3538,33 +3554,38 @@ elseif ($id > 0 || ! empty($ref))
|
|||||||
$text = $langs->trans('ConfirmUnvalidateBill', $object->ref);
|
$text = $langs->trans('ConfirmUnvalidateBill', $object->ref);
|
||||||
$formquestion = array();
|
$formquestion = array();
|
||||||
|
|
||||||
$qualified_for_stock_change = 0;
|
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL))
|
||||||
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
{
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
$qualified_for_stock_change = 0;
|
||||||
} else {
|
if (empty($conf->global->STOCK_SUPPORTS_SERVICES)) {
|
||||||
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
$qualified_for_stock_change = $object->hasProductsOrServices(2);
|
||||||
}
|
|
||||||
if ($object->type != Facture::TYPE_DEPOSIT && ! empty($conf->global->STOCK_CALCULATE_ON_BILL) && $qualified_for_stock_change) {
|
|
||||||
$langs->load("stocks");
|
|
||||||
require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
|
|
||||||
require_once DOL_DOCUMENT_ROOT . '/product/stock/class/entrepot.class.php';
|
|
||||||
$formproduct = new FormProduct($db);
|
|
||||||
$warehouse = new Entrepot($db);
|
|
||||||
$warehouse_array = $warehouse->list_array();
|
|
||||||
if (count($warehouse_array) == 1) {
|
|
||||||
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("WarehouseForStockDecrease", current($warehouse_array)) : $langs->trans("WarehouseForStockIncrease", current($warehouse_array));
|
|
||||||
$value = '<input type="hidden" id="idwarehouse" name="idwarehouse" value="' . key($warehouse_array) . '">';
|
|
||||||
} else {
|
} else {
|
||||||
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("SelectWarehouseForStockDecrease") : $langs->trans("SelectWarehouseForStockIncrease");
|
$qualified_for_stock_change = $object->hasProductsOrServices(1);
|
||||||
$value = $formproduct->selectWarehouses(GETPOST('idwarehouse')?GETPOST('idwarehouse'):'ifone', 'idwarehouse', '', 1);
|
}
|
||||||
|
|
||||||
|
if ($qualified_for_stock_change)
|
||||||
|
{
|
||||||
|
$langs->load("stocks");
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/product/class/html.formproduct.class.php';
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/product/stock/class/entrepot.class.php';
|
||||||
|
$formproduct = new FormProduct($db);
|
||||||
|
$warehouse = new Entrepot($db);
|
||||||
|
$warehouse_array = $warehouse->list_array();
|
||||||
|
if (count($warehouse_array) == 1) {
|
||||||
|
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("WarehouseForStockDecrease", current($warehouse_array)) : $langs->trans("WarehouseForStockIncrease", current($warehouse_array));
|
||||||
|
$value = '<input type="hidden" id="idwarehouse" name="idwarehouse" value="' . key($warehouse_array) . '">';
|
||||||
|
} else {
|
||||||
|
$label = $object->type == Facture::TYPE_CREDIT_NOTE ? $langs->trans("SelectWarehouseForStockDecrease") : $langs->trans("SelectWarehouseForStockIncrease");
|
||||||
|
$value = $formproduct->selectWarehouses(GETPOST('idwarehouse')?GETPOST('idwarehouse'):'ifone', 'idwarehouse', '', 1);
|
||||||
|
}
|
||||||
|
$formquestion = array(
|
||||||
|
// 'text' => $langs->trans("ConfirmClone"),
|
||||||
|
// array('type' => 'checkbox', 'name' => 'clone_content', 'label' => $langs->trans("CloneMainAttributes"), 'value' =>
|
||||||
|
// 1),
|
||||||
|
// array('type' => 'checkbox', 'name' => 'update_prices', 'label' => $langs->trans("PuttingPricesUpToDate"), 'value'
|
||||||
|
// => 1),
|
||||||
|
array('type' => 'other','name' => 'idwarehouse','label' => $label,'value' => $value));
|
||||||
}
|
}
|
||||||
$formquestion = array(
|
|
||||||
// 'text' => $langs->trans("ConfirmClone"),
|
|
||||||
// array('type' => 'checkbox', 'name' => 'clone_content', 'label' => $langs->trans("CloneMainAttributes"), 'value' =>
|
|
||||||
// 1),
|
|
||||||
// array('type' => 'checkbox', 'name' => 'update_prices', 'label' => $langs->trans("PuttingPricesUpToDate"), 'value'
|
|
||||||
// => 1),
|
|
||||||
array('type' => 'other','name' => 'idwarehouse','label' => $label,'value' => $value));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?facid=' . $object->id, $langs->trans('UnvalidateBill'), $text, 'confirm_modif', $formquestion, "yes", 1);
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"] . '?facid=' . $object->id, $langs->trans('UnvalidateBill'), $text, 'confirm_modif', $formquestion, "yes", 1);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user