Trans
This commit is contained in:
parent
52267efb99
commit
99f26b49b7
@ -275,303 +275,303 @@ if (empty($reshook)) {
|
|||||||
$object->calculateCosts();
|
$object->calculateCosts();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* View
|
||||||
|
*/
|
||||||
|
|
||||||
/*
|
$form = new Form($db);
|
||||||
* View
|
$formfile = new FormFile($db);
|
||||||
*/
|
|
||||||
|
|
||||||
$form = new Form($db);
|
|
||||||
$formfile = new FormFile($db);
|
|
||||||
|
|
||||||
|
|
||||||
$title = $langs->trans('BOM');
|
$title = $langs->trans('BOM');
|
||||||
$help_url ='EN:Module_BOM';
|
$help_url ='EN:Module_BOM';
|
||||||
llxHeader('', $title, $help_url);
|
llxHeader('', $title, $help_url);
|
||||||
|
|
||||||
// Part to create
|
// Part to create
|
||||||
if ($action == 'create') {
|
if ($action == 'create') {
|
||||||
print load_fiche_titre($langs->trans("NewBOM"), '', 'bom');
|
print load_fiche_titre($langs->trans("NewBOM"), '', 'bom');
|
||||||
|
|
||||||
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">';
|
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">';
|
||||||
print '<input type="hidden" name="token" value="'.newToken().'">';
|
print '<input type="hidden" name="token" value="'.newToken().'">';
|
||||||
print '<input type="hidden" name="action" value="add">';
|
print '<input type="hidden" name="action" value="add">';
|
||||||
print '<input type="hidden" name="backtopage" value="'.$backtopage.'">';
|
print '<input type="hidden" name="backtopage" value="'.$backtopage.'">';
|
||||||
|
|
||||||
print dol_get_fiche_head(array(), '');
|
print dol_get_fiche_head(array(), '');
|
||||||
|
|
||||||
print '<table class="border centpercent tableforfieldcreate">'."\n";
|
print '<table class="border centpercent tableforfieldcreate">'."\n";
|
||||||
|
|
||||||
// Common attributes
|
// Common attributes
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_add.tpl.php';
|
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_add.tpl.php';
|
||||||
|
|
||||||
// Other attributes
|
// Other attributes
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_add.tpl.php';
|
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_add.tpl.php';
|
||||||
|
|
||||||
print '</table>'."\n";
|
print '</table>'."\n";
|
||||||
|
|
||||||
print dol_get_fiche_end();
|
print dol_get_fiche_end();
|
||||||
|
|
||||||
print $form->buttonsSaveCancel("Create");
|
print $form->buttonsSaveCancel("Create");
|
||||||
|
|
||||||
print '</form>';
|
print '</form>';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Part to edit record
|
||||||
|
if (($id || $ref) && $action == 'edit') {
|
||||||
|
print load_fiche_titre($langs->trans("BillOfMaterials"), '', 'cubes');
|
||||||
|
|
||||||
|
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">';
|
||||||
|
print '<input type="hidden" name="token" value="'.newToken().'">';
|
||||||
|
print '<input type="hidden" name="action" value="update">';
|
||||||
|
print '<input type="hidden" name="backtopage" value="'.$backtopage.'">';
|
||||||
|
print '<input type="hidden" name="id" value="'.$object->id.'">';
|
||||||
|
|
||||||
|
print dol_get_fiche_head();
|
||||||
|
|
||||||
|
//$object->fields['keyfield']['disabled'] = 1;
|
||||||
|
|
||||||
|
print '<table class="border centpercent tableforfieldedit">'."\n";
|
||||||
|
|
||||||
|
// Common attributes
|
||||||
|
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_edit.tpl.php';
|
||||||
|
|
||||||
|
// Other attributes
|
||||||
|
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_edit.tpl.php';
|
||||||
|
|
||||||
|
print '</table>';
|
||||||
|
|
||||||
|
print dol_get_fiche_end();
|
||||||
|
|
||||||
|
print $form->buttonsSaveCancel("Create");
|
||||||
|
|
||||||
|
print '</form>';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Part to show record
|
||||||
|
if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'create'))) {
|
||||||
|
$head = bomPrepareHead($object);
|
||||||
|
print dol_get_fiche_head($head, 'card', $langs->trans("BillOfMaterials"), -1, 'bom');
|
||||||
|
|
||||||
|
$formconfirm = '';
|
||||||
|
|
||||||
|
// Confirmation to delete
|
||||||
|
if ($action == 'delete') {
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('DeleteBillOfMaterials'), $langs->trans('ConfirmDeleteBillOfMaterials'), 'confirm_delete', '', 0, 1);
|
||||||
|
}
|
||||||
|
// Confirmation to delete line
|
||||||
|
if ($action == 'deleteline') {
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&lineid='.$lineid, $langs->trans('DeleteLine'), $langs->trans('ConfirmDeleteLine'), 'confirm_deleteline', '', 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Part to edit record
|
// Confirmation of validation
|
||||||
if (($id || $ref) && $action == 'edit') {
|
if ($action == 'validate') {
|
||||||
print load_fiche_titre($langs->trans("BillOfMaterials"), '', 'cubes');
|
// We check that object has a temporary ref
|
||||||
|
$ref = substr($object->ref, 1, 4);
|
||||||
print '<form method="POST" action="'.$_SERVER["PHP_SELF"].'">';
|
if ($ref == 'PROV') {
|
||||||
print '<input type="hidden" name="token" value="'.newToken().'">';
|
$object->fetch_product();
|
||||||
print '<input type="hidden" name="action" value="update">';
|
$numref = $object->getNextNumRef($object->product);
|
||||||
print '<input type="hidden" name="backtopage" value="'.$backtopage.'">';
|
|
||||||
print '<input type="hidden" name="id" value="'.$object->id.'">';
|
|
||||||
|
|
||||||
print dol_get_fiche_head();
|
|
||||||
|
|
||||||
//$object->fields['keyfield']['disabled'] = 1;
|
|
||||||
|
|
||||||
print '<table class="border centpercent tableforfieldedit">'."\n";
|
|
||||||
|
|
||||||
// Common attributes
|
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_edit.tpl.php';
|
|
||||||
|
|
||||||
// Other attributes
|
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_edit.tpl.php';
|
|
||||||
|
|
||||||
print '</table>';
|
|
||||||
|
|
||||||
print dol_get_fiche_end();
|
|
||||||
|
|
||||||
print $form->buttonsSaveCancel("Create");
|
|
||||||
|
|
||||||
print '</form>';
|
|
||||||
}
|
|
||||||
|
|
||||||
// Part to show record
|
|
||||||
if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'create'))) {
|
|
||||||
$head = bomPrepareHead($object);
|
|
||||||
print dol_get_fiche_head($head, 'card', $langs->trans("BillOfMaterials"), -1, 'bom');
|
|
||||||
|
|
||||||
$formconfirm = '';
|
|
||||||
|
|
||||||
// Confirmation to delete
|
|
||||||
if ($action == 'delete') {
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('DeleteBillOfMaterials'), $langs->trans('ConfirmDeleteBillOfMaterials'), 'confirm_delete', '', 0, 1);
|
|
||||||
}
|
|
||||||
// Confirmation to delete line
|
|
||||||
if ($action == 'deleteline') {
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id.'&lineid='.$lineid, $langs->trans('DeleteLine'), $langs->trans('ConfirmDeleteLine'), 'confirm_deleteline', '', 0, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Confirmation of validation
|
|
||||||
if ($action == 'validate') {
|
|
||||||
// We check that object has a temporary ref
|
|
||||||
$ref = substr($object->ref, 1, 4);
|
|
||||||
if ($ref == 'PROV') {
|
|
||||||
$object->fetch_product();
|
|
||||||
$numref = $object->getNextNumRef($object->product);
|
|
||||||
} else {
|
|
||||||
$numref = $object->ref;
|
|
||||||
}
|
|
||||||
|
|
||||||
$text = $langs->trans('ConfirmValidateBom', $numref);
|
|
||||||
/*if (isModEnabled('notification'))
|
|
||||||
{
|
|
||||||
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
|
|
||||||
$notify = new Notify($db);
|
|
||||||
$text .= '<br>';
|
|
||||||
$text .= $notify->confirmMessage('BOM_VALIDATE', $object->socid, $object);
|
|
||||||
}*/
|
|
||||||
|
|
||||||
$formquestion = array();
|
|
||||||
if (isModEnabled('bom')) {
|
|
||||||
$langs->load("mrp");
|
|
||||||
$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),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('Validate'), $text, 'confirm_validate', $formquestion, 0, 1, 220);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Confirmation of closing
|
|
||||||
if ($action == 'close') {
|
|
||||||
$text = $langs->trans('ConfirmCloseBom', $object->ref);
|
|
||||||
/*if (isModEnabled('notification'))
|
|
||||||
{
|
|
||||||
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
|
|
||||||
$notify = new Notify($db);
|
|
||||||
$text .= '<br>';
|
|
||||||
$text .= $notify->confirmMessage('BOM_CLOSE', $object->socid, $object);
|
|
||||||
}*/
|
|
||||||
|
|
||||||
$formquestion = array();
|
|
||||||
if (isModEnabled('bom')) {
|
|
||||||
$langs->load("mrp");
|
|
||||||
$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),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('Close'), $text, 'confirm_close', $formquestion, 0, 1, 220);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Confirmation of reopen
|
|
||||||
if ($action == 'reopen') {
|
|
||||||
$text = $langs->trans('ConfirmReopenBom', $object->ref);
|
|
||||||
/*if (isModEnabled('notification'))
|
|
||||||
{
|
|
||||||
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
|
|
||||||
$notify = new Notify($db);
|
|
||||||
$text .= '<br>';
|
|
||||||
$text .= $notify->confirmMessage('BOM_CLOSE', $object->socid, $object);
|
|
||||||
}*/
|
|
||||||
|
|
||||||
$formquestion = array();
|
|
||||||
if (isModEnabled('bom')) {
|
|
||||||
$langs->load("mrp");
|
|
||||||
require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php';
|
|
||||||
$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),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ReOpen'), $text, 'confirm_reopen', $formquestion, 0, 1, 220);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Clone confirmation
|
|
||||||
if ($action == 'clone') {
|
|
||||||
// Create an array for form
|
|
||||||
$formquestion = array();
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ToClone'), $langs->trans('ConfirmCloneBillOfMaterials', $object->ref), 'confirm_clone', $formquestion, 'yes', 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Confirmation of action xxxx
|
|
||||||
if ($action == 'setdraft') {
|
|
||||||
$text = $langs->trans('ConfirmSetToDraft', $object->ref);
|
|
||||||
|
|
||||||
$formquestion = array();
|
|
||||||
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('SetToDraft'), $text, 'confirm_setdraft', $formquestion, 0, 1, 220);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Call Hook formConfirm
|
|
||||||
$parameters = array('formConfirm' => $formconfirm, 'lineid' => $lineid);
|
|
||||||
$reshook = $hookmanager->executeHooks('formConfirm', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
|
|
||||||
if (empty($reshook)) {
|
|
||||||
$formconfirm .= $hookmanager->resPrint;
|
|
||||||
} elseif ($reshook > 0) {
|
|
||||||
$formconfirm = $hookmanager->resPrint;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Print form confirm
|
|
||||||
print $formconfirm;
|
|
||||||
|
|
||||||
|
|
||||||
// Object card
|
|
||||||
// ------------------------------------------------------------
|
|
||||||
$linkback = '<a href="'.DOL_URL_ROOT.'/bom/bom_list.php?restore_lastsearch_values=1'.(!empty($socid) ? '&socid='.$socid : '').'">'.$langs->trans("BackToList").'</a>';
|
|
||||||
|
|
||||||
$morehtmlref = '<div class="refidno">';
|
|
||||||
/*
|
|
||||||
// Ref bis
|
|
||||||
$morehtmlref.=$form->editfieldkey("RefBis", 'ref_client', $object->ref_client, $object, $user->rights->bom->creer, 'string', '', 0, 1);
|
|
||||||
$morehtmlref.=$form->editfieldval("RefBis", 'ref_client', $object->ref_client, $object, $user->rights->bom->creer, 'string', '', null, null, '', 1);
|
|
||||||
// Thirdparty
|
|
||||||
$morehtmlref.='<br>'.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1);
|
|
||||||
// Project
|
|
||||||
if (isModEnabled('project'))
|
|
||||||
{
|
|
||||||
$langs->load("projects");
|
|
||||||
$morehtmlref.='<br>'.$langs->trans('Project') . ' ';
|
|
||||||
if ($permissiontoadd)
|
|
||||||
{
|
|
||||||
if ($action != 'classify')
|
|
||||||
$morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&token='.newToken().'&id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> : ';
|
|
||||||
if ($action == 'classify') {
|
|
||||||
//$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1);
|
|
||||||
$morehtmlref.='<form method="post" action="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'">';
|
|
||||||
$morehtmlref.='<input type="hidden" name="action" value="classin">';
|
|
||||||
$morehtmlref.='<input type="hidden" name="token" value="'.newToken().'">';
|
|
||||||
$morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', 0, 0, 1, 0, 1, 0, 0, '', 1);
|
|
||||||
$morehtmlref.='<input type="submit" class="button valignmiddle" value="'.$langs->trans("Modify").'">';
|
|
||||||
$morehtmlref.='</form>';
|
|
||||||
} else {
|
|
||||||
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
if (! empty($object->fk_project)) {
|
$numref = $object->ref;
|
||||||
$proj = new Project($db);
|
}
|
||||||
$proj->fetch($object->fk_project);
|
|
||||||
$morehtmlref.=$proj->getNomUrl();
|
$text = $langs->trans('ConfirmValidateBom', $numref);
|
||||||
} else {
|
/*if (isModEnabled('notification'))
|
||||||
$morehtmlref.='';
|
{
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
|
||||||
|
$notify = new Notify($db);
|
||||||
|
$text .= '<br>';
|
||||||
|
$text .= $notify->confirmMessage('BOM_VALIDATE', $object->socid, $object);
|
||||||
|
}*/
|
||||||
|
|
||||||
|
$formquestion = array();
|
||||||
|
if (isModEnabled('bom')) {
|
||||||
|
$langs->load("mrp");
|
||||||
|
$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),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('Validate'), $text, 'confirm_validate', $formquestion, 0, 1, 220);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Confirmation of closing
|
||||||
|
if ($action == 'close') {
|
||||||
|
$text = $langs->trans('ConfirmCloseBom', $object->ref);
|
||||||
|
/*if (isModEnabled('notification'))
|
||||||
|
{
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
|
||||||
|
$notify = new Notify($db);
|
||||||
|
$text .= '<br>';
|
||||||
|
$text .= $notify->confirmMessage('BOM_CLOSE', $object->socid, $object);
|
||||||
|
}*/
|
||||||
|
|
||||||
|
$formquestion = array();
|
||||||
|
if (isModEnabled('bom')) {
|
||||||
|
$langs->load("mrp");
|
||||||
|
$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),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
$morehtmlref .= '</div>';
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('Close'), $text, 'confirm_close', $formquestion, 0, 1, 220);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Confirmation of reopen
|
||||||
|
if ($action == 'reopen') {
|
||||||
|
$text = $langs->trans('ConfirmReopenBom', $object->ref);
|
||||||
|
/*if (isModEnabled('notification'))
|
||||||
|
{
|
||||||
|
require_once DOL_DOCUMENT_ROOT . '/core/class/notify.class.php';
|
||||||
|
$notify = new Notify($db);
|
||||||
|
$text .= '<br>';
|
||||||
|
$text .= $notify->confirmMessage('BOM_CLOSE', $object->socid, $object);
|
||||||
|
}*/
|
||||||
|
|
||||||
|
$formquestion = array();
|
||||||
|
if (isModEnabled('bom')) {
|
||||||
|
$langs->load("mrp");
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/product/class/html.formproduct.class.php';
|
||||||
|
$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),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ReOpen'), $text, 'confirm_reopen', $formquestion, 0, 1, 220);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Clone confirmation
|
||||||
|
if ($action == 'clone') {
|
||||||
|
// Create an array for form
|
||||||
|
$formquestion = array();
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('ToClone'), $langs->trans('ConfirmCloneBillOfMaterials', $object->ref), 'confirm_clone', $formquestion, 'yes', 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Confirmation of action xxxx
|
||||||
|
if ($action == 'setdraft') {
|
||||||
|
$text = $langs->trans('ConfirmSetToDraft', $object->ref);
|
||||||
|
|
||||||
|
$formquestion = array();
|
||||||
|
$formconfirm = $form->formconfirm($_SERVER["PHP_SELF"].'?id='.$object->id, $langs->trans('SetToDraft'), $text, 'confirm_setdraft', $formquestion, 0, 1, 220);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Call Hook formConfirm
|
||||||
|
$parameters = array('formConfirm' => $formconfirm, 'lineid' => $lineid);
|
||||||
|
$reshook = $hookmanager->executeHooks('formConfirm', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
|
||||||
|
if (empty($reshook)) {
|
||||||
|
$formconfirm .= $hookmanager->resPrint;
|
||||||
|
} elseif ($reshook > 0) {
|
||||||
|
$formconfirm = $hookmanager->resPrint;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Print form confirm
|
||||||
|
print $formconfirm;
|
||||||
|
|
||||||
|
|
||||||
dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref);
|
// Object card
|
||||||
|
// ------------------------------------------------------------
|
||||||
|
$linkback = '<a href="'.DOL_URL_ROOT.'/bom/bom_list.php?restore_lastsearch_values=1'.(!empty($socid) ? '&socid='.$socid : '').'">'.$langs->trans("BackToList").'</a>';
|
||||||
|
|
||||||
|
$morehtmlref = '<div class="refidno">';
|
||||||
|
/*
|
||||||
|
// Ref bis
|
||||||
|
$morehtmlref.=$form->editfieldkey("RefBis", 'ref_client', $object->ref_client, $object, $user->rights->bom->creer, 'string', '', 0, 1);
|
||||||
|
$morehtmlref.=$form->editfieldval("RefBis", 'ref_client', $object->ref_client, $object, $user->rights->bom->creer, 'string', '', null, null, '', 1);
|
||||||
|
// Thirdparty
|
||||||
|
$morehtmlref.='<br>'.$langs->trans('ThirdParty') . ' : ' . $soc->getNomUrl(1);
|
||||||
|
// Project
|
||||||
|
if (isModEnabled('project'))
|
||||||
|
{
|
||||||
|
$langs->load("projects");
|
||||||
|
$morehtmlref.='<br>'.$langs->trans('Project') . ' ';
|
||||||
|
if ($permissiontoadd)
|
||||||
|
{
|
||||||
|
if ($action != 'classify')
|
||||||
|
$morehtmlref.='<a class="editfielda" href="' . $_SERVER['PHP_SELF'] . '?action=classify&token='.newToken().'&id=' . $object->id . '">' . img_edit($langs->transnoentitiesnoconv('SetProject')) . '</a> : ';
|
||||||
|
if ($action == 'classify') {
|
||||||
|
//$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'projectid', 0, 0, 1, 1);
|
||||||
|
$morehtmlref.='<form method="post" action="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'">';
|
||||||
|
$morehtmlref.='<input type="hidden" name="action" value="classin">';
|
||||||
|
$morehtmlref.='<input type="hidden" name="token" value="'.newToken().'">';
|
||||||
|
$morehtmlref.=$formproject->select_projects($object->socid, $object->fk_project, 'projectid', 0, 0, 1, 0, 1, 0, 0, '', 1);
|
||||||
|
$morehtmlref.='<input type="submit" class="button valignmiddle" value="'.$langs->trans("Modify").'">';
|
||||||
|
$morehtmlref.='</form>';
|
||||||
|
} else {
|
||||||
|
$morehtmlref.=$form->form_project($_SERVER['PHP_SELF'] . '?id=' . $object->id, $object->socid, $object->fk_project, 'none', 0, 0, 0, 1);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (! empty($object->fk_project)) {
|
||||||
|
$proj = new Project($db);
|
||||||
|
$proj->fetch($object->fk_project);
|
||||||
|
$morehtmlref.=$proj->getNomUrl();
|
||||||
|
} else {
|
||||||
|
$morehtmlref.='';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
$morehtmlref .= '</div>';
|
||||||
|
|
||||||
|
|
||||||
print '<div class="fichecenter">';
|
dol_banner_tab($object, 'ref', $linkback, 1, 'ref', 'ref', $morehtmlref);
|
||||||
print '<div class="fichehalfleft">';
|
|
||||||
print '<div class="underbanner clearboth"></div>';
|
|
||||||
print '<table class="border centpercent tableforfield">'."\n";
|
|
||||||
|
|
||||||
// Common attributes
|
|
||||||
$keyforbreak = 'duration';
|
print '<div class="fichecenter">';
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_view.tpl.php';
|
print '<div class="fichehalfleft">';
|
||||||
|
print '<div class="underbanner clearboth"></div>';
|
||||||
|
print '<table class="border centpercent tableforfield">'."\n";
|
||||||
|
|
||||||
|
// Common attributes
|
||||||
|
$keyforbreak = 'duration';
|
||||||
|
include DOL_DOCUMENT_ROOT.'/core/tpl/commonfields_view.tpl.php';
|
||||||
|
$object->calculateCosts();
|
||||||
|
print '<tr><td>'.$form->textwithpicto($langs->trans("TotalCost"), $langs->trans("BOMTotalCost")).'</td><td><span class="amount">'.price($object->total_cost).'</span></td></tr>';
|
||||||
|
print '<tr><td>'.$langs->trans("UnitCost").'</td><td>'.price($object->unit_cost).'</td></tr>';
|
||||||
|
|
||||||
|
// Other attributes
|
||||||
|
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_view.tpl.php';
|
||||||
|
|
||||||
|
print '</table>';
|
||||||
|
print '</div>';
|
||||||
|
print '</div>';
|
||||||
|
|
||||||
|
print '<div class="clearboth"></div>';
|
||||||
|
|
||||||
|
print dol_get_fiche_end();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Lines
|
||||||
|
*/
|
||||||
|
|
||||||
|
if (!empty($object->table_element_line)) {
|
||||||
|
//Products
|
||||||
|
$res = $object->fetchLinesbytypeproduct(0);
|
||||||
$object->calculateCosts();
|
$object->calculateCosts();
|
||||||
print '<tr><td>'.$form->textwithpicto($langs->trans("TotalCost"), $langs->trans("BOMTotalCost")).'</td><td><span class="amount">'.price($object->total_cost).'</span></td></tr>';
|
|
||||||
print '<tr><td>'.$langs->trans("UnitCost").'</td><td>'.price($object->unit_cost).'</td></tr>';
|
|
||||||
|
|
||||||
// Other attributes
|
print ($res == 0 && $object->status >= $object::STATUS_VALIDATED) ? '' : load_fiche_titre($langs->trans('BOMProductsList'), '', 'product');
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/extrafields_view.tpl.php';
|
|
||||||
|
|
||||||
print '</table>';
|
print ' <form name="addproduct" id="addproduct" action="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . (($action != 'editline') ? '' : '') . '" method="POST">
|
||||||
print '</div>';
|
|
||||||
print '</div>';
|
|
||||||
|
|
||||||
print '<div class="clearboth"></div>';
|
|
||||||
|
|
||||||
print dol_get_fiche_end();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Lines
|
|
||||||
*/
|
|
||||||
|
|
||||||
if (!empty($object->table_element_line)) {
|
|
||||||
//Products
|
|
||||||
$res = $object->fetchLinesbytypeproduct(0);
|
|
||||||
$object->calculateCosts();
|
|
||||||
|
|
||||||
print ($res == 0 && $object->status >= $object::STATUS_VALIDATED) ? '' : load_fiche_titre($langs->trans('BOMProductsList'), '', 'product');
|
|
||||||
|
|
||||||
print ' <form name="addproduct" id="addproduct" action="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . (($action != 'editline') ? '' : '') . '" method="POST">
|
|
||||||
<input type="hidden" name="token" value="' . newToken() . '">
|
<input type="hidden" name="token" value="' . newToken() . '">
|
||||||
<input type="hidden" name="action" value="' . (($action != 'editline') ? 'addline' : 'updateline') . '">
|
<input type="hidden" name="action" value="' . (($action != 'editline') ? 'addline' : 'updateline') . '">
|
||||||
<input type="hidden" name="mode" value="">
|
<input type="hidden" name="mode" value="">
|
||||||
@ -579,78 +579,30 @@ if (empty($reshook)) {
|
|||||||
<input type="hidden" name="id" value="' . $object->id . '">
|
<input type="hidden" name="id" value="' . $object->id . '">
|
||||||
';
|
';
|
||||||
|
|
||||||
if (!empty($conf->use_javascript_ajax) && $object->status == 0) {
|
if (!empty($conf->use_javascript_ajax) && $object->status == 0) {
|
||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/ajaxrow.tpl.php';
|
include DOL_DOCUMENT_ROOT.'/core/tpl/ajaxrow.tpl.php';
|
||||||
}
|
}
|
||||||
|
|
||||||
print '<div class="div-table-responsive-no-min">';
|
print '<div class="div-table-responsive-no-min">';
|
||||||
if (!empty($object->lines) || ($object->status == $object::STATUS_DRAFT && $permissiontoadd && $action != 'selectlines' && $action != 'editline')) {
|
if (!empty($object->lines) || ($object->status == $object::STATUS_DRAFT && $permissiontoadd && $action != 'selectlines' && $action != 'editline')) {
|
||||||
print '<table id="tablelines" class="noborder noshadow" width="100%">';
|
print '<table id="tablelines" class="noborder noshadow centpercent">';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($object->lines)) {
|
if (!empty($object->lines)) {
|
||||||
$object->printObjectLines($action, $mysoc, null, GETPOST('lineid', 'int'), 1, '/bom/tpl');
|
$object->printObjectLines($action, $mysoc, null, GETPOST('lineid', 'int'), 1, '/bom/tpl');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Form to add new line
|
// Form to add new line
|
||||||
if ($object->status == 0 && $permissiontoadd && $action != 'selectlines') {
|
if ($object->status == 0 && $permissiontoadd && $action != 'selectlines') {
|
||||||
if ($action != 'editline') {
|
if ($action != 'editline') {
|
||||||
// Add products/services form
|
// Add products/services form
|
||||||
|
|
||||||
|
|
||||||
$parameters = array();
|
$parameters = array();
|
||||||
$reshook = $hookmanager->executeHooks('formAddObjectLine', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
|
$reshook = $hookmanager->executeHooks('formAddObjectLine', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
|
||||||
if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
|
if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
|
||||||
if (empty($reshook))
|
if (empty($reshook))
|
||||||
$object->formAddObjectLine(1, $mysoc, null, '/bom/tpl');
|
$object->formAddObjectLine(1, $mysoc, null, '/bom/tpl');
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!empty($object->lines) || ($object->status == $object::STATUS_DRAFT && $permissiontoadd && $action != 'selectlines' && $action != 'editline')) {
|
|
||||||
print '</table>';
|
|
||||||
}
|
|
||||||
print '</div>';
|
|
||||||
|
|
||||||
print "</form>\n";
|
|
||||||
|
|
||||||
//Services
|
|
||||||
$filtertype = 1;
|
|
||||||
$res = $object->fetchLinesbytypeproduct(1);
|
|
||||||
$object->calculateCosts();
|
|
||||||
|
|
||||||
print ($res == 0 && $object->status >= $object::STATUS_VALIDATED) ? '' : load_fiche_titre($langs->trans('BOMServicesList'), '', 'service');
|
|
||||||
|
|
||||||
print ' <form name="addservice" id="addservice" action="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . (($action != 'editline') ? '' : '') . '" method="POST">
|
|
||||||
<input type="hidden" name="token" value="' . newToken() . '">
|
|
||||||
<input type="hidden" name="action" value="' . (($action != 'editline') ? 'addline' : 'updateline') . '">
|
|
||||||
<input type="hidden" name="mode" value="">
|
|
||||||
<input type="hidden" name="page_y" value=""> <input type="hidden" name="id" value="' . $object->id . '">
|
|
||||||
';
|
|
||||||
|
|
||||||
if (!empty($conf->use_javascript_ajax) && $object->status == 0) {
|
|
||||||
$tagidfortablednd = 'tablelinesservice';
|
|
||||||
include DOL_DOCUMENT_ROOT . '/core/tpl/ajaxrow.tpl.php';
|
|
||||||
}
|
|
||||||
|
|
||||||
print '<div class="div-table-responsive-no-min">';
|
|
||||||
if (!empty($object->lines) || ($object->status == $object::STATUS_DRAFT && $permissiontoadd && $action != 'selectlines' && $action != 'editline')) {
|
|
||||||
print '<table id="tablelinesservice" class="noborder noshadow" width="100%">';
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!empty($object->lines)) {
|
|
||||||
$object->printObjectLines($action, $mysoc, null, GETPOST('lineid', 'int'), 1, '/bom/tpl');
|
|
||||||
}
|
|
||||||
|
|
||||||
// Form to add new line
|
|
||||||
if ($object->status == 0 && $permissiontoadd && $action != 'selectlines') {
|
|
||||||
if ($action != 'editline') {
|
|
||||||
// Add services form
|
|
||||||
$parameters = array();
|
|
||||||
$reshook = $hookmanager->executeHooks('formAddObjectServiceLine', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
|
|
||||||
if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
|
|
||||||
if (empty($reshook))
|
|
||||||
$object->formAddObjectLine(1, $mysoc, null, '/bom/tpl');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -661,9 +613,58 @@ if (empty($reshook)) {
|
|||||||
|
|
||||||
print "</form>\n";
|
print "</form>\n";
|
||||||
|
|
||||||
mrpCollapseBomManagement();
|
//Services
|
||||||
|
$filtertype = 1;
|
||||||
|
$res = $object->fetchLinesbytypeproduct(1);
|
||||||
|
$object->calculateCosts();
|
||||||
|
|
||||||
|
print ($res == 0 && $object->status >= $object::STATUS_VALIDATED) ? '' : load_fiche_titre($langs->trans('BOMServicesList'), '', 'service');
|
||||||
|
|
||||||
|
print ' <form name="addservice" id="addservice" action="' . $_SERVER["PHP_SELF"] . '?id=' . $object->id . (($action != 'editline') ? '' : '') . '" method="POST">
|
||||||
|
<input type="hidden" name="token" value="' . newToken() . '">
|
||||||
|
<input type="hidden" name="action" value="' . (($action != 'editline') ? 'addline' : 'updateline') . '">
|
||||||
|
<input type="hidden" name="mode" value="">
|
||||||
|
<input type="hidden" name="page_y" value=""> <input type="hidden" name="id" value="' . $object->id . '">
|
||||||
|
';
|
||||||
|
|
||||||
|
if (!empty($conf->use_javascript_ajax) && $object->status == 0) {
|
||||||
|
$tagidfortablednd = 'tablelinesservice';
|
||||||
|
include DOL_DOCUMENT_ROOT . '/core/tpl/ajaxrow.tpl.php';
|
||||||
|
}
|
||||||
|
|
||||||
|
print '<div class="div-table-responsive-no-min">';
|
||||||
|
if (!empty($object->lines) || ($object->status == $object::STATUS_DRAFT && $permissiontoadd && $action != 'selectlines' && $action != 'editline')) {
|
||||||
|
print '<table id="tablelinesservice" class="noborder noshadow centpercent">';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!empty($object->lines)) {
|
||||||
|
$object->printObjectLines($action, $mysoc, null, GETPOST('lineid', 'int'), 1, '/bom/tpl');
|
||||||
|
}
|
||||||
|
|
||||||
|
// Form to add new line
|
||||||
|
if ($object->status == 0 && $permissiontoadd && $action != 'selectlines') {
|
||||||
|
if ($action != 'editline') {
|
||||||
|
// Add services form
|
||||||
|
$parameters = array();
|
||||||
|
$reshook = $hookmanager->executeHooks('formAddObjectServiceLine', $parameters, $object, $action); // Note that $action and $object may have been modified by hook
|
||||||
|
if ($reshook < 0) setEventMessages($hookmanager->error, $hookmanager->errors, 'errors');
|
||||||
|
if (empty($reshook))
|
||||||
|
$object->formAddObjectLine(1, $mysoc, null, '/bom/tpl');
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($object->lines) || ($object->status == $object::STATUS_DRAFT && $permissiontoadd && $action != 'selectlines' && $action != 'editline')) {
|
||||||
|
print '</table>';
|
||||||
|
}
|
||||||
|
print '</div>';
|
||||||
|
|
||||||
|
print "</form>\n";
|
||||||
|
|
||||||
|
|
||||||
|
mrpCollapseBomManagement();
|
||||||
|
|
||||||
|
|
||||||
$res = $object->fetchLines();
|
$res = $object->fetchLines();
|
||||||
|
|
||||||
// Buttons for actions
|
// Buttons for actions
|
||||||
@ -733,18 +734,18 @@ if (empty($reshook)) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
if ($user->rights->bom->write)
|
if ($user->rights->bom->write)
|
||||||
{
|
{
|
||||||
if ($object->status == 1)
|
if ($object->status == 1)
|
||||||
{
|
{
|
||||||
print '<a class="butActionDelete" href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=disable&token='.newToken().'">'.$langs->trans("Disable").'</a>'."\n";
|
print '<a class="butActionDelete" href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=disable&token='.newToken().'">'.$langs->trans("Disable").'</a>'."\n";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print '<a class="butAction" href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=enable&token='.newToken().'">'.$langs->trans("Enable").'</a>'."\n";
|
print '<a class="butAction" href="'.$_SERVER["PHP_SELF"].'?id='.$object->id.'&action=enable&token='.newToken().'">'.$langs->trans("Enable").'</a>'."\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Delete
|
// Delete
|
||||||
print dolGetButtonAction($langs->trans("Delete"), '', 'delete', $_SERVER["PHP_SELF"].'?id='.$object->id.'&action=delete&token='.newToken(), 'delete', $permissiontodelete);
|
print dolGetButtonAction($langs->trans("Delete"), '', 'delete', $_SERVER["PHP_SELF"].'?id='.$object->id.'&action=delete&token='.newToken(), 'delete', $permissiontodelete);
|
||||||
@ -804,6 +805,7 @@ if (empty($reshook)) {
|
|||||||
include DOL_DOCUMENT_ROOT.'/core/tpl/card_presend.tpl.php';
|
include DOL_DOCUMENT_ROOT.'/core/tpl/card_presend.tpl.php';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// End of page
|
// End of page
|
||||||
llxFooter();
|
llxFooter();
|
||||||
$db->close();
|
$db->close();
|
||||||
|
|||||||
@ -187,8 +187,8 @@ if ($object->id > 0 && (empty($action) || ($action != 'edit' && $action != 'crea
|
|||||||
|
|
||||||
print dol_get_fiche_end();
|
print dol_get_fiche_end();
|
||||||
|
|
||||||
$viewlink = dolGetButtonTitle($langs->trans('GroupByProduct'), '', 'fa fa-bars imgforviewmode', $_SERVER['PHP_SELF'].'?id='.$object->id.'&token='.newToken(), '', 1, array('morecss' => 'reposition '.($action !== 'treeview' ? 'btnTitleSelected':'')));
|
$viewlink = dolGetButtonTitle($langs->trans('GroupByX', $langs->transnoentitiesnoconv("Products")), '', 'fa fa-bars imgforviewmode', $_SERVER['PHP_SELF'].'?id='.$object->id.'&token='.newToken(), '', 1, array('morecss' => 'reposition '.($action !== 'treeview' ? 'btnTitleSelected':'')));
|
||||||
$viewlink .= dolGetButtonTitle($langs->trans('TreeStructure'), '', 'fa fa-stream imgforviewmode', $_SERVER['PHP_SELF'].'?id='.$object->id.'&action=treeview&token='.newToken(), '', 1, array('morecss' => 'reposition marginleftonly '.($action == 'treeview' ? 'btnTitleSelected':'')));
|
$viewlink .= dolGetButtonTitle($langs->trans('TreeView'), '', 'fa fa-stream imgforviewmode', $_SERVER['PHP_SELF'].'?id='.$object->id.'&action=treeview&token='.newToken(), '', 1, array('morecss' => 'reposition marginleftonly '.($action == 'treeview' ? 'btnTitleSelected':'')));
|
||||||
|
|
||||||
print load_fiche_titre($langs->trans("BOMNetNeeds"), $viewlink, '');
|
print load_fiche_titre($langs->trans("BOMNetNeeds"), $viewlink, '');
|
||||||
|
|
||||||
|
|||||||
@ -104,7 +104,7 @@ class BOM extends CommonObject
|
|||||||
//'bomtype' => array('type'=>'integer', 'label'=>'Type', 'enabled'=>1, 'visible'=>-1, 'position'=>32, 'notnull'=>1, 'default'=>'0', 'arrayofkeyval'=>array(0=>'Manufacturing')),
|
//'bomtype' => array('type'=>'integer', 'label'=>'Type', 'enabled'=>1, 'visible'=>-1, 'position'=>32, 'notnull'=>1, 'default'=>'0', 'arrayofkeyval'=>array(0=>'Manufacturing')),
|
||||||
'fk_product' => array('type'=>'integer:Product:product/class/product.class.php:1:((finished:is:null) or (finished:!=:0))', 'label'=>'Product', 'picto'=>'product', 'enabled'=>1, 'visible'=>1, 'position'=>35, 'notnull'=>1, 'index'=>1, 'help'=>'ProductBOMHelp', 'css'=>'maxwidth500', 'csslist'=>'tdoverflowmax100'),
|
'fk_product' => array('type'=>'integer:Product:product/class/product.class.php:1:((finished:is:null) or (finished:!=:0))', 'label'=>'Product', 'picto'=>'product', 'enabled'=>1, 'visible'=>1, 'position'=>35, 'notnull'=>1, 'index'=>1, 'help'=>'ProductBOMHelp', 'css'=>'maxwidth500', 'csslist'=>'tdoverflowmax100'),
|
||||||
'description' => array('type'=>'text', 'label'=>'Description', 'enabled'=>1, 'visible'=>-1, 'position'=>60, 'notnull'=>-1,),
|
'description' => array('type'=>'text', 'label'=>'Description', 'enabled'=>1, 'visible'=>-1, 'position'=>60, 'notnull'=>-1,),
|
||||||
'qty' => array('type'=>'real', 'label'=>'Quantity', 'enabled'=>1, 'visible'=>1, 'default'=>1, 'position'=>55, 'notnull'=>1, 'isameasure'=>'1', 'css'=>'maxwidth75imp'),
|
'qty' => array('type'=>'real', 'label'=>'Quantity', 'enabled'=>1, 'visible'=>1, 'default'=>1, 'position'=>55, 'notnull'=>1, 'isameasure'=>'1', 'css'=>'maxwidth50imp right'),
|
||||||
//'efficiency' => array('type'=>'real', 'label'=>'ManufacturingEfficiency', 'enabled'=>1, 'visible'=>-1, 'default'=>1, 'position'=>100, 'notnull'=>0, 'css'=>'maxwidth50imp', 'help'=>'ValueOfMeansLossForProductProduced'),
|
//'efficiency' => array('type'=>'real', 'label'=>'ManufacturingEfficiency', 'enabled'=>1, 'visible'=>-1, 'default'=>1, 'position'=>100, 'notnull'=>0, 'css'=>'maxwidth50imp', 'help'=>'ValueOfMeansLossForProductProduced'),
|
||||||
'duration' => array('type'=>'duration', 'label'=>'EstimatedDuration', 'enabled'=>1, 'visible'=>-1, 'position'=>101, 'notnull'=>-1, 'css'=>'maxwidth50imp', 'help'=>'EstimatedDurationDesc'),
|
'duration' => array('type'=>'duration', 'label'=>'EstimatedDuration', 'enabled'=>1, 'visible'=>-1, 'position'=>101, 'notnull'=>-1, 'css'=>'maxwidth50imp', 'help'=>'EstimatedDurationDesc'),
|
||||||
'fk_warehouse' => array('type'=>'integer:Entrepot:product/stock/class/entrepot.class.php:0', 'label'=>'WarehouseForProduction', 'picto'=>'stock', 'enabled'=>1, 'visible'=>-1, 'position'=>102, 'css'=>'maxwidth500', 'csslist'=>'tdoverflowmax100'),
|
'fk_warehouse' => array('type'=>'integer:Entrepot:product/stock/class/entrepot.class.php:0', 'label'=>'WarehouseForProduction', 'picto'=>'stock', 'enabled'=>1, 'visible'=>-1, 'position'=>102, 'css'=>'maxwidth500', 'csslist'=>'tdoverflowmax100'),
|
||||||
|
|||||||
@ -919,6 +919,7 @@ NotAllExportedMovementsCouldBeRecordedAsExported=Not all exported movements coul
|
|||||||
Miscellaneous=Miscellaneous
|
Miscellaneous=Miscellaneous
|
||||||
Calendar=Calendar
|
Calendar=Calendar
|
||||||
GroupBy=Group by...
|
GroupBy=Group by...
|
||||||
|
GroupByX=Group by %s
|
||||||
ViewFlatList=View flat list
|
ViewFlatList=View flat list
|
||||||
ViewAccountList=View ledger
|
ViewAccountList=View ledger
|
||||||
ViewSubAccountList=View subaccount ledger
|
ViewSubAccountList=View subaccount ledger
|
||||||
@ -1213,4 +1214,4 @@ InternalUser=Internal user
|
|||||||
ExternalUser=External user
|
ExternalUser=External user
|
||||||
NoSpecificContactAddress=No specific contact or address
|
NoSpecificContactAddress=No specific contact or address
|
||||||
NoSpecificContactAddressBis=This tab is dedicated to force specific contacts or addresses for the current object. Use it only if you want to define one or several specific contacts or addresses for the object when the information on the thirdparty is not enough or not accurate.
|
NoSpecificContactAddressBis=This tab is dedicated to force specific contacts or addresses for the current object. Use it only if you want to define one or several specific contacts or addresses for the object when the information on the thirdparty is not enough or not accurate.
|
||||||
|
TreeView=Tree view
|
||||||
|
|||||||
@ -3813,12 +3813,12 @@ table.liste, table.noborder, table.formdoc, div.noborder {
|
|||||||
box-shadow: 1px 1px 5px #ddd;
|
box-shadow: 1px 1px 5px #ddd;
|
||||||
*/
|
*/
|
||||||
}
|
}
|
||||||
#tablelines {
|
#tablelines, #tablelinesservice {
|
||||||
border-bottom-width: 1px;
|
border-bottom-width: 1px;
|
||||||
border-bottom-color: var(--colortopbordertitle1);
|
border-bottom-color: var(--colortopbordertitle1);
|
||||||
border-bottom-style: solid;
|
border-bottom-style: solid;
|
||||||
}
|
}
|
||||||
table.liste tr:last-of-type td, table.noborder:not(#tablelines) tr:last-of-type td, table.formdoc tr:last-of-type td, div.noborder tr:last-of-type td {
|
table.liste tr:last-of-type td, table.noborder:not(#tablelines):not(#tablelinesservice) tr:last-of-type td, table.formdoc tr:last-of-type td, div.noborder tr:last-of-type td {
|
||||||
border-bottom-width: 1px;
|
border-bottom-width: 1px;
|
||||||
border-bottom-color: var(--colortopbordertitle1);
|
border-bottom-color: var(--colortopbordertitle1);
|
||||||
border-bottom-style: solid;
|
border-bottom-style: solid;
|
||||||
@ -4371,10 +4371,10 @@ div.tabBar .noborder {
|
|||||||
box-shadow: 0px 0px 0px #DDD !important;
|
box-shadow: 0px 0px 0px #DDD !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
#tablelines tr.liste_titre td, .paymenttable tr.liste_titre td, .margintable tr.liste_titre td, .tableforservicepart1 tr.liste_titre td {
|
#tablelines tr.liste_titre td, #tablelinesservice tr.liste_titre td, .paymenttable tr.liste_titre td, .margintable tr.liste_titre td, .tableforservicepart1 tr.liste_titre td {
|
||||||
border-bottom: 1px solid var(--colortopbordertitle1) !important;
|
border-bottom: 1px solid var(--colortopbordertitle1) !important;
|
||||||
}
|
}
|
||||||
#tablelines tr td {
|
#tablelines tr td, #tablelinesservice tr td {
|
||||||
height: unset;
|
height: unset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -4480,10 +4480,10 @@ div .tdtop:not(.tagtdnote) {
|
|||||||
padding-bottom: 0px !important;
|
padding-bottom: 0px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
#tablelines tr.liste_titre td, .paymenttable tr.liste_titre td, .margintable tr.liste_titre td, .tableforservicepart1 tr.liste_titre td {
|
#tablelines tr.liste_titre td, #tablelinesservice tr.liste_titre td, .paymenttable tr.liste_titre td, .margintable tr.liste_titre td, .tableforservicepart1 tr.liste_titre td {
|
||||||
border-bottom: 1px solid #AAA !important;
|
border-bottom: 1px solid #AAA !important;
|
||||||
}
|
}
|
||||||
#tablelines tr td {
|
#tablelines tr td, #tablelinesservice tr td {
|
||||||
height: unset;
|
height: unset;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user