2
0
forked from Wavyzz/dolibarr

Compare commits

...

19 Commits
13.0.3 ... 10.0

Author SHA1 Message Date
Florian Mortgat
74b67eb6c6 FIX - use price() to display qty on a product's stats tab to avoid showing too many decimals when rounding errors are possible (#31165) 2024-09-29 15:57:05 +02:00
Florian Mortgat
c727bbb530 FIX: when qty is not an integer, apply price() (#31138)
* FIX: when qty is not an integer, apply price() to avoid displaying precision errors if php.ini's precision settings are too high

* Apply eldy's suggestion to use price's parameters rather than a test
2024-09-26 18:41:41 +02:00
Laurent Destailleur
34b3113bb7 Merge branch '9.0' of git@github.com:Dolibarr/dolibarr.git into 10.0 2023-08-10 10:41:20 +02:00
Laurent Destailleur
90854dc2bf FIX Use the wrong logo size on PDF 2023-07-30 19:53:56 +02:00
Laurent Destailleur
b44ddaa696 FIX Use the wrong logo size on PDF 2023-07-30 18:04:03 +02:00
Laurent Destailleur
41a970c90f Merge pull request #22922 from ATM-Nicolas/fix_sql_request_parenthesis
FIX sql request parenthesis
2022-11-22 21:39:11 +01:00
ATM-Nicolas
3d9b2a1676 FIX : SQL request parenthesis 2022-11-22 15:32:37 +01:00
Laurent Destailleur
b5f887b3e4 Fix DEBUGBAR_USE_LOG_FILE 2022-05-03 11:52:32 +02:00
Laurent Destailleur
79371f66b0 Merge branch '9.0' of git@github.com:Dolibarr/dolibarr.git into 10.0 2022-03-10 15:52:28 +01:00
Laurent Destailleur
4569cb82b2 Merge branch '8.0' of git@github.com:Dolibarr/dolibarr.git into 9.0 2022-03-10 15:52:04 +01:00
Laurent Destailleur
04d33f4594 Merge branch '7.0' of git@github.com:Dolibarr/dolibarr.git into 8.0 2022-03-10 15:51:42 +01:00
Laurent Destailleur
af6e95aa79 Merge branch '6.0' of git@github.com:Dolibarr/dolibarr.git into 7.0
Conflicts:
	htdocs/core/class/utils.class.php
2022-03-10 15:49:51 +01:00
Laurent Destailleur
5d942c9d1a Fix infinit logs 2022-03-10 15:46:00 +01:00
Laurent Destailleur
5ee74d7c07 Merge branch '9.0' of git@github.com:Dolibarr/dolibarr.git into 10.0 2022-01-07 15:45:51 +01:00
Laurent Destailleur
1541e20870 Merge branch '8.0' of git@github.com:Dolibarr/dolibarr.git into 9.0
Conflicts:
	htdocs/core/class/utils.class.php
2022-01-07 15:43:28 +01:00
Laurent Destailleur
53709cf509 Merge branch '7.0' of git@github.com:Dolibarr/dolibarr.git into 8.0
Conflicts:
	htdocs/core/class/utils.class.php
2022-01-07 15:40:05 +01:00
Laurent Destailleur
10e32c056e FIX avoid infinite loop on dump with popen 2022-01-07 15:35:33 +01:00
Laurent Destailleur
0a72aed3d7 Fix missing space before union 2021-12-23 13:35:38 +01:00
Laurent Destailleur
ba724204a4 FIX Bad use of dol_concatdesc() 2021-11-11 15:50:32 +01:00
11 changed files with 56 additions and 54 deletions

View File

@@ -425,7 +425,7 @@ print_liste_field_titre(
// Quantity // Quantity
print '<td class="right">'; print '<td class="right">';
print $qty[$key]; print price($qty[$key], 1, $langs, 0, 0);
print '</td>'; print '</td>';
// Percent; // Percent;

View File

@@ -468,7 +468,7 @@ class Translate
if (! $found && ! empty($conf->global->MAIN_ENABLE_OVERWRITE_TRANSLATION)) if (! $found && ! empty($conf->global->MAIN_ENABLE_OVERWRITE_TRANSLATION))
{ {
// Overwrite translation with database read // Overwrite translation with database read
$sql ="SELECT transkey, transvalue FROM ".MAIN_DB_PREFIX."overwrite_trans where lang='".$db->escape($this->defaultlang)."' OR lang IS NULL"; $sql ="SELECT transkey, transvalue FROM ".MAIN_DB_PREFIX."overwrite_trans where (lang='".$db->escape($this->defaultlang)."' OR lang IS NULL)";
$sql.=" AND entity IN (0, ".getEntity('overwrite_trans').")"; $sql.=" AND entity IN (0, ".getEntity('overwrite_trans').")";
$sql.=$db->order("lang", "DESC"); $sql.=$db->order("lang", "DESC");
$resql=$db->query($sql); $resql=$db->query($sql);

View File

@@ -347,17 +347,19 @@ class Utils
{ {
$handlein = popen($fullcommandclear, 'r'); $handlein = popen($fullcommandclear, 'r');
$i=0; $i=0;
while (!feof($handlein)) if ($handlein) {
{ while (!feof($handlein))
$i++; // output line number {
$read = fgets($handlein); $i++; // output line number
// Exclude warning line we don't want $read = fgets($handlein);
if ($i == 1 && preg_match('/Warning.*Using a password/i', $read)) continue; // Exclude warning line we don't want
fwrite($handle, $read); if ($i == 1 && preg_match('/Warning.*Using a password/i', $read)) continue;
if (preg_match('/'.preg_quote('-- Dump completed').'/i', $read)) $ok=1; fwrite($handle, $read);
elseif (preg_match('/'.preg_quote('SET SQL_NOTES=@OLD_SQL_NOTES').'/i', $read)) $ok=1; if (preg_match('/'.preg_quote('-- Dump completed').'/i', $read)) $ok=1;
elseif (preg_match('/'.preg_quote('SET SQL_NOTES=@OLD_SQL_NOTES').'/i', $read)) $ok=1;
}
pclose($handlein);
} }
pclose($handlein);
} }

View File

@@ -363,7 +363,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_propale['nb']; print $product->stats_propale['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_propale['qty']; print price($product->stats_propale['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }
@@ -381,7 +381,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_proposal_supplier['nb']; print $product->stats_proposal_supplier['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_proposal_supplier['qty']; print price($product->stats_proposal_supplier['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }
@@ -399,7 +399,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_commande['nb']; print $product->stats_commande['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_commande['qty']; print price($product->stats_commande['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }
@@ -417,7 +417,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_commande_fournisseur['nb']; print $product->stats_commande_fournisseur['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_commande_fournisseur['qty']; print price($product->stats_commande_fournisseur['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }
@@ -435,7 +435,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_facture['nb']; print $product->stats_facture['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_facture['qty']; print price($product->stats_facture['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }
@@ -453,7 +453,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_facture_fournisseur['nb']; print $product->stats_facture_fournisseur['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_facture_fournisseur['qty']; print price($product->stats_facture_fournisseur['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }
@@ -472,7 +472,7 @@ function show_stats_for_company($product, $socid)
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_contrat['nb']; print $product->stats_contrat['nb'];
print '</td><td class="right">'; print '</td><td class="right">';
print $product->stats_contrat['qty']; print price($product->stats_contrat['qty'], 1, $langs, 0, 0);
print '</td>'; print '</td>';
print '</tr>'; print '</tr>';
} }

View File

@@ -1262,12 +1262,12 @@ class pdf_einstein extends ModelePDFCommandes
{ {
if ($this->emetteur->logo) if ($this->emetteur->logo)
{ {
if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) $logodir = $conf->mycompany->dir_output;
{ if (!empty($conf->mycompany->multidir_output[$object->entity])) $logodir = $conf->mycompany->multidir_output[$object->entity];
$logo=$conf->mycompany->dir_output.'/logos/thumbs/'.$this->emetteur->logo_small; if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) {
} $logo = $logodir.'/logos/thumbs/'.$this->emetteur->logo_small;
else { } else {
$logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; $logo = $logodir.'/logos/'.$this->emetteur->logo;
} }
if (is_readable($logo)) if (is_readable($logo))
{ {

View File

@@ -1573,12 +1573,12 @@ class pdf_crabe extends ModelePDFFactures
{ {
if ($this->emetteur->logo) if ($this->emetteur->logo)
{ {
if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) $logodir = $conf->mycompany->dir_output;
{ if (!empty($conf->mycompany->multidir_output[$object->entity])) $logodir = $conf->mycompany->multidir_output[$object->entity];
$logo=$conf->mycompany->dir_output.'/logos/thumbs/'.$this->emetteur->logo_small; if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) {
} $logo = $logodir.'/logos/thumbs/'.$this->emetteur->logo_small;
else { } else {
$logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; $logo = $logodir.'/logos/'.$this->emetteur->logo;
} }
if (is_readable($logo)) if (is_readable($logo))
{ {

View File

@@ -1471,12 +1471,12 @@ class pdf_azur extends ModelePDFPropales
{ {
if ($this->emetteur->logo) if ($this->emetteur->logo)
{ {
if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) $logodir = $conf->mycompany->dir_output;
{ if (!empty($conf->mycompany->multidir_output[$object->entity])) $logodir = $conf->mycompany->multidir_output[$object->entity];
$logo=$conf->mycompany->dir_output.'/logos/thumbs/'.$this->emetteur->logo_small; if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) {
} $logo = $logodir.'/logos/thumbs/'.$this->emetteur->logo_small;
else { } else {
$logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; $logo = $logodir.'/logos/'.$this->emetteur->logo;
} }
if (is_readable($logo)) if (is_readable($logo))
{ {

View File

@@ -1509,12 +1509,12 @@ class pdf_cyan extends ModelePDFPropales
{ {
if ($this->emetteur->logo) if ($this->emetteur->logo)
{ {
if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) $logodir = $conf->mycompany->dir_output;
{ if (!empty($conf->mycompany->multidir_output[$object->entity])) $logodir = $conf->mycompany->multidir_output[$object->entity];
$logo=$conf->mycompany->dir_output.'/logos/thumbs/'.$this->emetteur->logo_small; if (empty($conf->global->MAIN_PDF_USE_LARGE_LOGO)) {
} $logo = $logodir.'/logos/thumbs/'.$this->emetteur->logo_small;
else { } else {
$logo=$conf->mycompany->dir_output.'/logos/'.$this->emetteur->logo; $logo = $logodir.'/logos/'.$this->emetteur->logo;
} }
if (is_readable($logo)) if (is_readable($logo))
{ {

View File

@@ -259,11 +259,11 @@ class DataPolicy
{ {
if ($sendtocc) if ($sendtocc)
{ {
$actionmsg .= dol_concatdesc($actionmsg, $langs->transnoentities('Bcc') . ": " . $sendtocc); $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('Bcc') . ": " . $sendtocc);
} }
$actionmsg .= dol_concatdesc($actionmsg, $langs->transnoentities('MailTopic') . ": " . $subject); $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('MailTopic') . ": " . $subject);
$actionmsg .= dol_concatdesc($actionmsg, $langs->transnoentities('TextUsedInTheMessageBody') . ":"); $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('TextUsedInTheMessageBody') . ":");
$actionmsg .= dol_concatdesc($actionmsg, $message); $actionmsg = dol_concatdesc($actionmsg, $message);
} }
// Send mail // Send mail
@@ -329,11 +329,11 @@ class DataPolicy
$actionmsg = $langs->transnoentities('MailSentBy') . ' ' . $from . ' ' . $langs->transnoentities('To') . ' ' . $sendto; $actionmsg = $langs->transnoentities('MailSentBy') . ' ' . $from . ' ' . $langs->transnoentities('To') . ' ' . $sendto;
if ($message) { if ($message) {
if ($sendtocc) { if ($sendtocc) {
$actionmsg .= dol_concatdesc($actionmsg, $langs->transnoentities('Bcc') . ": " . $sendtocc); $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('Bcc') . ": " . $sendtocc);
} }
$actionmsg .= dol_concatdesc($actionmsg, $langs->transnoentities('MailTopic') . ": " . $subject); $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('MailTopic') . ": " . $subject);
$actionmsg .= dol_concatdesc($actionmsg, $langs->transnoentities('TextUsedInTheMessageBody') . ":"); $actionmsg = dol_concatdesc($actionmsg, $langs->transnoentities('TextUsedInTheMessageBody') . ":");
$actionmsg .= dol_concatdesc($actionmsg, $message); $actionmsg = dol_concatdesc($actionmsg, $message);
} }

View File

@@ -72,7 +72,7 @@ class DolLogsCollector extends MessagesCollector
{ {
global $conf; global $conf;
$uselogfile=$conf->global->DEBUGBAR_USE_LOGFILE; $uselogfile=$conf->global->DEBUGBAR_USE_LOG_FILE;
if ($uselogfile) if ($uselogfile)
{ {

View File

@@ -2174,7 +2174,7 @@ class ExpenseReport extends CommonObject
$sql = "SELECT DISTINCT ur.fk_user"; $sql = "SELECT DISTINCT ur.fk_user";
$sql.= " FROM ".MAIN_DB_PREFIX."user_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd"; $sql.= " FROM ".MAIN_DB_PREFIX."user_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd";
$sql.= " WHERE ur.fk_id = rd.id and rd.module = 'expensereport' AND rd.perms = 'approve'"; // Permission 'Approve'; $sql.= " WHERE ur.fk_id = rd.id and rd.module = 'expensereport' AND rd.perms = 'approve'"; // Permission 'Approve';
$sql.= "UNION"; $sql.= " UNION";
$sql.= " SELECT DISTINCT ugu.fk_user"; $sql.= " SELECT DISTINCT ugu.fk_user";
$sql.= " FROM ".MAIN_DB_PREFIX."usergroup_user as ugu, ".MAIN_DB_PREFIX."usergroup_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd"; $sql.= " FROM ".MAIN_DB_PREFIX."usergroup_user as ugu, ".MAIN_DB_PREFIX."usergroup_rights as ur, ".MAIN_DB_PREFIX."rights_def as rd";
$sql.= " WHERE ugu.fk_usergroup = ur.fk_usergroup AND ur.fk_id = rd.id and rd.module = 'expensereport' AND rd.perms = 'approve'"; // Permission 'Approve'; $sql.= " WHERE ugu.fk_usergroup = ur.fk_usergroup AND ur.fk_id = rd.id and rd.module = 'expensereport' AND rd.perms = 'approve'"; // Permission 'Approve';