diff --git a/htdocs/mrp/mo_production.php b/htdocs/mrp/mo_production.php
index f6aba7f2597..65019337b64 100644
--- a/htdocs/mrp/mo_production.php
+++ b/htdocs/mrp/mo_production.php
@@ -39,7 +39,7 @@ dol_include_once('/mrp/lib/mrp_mo.lib.php');
// Load translation files required by the page
$langs->loadLangs(array("mrp", "stocks", "other", "product", "productbatch"));
-
+$newToken = function_exists('newToken') ? newToken() : $_SESSION['newtoken'];
// Get parameters
$id = GETPOST('id', 'int');
$ref = GETPOST('ref', 'alpha');
@@ -257,6 +257,7 @@ if (empty($reshook)) {
// Process line to produce
$pos = 0;
+
foreach ($object->lines as $line) {
if ($line->role == 'toproduce') {
$tmpproduct = new Product($db);
@@ -588,7 +589,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
if ($object->status == $object::STATUS_DRAFT) {
if ($permissiontoadd) {
if (empty($object->table_element_line) || (is_array($object->lines) && count($object->lines) > 0)) {
- print ''.$langs->trans("Validate").'';
+ print ''.$langs->trans("Validate").'';
} else {
$langs->load("errors");
print ''.$langs->trans("Validate").'';
@@ -599,7 +600,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// Consume or produce
if ($object->status == Mo::STATUS_VALIDATED || $object->status == Mo::STATUS_INPROGRESS) {
if ($permissiontoproduce) {
- print 'id.'&action=consumeorproduce">'.$langs->trans('ConsumeOrProduce').'';
+ print 'id.'&action=consumeorproduce&token='.$newToken.'">'.$langs->trans('ConsumeOrProduce').'';
} else {
print ''.$langs->trans('ConsumeOrProduce').'';
}
@@ -610,7 +611,7 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
// ConsumeAndProduceAll
if ($object->status == Mo::STATUS_VALIDATED || $object->status == Mo::STATUS_INPROGRESS) {
if ($permissiontoproduce) {
- print 'id.'&action=consumeandproduceall">'.$langs->trans('ConsumeAndProduceAll').'';
+ print 'id.'&action=consumeandproduceall&token='.$newToken.'">'.$langs->trans('ConsumeAndProduceAll').'';
} else {
print ''.$langs->trans('ConsumeAndProduceAll').'';
}
@@ -627,21 +628,21 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
$nbProduced += $lineproduced['qty'];
}
if ($nbProduced > 0) { // If production has started, we can close it
- print 'id.'&action=confirm_produced&confirm=yes">'.$langs->trans("Close").''."\n";
+ print 'id.'&action=confirm_produced&confirm=yes&token='.$newToken.'">'.$langs->trans("Close").''."\n";
} else {
print 'transnoentitiesnoconv("Production")).'">'.$langs->trans("Close").''."\n";
}
- print 'id.'&action=confirm_close&confirm=yes">'.$langs->trans("Cancel").''."\n";
+ print 'id.'&action=confirm_close&confirm=yes&token='.$newToken.'">'.$langs->trans("Cancel").''."\n";
}
if ($object->status == $object::STATUS_CANCELED) {
- print 'id.'&action=confirm_reopen&confirm=yes">'.$langs->trans("Re-Open").''."\n";
+ print 'id.'&action=confirm_reopen&confirm=yes&token='.$newToken.'">'.$langs->trans("Re-Open").''."\n";
}
if ($object->status == $object::STATUS_PRODUCED) {
if ($permissiontoproduce) {
- print 'id.'&action=confirm_reopen">'.$langs->trans('ReOpen').'';
+ print 'id.'&action=confirm_reopen&token='.$newToken.'">'.$langs->trans('ReOpen').'';
} else {
print ''.$langs->trans('ReOpen').'';
}