diff --git a/htdocs/core/class/utils.class.php b/htdocs/core/class/utils.class.php
index 3ab8ff836bf..c0dcc67378d 100644
--- a/htdocs/core/class/utils.class.php
+++ b/htdocs/core/class/utils.class.php
@@ -1255,9 +1255,10 @@ class Utils
* @param string $message Message
* @param string $filename List of files to attach (full path of filename on file system)
* @param string $filter Filter file send
+ * @param string $sizelimit Limit size to send file
* @return int 0 if OK, < 0 if KO (this function is used also by cron so only 0 is OK)
*/
- public function sendBackup($sendto = '', $from = '', $subject = '', $message = '', $filename = '', $filter = '')
+ public function sendBackup($sendto = '', $from = '', $subject = '', $message = '', $filename = '', $filter = '', $sizelimit = 100000000)
{
global $conf, $langs;
@@ -1315,9 +1316,13 @@ class Utils
}
if ($filepath) {
- if ($filesize > 100000000) {
- $output = 'Sorry, last backup file is too large to be send by email';
- $error++;
+ if ($filesize > $sizelimit) {
+ $message .= '
'.$langs->trans("BackupIsTooLargeSend");
+ $documenturl = $dolibarr_main_url_root.'/document.php?modulepart=systemtools&atachement=1&file=backup/'.urlencode($filename[0]);
+ $message .= '
Lien de téléchargement';
+ $filepath = '';
+ $mimetype = '';
+ $filename = '';
}
} else {
$output = 'No backup file found';
diff --git a/htdocs/langs/en_US/cron.lang b/htdocs/langs/en_US/cron.lang
index 70fb9e387b9..5e4da60f0f2 100644
--- a/htdocs/langs/en_US/cron.lang
+++ b/htdocs/langs/en_US/cron.lang
@@ -84,6 +84,7 @@ MakeLocalDatabaseDumpShort=Local database backup
MakeLocalDatabaseDump=Create a local database dump. Parameters are: compression ('gz' or 'bz' or 'none'), backup type ('mysql', 'pgsql', 'auto'), 1, 'auto' or filename to build, number of backup files to keep
MakeSendLocalDatabaseDumpShort=Send local database backup
MakeSendLocalDatabaseDump=Send local database backup by email. Parameters are: to, from, subject, message, filename (Name of file sent), filter ('sql' for backup of database only)
+BackupIsTooLargeSend=Sorry, last backup file is too large to be send by email
CleanUnfinishedCronjobShort=Clean unfinished cronjob
CleanUnfinishedCronjob=Clean cronjob stuck in processing when the process is no longer running
WarningCronDelayed=Attention, for performance purpose, whatever is next date of execution of enabled jobs, your jobs may be delayed to a maximum of %s hours, before being run.