From 7f218bd6ba33f401444bb16cd08bf5c6bc32da69 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Sat, 4 Aug 2012 02:20:51 +0200 Subject: [PATCH] Better error management --- htdocs/ecm/index.php | 57 ++++++++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 23 deletions(-) diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php index 290e3610625..8727c16a9ba 100644 --- a/htdocs/ecm/index.php +++ b/htdocs/ecm/index.php @@ -78,6 +78,8 @@ $form=new Form($db); $ecmdirstatic = new EcmDirectory($db); $userstatic = new User($db); +$error=0; + /* * Actions @@ -92,37 +94,46 @@ if (GETPOST("sendit") && ! empty($conf->global->MAIN_UPLOAD_DOC)) else $relativepath=GETPOST('section_dir'); $upload_dir = $conf->ecm->dir_output.'/'.$relativepath; - if (dol_mkdir($upload_dir) >= 0) + if (empty($_FILES['userfile']['tmp_name'])) { - $resupload = dol_move_uploaded_file($_FILES['userfile']['tmp_name'], $upload_dir . "/" . dol_unescapefile($_FILES['userfile']['name']),0, 0, $_FILES['userfile']['error']); - if (is_numeric($resupload) && $resupload > 0) + $error++; + setEventMessage($langs->trans("ErrorFieldRequired",$langs->transnoentitiesnoconv("File")), 'errors'); + } + + if (! $error) + { + if (dol_mkdir($upload_dir) >= 0) { - //$mesg = '
'.$langs->trans("FileTransferComplete").'
'; - //print_r($_FILES); - $result=$ecmdir->changeNbOfFiles('+'); + $resupload = dol_move_uploaded_file($_FILES['userfile']['tmp_name'], $upload_dir . "/" . dol_unescapefile($_FILES['userfile']['name']),0, 0, $_FILES['userfile']['error']); + if (is_numeric($resupload) && $resupload > 0) + { + //$mesg = '
'.$langs->trans("FileTransferComplete").'
'; + //print_r($_FILES); + $result=$ecmdir->changeNbOfFiles('+'); + } + else + { + $langs->load("errors"); + if ($resupload < 0) // Unknown error + { + setEventMessage($langs->trans("ErrorFileNotUploaded"), 'errors'); + } + else if (preg_match('/ErrorFileIsInfectedWithAVirus/',$resupload)) // Files infected by a virus + { + setEventMessage($langs->trans("ErrorFileIsInfectedWithAVirus"), 'errors'); + } + else // Known error + { + setEventMessage($langs->trans($resupload), 'errors'); + } + } } else { $langs->load("errors"); - if ($resupload < 0) // Unknown error - { - setEventMessage($langs->trans("ErrorFileNotUploaded"), 'errors'); - } - else if (preg_match('/ErrorFileIsInfectedWithAVirus/',$resupload)) // Files infected by a virus - { - setEventMessage($langs->trans("ErrorFileIsInfectedWithAVirus"), 'errors'); - } - else // Known error - { - setEventMessage($langs->trans($resupload), 'errors'); - } + $mesg = '
'.$langs->trans("ErrorFailToCreateDir",$upload_dir).'
'; } } - else - { - $langs->load("errors"); - $mesg = '
'.$langs->trans("ErrorFailToCreateDir",$upload_dir).'
'; - } }