Merge branch '11.0' of github.com:Dolibarr/dolibarr into 11.0

This commit is contained in:
florian HENRY 2020-06-04 20:14:29 +02:00
commit 9a3e68b594
3 changed files with 36 additions and 8 deletions

View File

@ -1030,14 +1030,18 @@ if (!$error && $massaction == "builddoc" && $permissiontoread && !GETPOST('butto
$input_files .= ' '.escapeshellarg($f); $input_files .= ' '.escapeshellarg($f);
} }
$cmd = 'pdftk '.escapeshellarg($input_files).' cat output '.escapeshellarg($file); $cmd = 'pdftk ' . $input_files . ' cat output '.escapeshellarg($file);
exec($cmd); exec($cmd);
if (!empty($conf->global->MAIN_UMASK)) // check if pdftk is installed
@chmod($file, octdec($conf->global->MAIN_UMASK)); if (file_exists($file)) {
if (!empty($conf->global->MAIN_UMASK))
$langs->load("exports"); @chmod($file, octdec($conf->global->MAIN_UMASK));
setEventMessages($langs->trans('FileSuccessfullyBuilt', $filename.'_'.dol_print_date($now, 'dayhourlog')), null, 'mesgs'); $langs->load("exports");
setEventMessages($langs->trans('FileSuccessfullyBuilt', $filename.'_'.dol_print_date($now, 'dayhourlog')), null, 'mesgs');
} else {
setEventMessages($langs->trans('ErrorPDFTkOutputFileNotFound'), null, 'errors');
}
} }
else else
{ {

View File

@ -837,6 +837,7 @@ Sincerely=Sincerely
ConfirmDeleteObject=Are you sure you want to delete this object? ConfirmDeleteObject=Are you sure you want to delete this object?
DeleteLine=Delete line DeleteLine=Delete line
ConfirmDeleteLine=Are you sure you want to delete this line? ConfirmDeleteLine=Are you sure you want to delete this line?
ErrorPDFTkOutputFileNotFound=Error: the file was not generated. Please check that the 'pdftk' command is installed in a directory included in the $PATH environment variable (linux/unix only) or contact your system administrator.
NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record NoPDFAvailableForDocGenAmongChecked=No PDF were available for the document generation among checked record
TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records. TooManyRecordForMassAction=Too many records selected for mass action. The action is restricted to a list of %s records.
NoRecordSelected=No record selected NoRecordSelected=No record selected
@ -1017,4 +1018,4 @@ ContactDefault_ticket=Ticket
ContactAddedAutomatically=Contact added from contact thirdparty roles ContactAddedAutomatically=Contact added from contact thirdparty roles
More=More More=More
ShowDetails=Show details ShowDetails=Show details
CustomReports=Custom reports CustomReports=Custom reports

View File

@ -237,13 +237,14 @@ class FormProduct
*/ */
public function selectWarehouses($selected = '', $htmlname = 'idwarehouse', $filterstatus = '', $empty = 0, $disabled = 0, $fk_product = 0, $empty_label = '', $showstock = 0, $forcecombo = 0, $events = array(), $morecss = 'minwidth200', $exclude = '', $showfullpath = 1, $stockMin = false, $orderBy = 'e.ref') public function selectWarehouses($selected = '', $htmlname = 'idwarehouse', $filterstatus = '', $empty = 0, $disabled = 0, $fk_product = 0, $empty_label = '', $showstock = 0, $forcecombo = 0, $events = array(), $morecss = 'minwidth200', $exclude = '', $showfullpath = 1, $stockMin = false, $orderBy = 'e.ref')
{ {
global $conf,$langs,$user; global $conf,$langs,$user, $hookmanager;
dol_syslog(get_class($this)."::selectWarehouses $selected, $htmlname, $filterstatus, $empty, $disabled, $fk_product, $empty_label, $showstock, $forcecombo, $morecss", LOG_DEBUG); dol_syslog(get_class($this)."::selectWarehouses $selected, $htmlname, $filterstatus, $empty, $disabled, $fk_product, $empty_label, $showstock, $forcecombo, $morecss", LOG_DEBUG);
$out=''; $out='';
if (empty($conf->global->ENTREPOT_EXTRA_STATUS)) $filterstatus = ''; if (empty($conf->global->ENTREPOT_EXTRA_STATUS)) $filterstatus = '';
if (!empty($fk_product)) $this->cache_warehouses = array(); if (!empty($fk_product)) $this->cache_warehouses = array();
$this->loadWarehouses($fk_product, '', $filterstatus, true, $exclude, $stockMin, $orderBy); $this->loadWarehouses($fk_product, '', $filterstatus, true, $exclude, $stockMin, $orderBy);
$nbofwarehouses=count($this->cache_warehouses); $nbofwarehouses=count($this->cache_warehouses);
@ -282,6 +283,28 @@ class FormProduct
$out.='</select>'; $out.='</select>';
if ($disabled) $out.='<input type="hidden" name="'.$htmlname.'" value="'.(($selected>0)?$selected:'').'">'; if ($disabled) $out.='<input type="hidden" name="'.$htmlname.'" value="'.(($selected>0)?$selected:'').'">';
$parameters = array(
'selected' => $selected,
'htmlname' => $htmlname,
'filterstatus' => $filterstatus,
'empty' => $empty,
'disabled ' => $disabled,
'fk_product' => $fk_product,
'empty_label' => $empty_label,
'showstock' => $showstock,
'forcecombo' => $forcecombo,
'events' => $events,
'morecss' => $morecss,
'exclude' => $exclude,
'showfullpath' => $showfullpath,
'stockMin' => $stockMin,
'orderBy' => $orderBy
);
$reshook = $hookmanager->executeHooks('selectWarehouses', $parameters, $this);
if ($reshook > 0) $out = $hookmanager->resPrint;
elseif ($reshook == 0) $out .= $hookmanager->resPrint;
return $out; return $out;
} }