From 5297ab4ab4bfad3eca16c1695e5b9d9e1556568e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 6 Oct 2019 16:11:57 +0200 Subject: [PATCH 1/7] FIX Pb in units of shipments --- htdocs/expedition/card.php | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php index cffeb8d6efd..cfb2e457223 100644 --- a/htdocs/expedition/card.php +++ b/htdocs/expedition/card.php @@ -93,7 +93,6 @@ $extrafields = new ExtraFields($db); $extrafields->fetch_name_optionals_label($object->table_element); $extrafields->fetch_name_optionals_label($object->table_element_line); - // Load object. Make an object->fetch include DOL_DOCUMENT_ROOT.'/core/actions_fetchobject.inc.php'; // Must be include, not include_once @@ -1573,8 +1572,9 @@ if ($action == 'create') } // Line extrafield - if (!empty($extrafields)) + if (! empty($extrafields)) { + //var_dump($line); $colspan=5; $extrafields->fetch_name_optionals_label($object->table_element_line); $srcLine = new OrderLine($db); @@ -1839,8 +1839,8 @@ elseif ($id || $ref) print ''; print ''; print ''; - print ''; - print $formproduct->selectMeasuringUnits("weight_units", "weight", $object->weight_units); + print ''; + print $formproduct->selectMeasuringUnits("weight_units", "weight", $object->weight_units, 0, 2); print ' '; print ' '; print ''; @@ -1848,7 +1848,7 @@ elseif ($id || $ref) else { print $object->trueWeight; - print ($object->trueWeight && $object->weight_units!='')?' '.measuring_units_string($object->weight_units, "weight"):''; + print ($object->trueWeight && $object->weight_units!='')?' '.measuring_units_string(0, "weight", $object->weight_units):''; } // Calculated @@ -1865,7 +1865,7 @@ elseif ($id || $ref) // Width print ''.$form->editfieldkey("Width", 'trueWidth', $object->trueWidth, $object, $user->rights->expedition->creer).''; print $form->editfieldval("Width", 'trueWidth', $object->trueWidth, $object, $user->rights->expedition->creer); - print ($object->trueWidth && $object->width_units!='')?' '.measuring_units_string($object->width_units, "size"):''; + print ($object->trueWidth && $object->width_units!='')?' '.measuring_units_string(0, "size", $object->width_units):''; print ''; // Height @@ -1876,8 +1876,8 @@ elseif ($id || $ref) print ''; print ''; print ''; - print ''; - print $formproduct->selectMeasuringUnits("size_units", "size", $object->size_units); + print ''; + print $formproduct->selectMeasuringUnits("size_units", "size", $object->size_units, 0, 2); print ' '; print ' '; print ''; @@ -1885,7 +1885,7 @@ elseif ($id || $ref) else { print $object->trueHeight; - print ($object->trueHeight && $object->height_units!='')?' '.measuring_units_string($object->height_units, "size"):''; + print ($object->trueHeight && $object->height_units!='')?' '.measuring_units_string(0, "size", $object->height_units):''; } print ''; @@ -1893,7 +1893,7 @@ elseif ($id || $ref) // Depth print ''.$form->editfieldkey("Depth", 'trueDepth', $object->trueDepth, $object, $user->rights->expedition->creer).''; print $form->editfieldval("Depth", 'trueDepth', $object->trueDepth, $object, $user->rights->expedition->creer); - print ($object->trueDepth && $object->depth_units!='')?' '.measuring_units_string($object->depth_units, "size"):''; + print ($object->trueDepth && $object->depth_units!='')?' '.measuring_units_string(0, "size", $object->depth_units):''; print ''; // Volume @@ -2100,7 +2100,6 @@ elseif ($id || $ref) } print "\n"; print ''; - $var=false; if (! empty($conf->global->MAIN_MULTILANGS) && ! empty($conf->global->PRODUIT_TEXTS_IN_THIRDPARTY_LANGUAGE)) { @@ -2408,13 +2407,13 @@ elseif ($id || $ref) // Weight print ''; - if ($lines[$i]->fk_product_type == Product::TYPE_PRODUCT) print $lines[$i]->weight*$lines[$i]->qty_shipped.' '.measuring_units_string($lines[$i]->weight_units, "weight"); + if ($lines[$i]->fk_product_type == Product::TYPE_PRODUCT) print $lines[$i]->weight*$lines[$i]->qty_shipped.' '.measuring_units_string(0, "weight", $lines[$i]->weight_units); else print ' '; print ''; // Volume print ''; - if ($lines[$i]->fk_product_type == Product::TYPE_PRODUCT) print $lines[$i]->volume*$lines[$i]->qty_shipped.' '.measuring_units_string($lines[$i]->volume_units, "volume"); + if ($lines[$i]->fk_product_type == Product::TYPE_PRODUCT) print $lines[$i]->volume*$lines[$i]->qty_shipped.' '.measuring_units_string(0, "volume", $lines[$i]->volume_units); else print ' '; print ''; From d4bb6490e98f2e455c5c68d37b8776828317c84b Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 6 Oct 2019 16:25:22 +0200 Subject: [PATCH 2/7] Fix migration --- htdocs/install/mysql/migration/10.0.0-11.0.0.sql | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/htdocs/install/mysql/migration/10.0.0-11.0.0.sql b/htdocs/install/mysql/migration/10.0.0-11.0.0.sql index e33bcbec638..1333f3a9200 100644 --- a/htdocs/install/mysql/migration/10.0.0-11.0.0.sql +++ b/htdocs/install/mysql/migration/10.0.0-11.0.0.sql @@ -33,6 +33,19 @@ ALTER TABLE llx_account_bookkeeping ADD COLUMN date_export datetime DEFAULT NULL ALTER TABLE llx_expensereport ADD COLUMN paid smallint default 0 NOT NULL; UPDATE llx_expensereport set paid = 1 WHERE fk_statut = 6 and paid = 0; +UPDATE llx_c_units SET short_label = 'i' WHERE code = 'MI'; +UPDATE llx_c_units SET unit_type = 'weight', short_label = 'kg', scale = 0 WHERE code = 'KG'; +UPDATE llx_c_units SET unit_type = 'weight', short_label = 'g', scale = -3 WHERE code = 'G'; +UPDATE llx_c_units SET unit_type = 'time' WHERE code IN ('S','H','D'); +UPDATE llx_c_units SET unit_type = 'size' WHERE code IN ('M','LM'); +UPDATE llx_c_units SET label = 'SizeUnitm', scale = 0 WHERE code IN ('M'); +UPDATE llx_c_units SET active = 0, scale = 0 WHERE code IN ('LM'); +UPDATE llx_c_units SET unit_type = 'surface', scale = 0 WHERE code IN ('M2'); +UPDATE llx_c_units SET unit_type = 'volume', scale = 0 WHERE code IN ('M3','L'); +UPDATE llx_c_units SET scale = -3, active = 0 WHERE code IN ('L'); +UPDATE llx_c_units SET label = 'VolumeUnitm3' WHERE code IN ('M3'); +UPDATE llx_c_units SET label = 'SurfaceUnitm2' WHERE code IN ('M2'); + -- For v11 From 1285f71ceb25354b9bc97f6a888cc5424368844e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 6 Oct 2019 16:50:04 +0200 Subject: [PATCH 3/7] Clean code of extrafields --- htdocs/expedition/card.php | 20 +++++++++++++------- htdocs/expedition/shipment.php | 3 +++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/htdocs/expedition/card.php b/htdocs/expedition/card.php index cfb2e457223..ce98313d60f 100644 --- a/htdocs/expedition/card.php +++ b/htdocs/expedition/card.php @@ -1031,8 +1031,7 @@ if ($action == 'create') if (empty($reshook)) { // copy from order - $orderExtrafields = new Extrafields($db); - $orderExtrafieldLabels = $orderExtrafields->fetch_name_optionals_label($object->table_element); + $extrafields->fetch_name_optionals_label($object->table_element); if ($object->fetch_optionals() > 0) { $expe->array_options = array_merge($expe->array_options, $object->array_options); } @@ -1576,13 +1575,16 @@ if ($action == 'create') { //var_dump($line); $colspan=5; - $extrafields->fetch_name_optionals_label($object->table_element_line); + $extrafields->fetch_name_optionals_label($expe->table_element_line); + $expLine = new ExpeditionLigne($db); + $srcLine = new OrderLine($db); + $extrafields->fetch_name_optionals_label($srcLine->table_element); $srcLine->fetch_optionals($line->id); // fetch extrafields also available in orderline //$line->fetch_optionals($line->id); $line->array_options = array_merge($line->array_options, $srcLine->array_options); - print $line->showOptionals($extrafields, 'edit', array('style'=>'class="drag drop oddeven"','colspan'=>$colspan), $indiceAsked, '', empty($conf->global->MAIN_EXTRAFIELDS_IN_ONE_TD)?0:1); + print $expLine->showOptionals($extrafields, 'edit', array('style'=>'class="drag drop oddeven"', 'colspan'=>$colspan), $indiceAsked, '', empty($conf->global->MAIN_EXTRAFIELDS_IN_ONE_TD)?0:1); } } @@ -2256,8 +2258,8 @@ elseif ($id || $ref) } } } + print ''; } - print ''; if ($action == 'editline' && $lines[$i]->id == $line_id) { @@ -2425,8 +2427,9 @@ elseif ($id || $ref) print ''; print '
'; print '
'; + print ''; } - elseif ($object->statut == 0) + elseif ($object->statut == Expedition::STATUS_DRAFT) { // edit-delete buttons print ''; @@ -2448,7 +2451,10 @@ elseif ($id || $ref) // Display lines extrafields if (! empty($extrafields)) { - $colspan= empty($conf->productbatch->enabled) ? 5 : 6; + $colspan=6; + if ($origin && $origin_id > 0) $colspan++; + if (! empty($conf->productbatch->enabled)) $colspan++; + if (! empty($conf->stock->enabled)) $colspan++; $lines[$i]->fetch_optionals($lines[$i]->id); diff --git a/htdocs/expedition/shipment.php b/htdocs/expedition/shipment.php index 20973437e2d..34a89233f1e 100644 --- a/htdocs/expedition/shipment.php +++ b/htdocs/expedition/shipment.php @@ -537,6 +537,9 @@ if ($id > 0 || ! empty($ref)) print ''; } + $expe = new Expedition($db); + $extrafields->fetch_name_optionals_label($expe->table_element); + // Other attributes $cols = 2; include DOL_DOCUMENT_ROOT . '/core/tpl/extrafields_view.tpl.php'; From a3d0b9e374183d46384b02bdb3893abe3017dd22 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 6 Oct 2019 18:11:28 +0200 Subject: [PATCH 4/7] Fix syntax error --- htdocs/core/tpl/advtarget.tpl.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/htdocs/core/tpl/advtarget.tpl.php b/htdocs/core/tpl/advtarget.tpl.php index 312ba8ea78e..ee050d44b21 100644 --- a/htdocs/core/tpl/advtarget.tpl.php +++ b/htdocs/core/tpl/advtarget.tpl.php @@ -466,8 +466,8 @@ print ''; print '
'; if ($optioncss != '') print ''; @@ -278,7 +294,8 @@ if ($resql) else dol_print_error($db); print ""; print ajax_combobox("chartofaccounts"); - print ''; + print ''; + print ''; print '
'; print '
'; @@ -286,6 +303,9 @@ if ($resql) $varpage=empty($contextpage)?$_SERVER["PHP_SELF"]:$contextpage; $selectedfields=$form->multiSelectArrayWithCheckbox('selectedfields', $arrayfields, $varpage); // This also change content of $arrayfields + $moreforfilter = ''; + $massactionbutton = ''; + print '
'; print ''."\n"; diff --git a/htdocs/core/class/html.form.class.php b/htdocs/core/class/html.form.class.php index ae347b9c672..23dcc5b8e5d 100644 --- a/htdocs/core/class/html.form.class.php +++ b/htdocs/core/class/html.form.class.php @@ -7450,11 +7450,7 @@ class Form */ public function showFilterButtons() { - global $conf, $langs; - $out='
'; - //$out.=''; - //$out.=''; $out.=''; $out.=''; $out.='
'; From edfedbb8186aea4bf6226159dd1f523b0127b381 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sun, 6 Oct 2019 21:13:55 +0200 Subject: [PATCH 7/7] FIX Load chart of account only if we click or select button "Load chart" --- htdocs/accountancy/admin/account.php | 35 +++++++++++++++------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/htdocs/accountancy/admin/account.php b/htdocs/accountancy/admin/account.php index 9f120045951..bc8fff8395c 100644 --- a/htdocs/accountancy/admin/account.php +++ b/htdocs/accountancy/admin/account.php @@ -101,7 +101,7 @@ if (empty($reshook)) $search_array_options=array(); } - if (GETPOST('change_chart', 'alpha') && GETPOST('valid_change_chart', 'int')) + if (GETPOST('change_chart', 'alpha') && (GETPOST('valid_change_chart', 'int') || empty($conf->use_javascript_ajax))) { $chartofaccounts = GETPOST('chartofaccounts', 'int'); @@ -237,21 +237,24 @@ if ($resql) if ($search_pcgsubtype) $param.= '&search_pcgsubtype='.urlencode($search_pcgsubtype); if ($optioncss != '') $param.='&optioncss='.$optioncss; - print ' - '; + if (! empty($conf->use_javascript_ajax)) + { + print ' + '; + } print ''; if ($optioncss != '') print '';