mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2026-01-19 23:33:16 +01:00
Merge branch '18.0' of git@github.com:Dolibarr/dolibarr.git into 19.0
This commit is contained in:
@@ -968,7 +968,7 @@ class AccountancyExport
|
||||
|
||||
// We need to keep the 10 lastest number of invoice doc_ref not the beginning part that is the unusefull almost same part
|
||||
// $tab['num_piece3'] = str_pad(self::trunc($line->piece_num, 10), 10);
|
||||
$tab['num_piece3'] = substr(self::trunc($line->doc_ref, 20), -10);
|
||||
$tab['num_piece3'] = str_pad(substr(self::trunc($line->doc_ref, 20), -10), 10);
|
||||
$tab['reserved'] = str_repeat(' ', 10); // position 159
|
||||
$tab['currency_amount'] = str_repeat(' ', 13); // position 169
|
||||
// get document file
|
||||
|
||||
@@ -5378,16 +5378,12 @@ abstract class CommonObject
|
||||
}
|
||||
$this->tpl['label'] .= $discount->getNomUrl(0, 'discount');
|
||||
} elseif (!empty($line->fk_product)) {
|
||||
$productstatic = new Product($this->db);
|
||||
$productstatic->id = $line->fk_product;
|
||||
$productstatic->ref = $line->ref;
|
||||
$productstatic->type = $line->fk_product_type;
|
||||
if (empty($productstatic->ref)) {
|
||||
if (empty($line->product)) {
|
||||
$line->fetch_product();
|
||||
$productstatic = $line->product;
|
||||
}
|
||||
$productstatic = $line->product;
|
||||
|
||||
$this->tpl['label'] .= $productstatic->getNomUrl(1);
|
||||
$this->tpl['label'] .= (is_object($productstatic) ? $productstatic->getNomUrl(1) : $line->ref);
|
||||
$this->tpl['label'] .= ' - '.(!empty($line->label) ? $line->label : $line->product_label);
|
||||
// Dates
|
||||
if ($line->product_type == 1 && ($date_start || $date_end)) {
|
||||
|
||||
@@ -57,8 +57,11 @@ class FileUpload
|
||||
$this->element = $element;
|
||||
|
||||
$pathname = str_replace('/class', '', $element_prop['classpath']);
|
||||
|
||||
|
||||
$filename = dol_sanitizeFileName($element_prop['classfile']);
|
||||
$dir_output = dol_sanitizePathName($element_prop['dir_output']);
|
||||
$savingDocMask = '';
|
||||
|
||||
//print 'fileupload.class.php: element='.$element.' pathname='.$pathname.' filename='.$filename.' dir_output='.$dir_output."\n";
|
||||
|
||||
@@ -74,6 +77,11 @@ class FileUpload
|
||||
|
||||
$object_ref = dol_sanitizeFileName($object->ref);
|
||||
|
||||
// add object reference as file name prefix if const MAIN_DISABLE_SUGGEST_REF_AS_PREFIX is not enabled
|
||||
if (!getDolGlobalInt('MAIN_DISABLE_SUGGEST_REF_AS_PREFIX')) {
|
||||
$savingDocMask = $object_ref.'-__file__';
|
||||
}
|
||||
|
||||
// Special cases to forge $object_ref used to forge $upload_dir
|
||||
if ($element == 'invoice_supplier') {
|
||||
$object_ref = get_exdir($object->id, 2, 0, 0, $object, 'invoice_supplier').$object_ref;
|
||||
@@ -99,6 +107,7 @@ class FileUpload
|
||||
'script_url' => $_SERVER['PHP_SELF'],
|
||||
'upload_dir' => $dir_output.'/'.$object_ref.'/',
|
||||
'upload_url' => DOL_URL_ROOT.'/document.php?modulepart='.$element.'&attachment=1&file=/'.$object_ref.'/',
|
||||
'saving_doc_mask' => $savingDocMask,
|
||||
'param_name' => 'files',
|
||||
// Set the following option to 'POST', if your server does not support
|
||||
// DELETE requests. This is a parameter sent to the client:
|
||||
@@ -423,6 +432,14 @@ class FileUpload
|
||||
|
||||
if ($validate) {
|
||||
if (dol_mkdir($this->options['upload_dir']) >= 0) {
|
||||
// add object reference as file name prefix if const MAIN_DISABLE_SUGGEST_REF_AS_PREFIX is not enabled
|
||||
$fileNameWithoutExt = preg_replace('/\.[^\.]+$/', '', $file->name);
|
||||
$savingDocMask = $this->options['saving_doc_mask'];
|
||||
if ($savingDocMask && strpos($savingDocMask, $fileNameWithoutExt) !== 0) {
|
||||
$fileNameWithPrefix = preg_replace('/__file__/', $file->name, $savingDocMask);
|
||||
$file->name = $fileNameWithPrefix;
|
||||
}
|
||||
|
||||
$file_path = dol_sanitizePathName($this->options['upload_dir']).dol_sanitizeFileName($file->name);
|
||||
$append_file = !$this->options['discard_aborted_uploads'] && dol_is_file($file_path) && $file->size > dol_filesize($file_path);
|
||||
|
||||
|
||||
@@ -4406,7 +4406,7 @@ class Form
|
||||
if (depositPercent.length > 0) {
|
||||
$("#' . $htmlname . '_deposit_percent_container").show().find("#' . $htmlname . '_deposit_percent").val(depositPercent);
|
||||
} else {
|
||||
$("#' . $htmlname . '_deposit_percent_container").hide();
|
||||
$("#' . $htmlname . '_deposit_percent_container").hide().find("#' . $htmlname . '_deposit_percent").val(0);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
@@ -1597,8 +1597,13 @@ class CommandeFournisseur extends CommonOrder
|
||||
// End call triggers
|
||||
}
|
||||
|
||||
$this->db->commit();
|
||||
return $this->id;
|
||||
if (!$error) {
|
||||
$this->db->commit();
|
||||
return $this->id;
|
||||
} else {
|
||||
$this->db->rollback();
|
||||
return -4;
|
||||
}
|
||||
} else {
|
||||
$this->error = $this->db->lasterror();
|
||||
$this->db->rollback();
|
||||
|
||||
@@ -1111,7 +1111,7 @@ if (empty($reshook)) {
|
||||
$object->origin_id = GETPOST('originid', 'int');
|
||||
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT.'/'.$element.'/class/'.$subelement.'.class.php';
|
||||
dol_include_once('/'.$element.'/class/'.$subelement.'.class.php');
|
||||
$classname = ucfirst($subelement);
|
||||
if ($classname == 'Fournisseur.commande') {
|
||||
$classname = 'CommandeFournisseur';
|
||||
@@ -1139,7 +1139,7 @@ if (empty($reshook)) {
|
||||
|
||||
// Add lines
|
||||
if ($id > 0) {
|
||||
require_once DOL_DOCUMENT_ROOT.'/'.$element.'/class/'.$subelement.'.class.php';
|
||||
dol_include_once('/'.$element.'/class/'.$subelement.'.class.php');
|
||||
$classname = ucfirst($subelement);
|
||||
if ($classname == 'Fournisseur.commande') {
|
||||
$classname = 'CommandeFournisseur';
|
||||
@@ -2097,7 +2097,7 @@ if ($action == 'create') {
|
||||
$subelement = 'fournisseur.commande';
|
||||
}
|
||||
|
||||
require_once DOL_DOCUMENT_ROOT.'/'.$element.'/class/'.$subelement.'.class.php';
|
||||
dol_include_once('/'.$element.'/class/'.$subelement.'.class.php');
|
||||
$classname = ucfirst($subelement);
|
||||
if ($classname == 'Fournisseur.commande') {
|
||||
$classname = 'CommandeFournisseur';
|
||||
|
||||
Reference in New Issue
Block a user