diff --git a/e107_admin/filemanager.php b/e107_admin/filemanager.php index 08c2e6e70..bffe62fca 100644 --- a/e107_admin/filemanager.php +++ b/e107_admin/filemanager.php @@ -37,6 +37,7 @@ $pubfolder = (str_replace("../","",e_QUERY) == str_replace("../","",e_UPLOAD)) ? $imagedir = e_IMAGE."filemanager/"; +$message = ''; $dir_options[0] = FMLAN_47; $dir_options[1] = FMLAN_35; @@ -130,15 +131,41 @@ if (isset($_POST['upload'])) exit; } $uploadList = array(); - $pref['upload_storagetype'] = "1"; - require_once(e_HANDLER."upload_handler.php"); + require_once(e_HANDLER.'upload_handler.php'); $files = $_FILES['file_userfile']; - foreach($files['name'] as $key => $name) + $spacer = ''; + foreach($files['name'] as $key => $name) { - if ($files['size'][$key]) + if ($name) { - $uploaded = file_upload(e_BASE.$_POST['upload_dir'][$key]); - $uploadList[] = $_POST['upload_dir'][$key].$uploaded[0]['name']; + if ($files['error'][$key]) + { + $message .= $spacer.FMLAN_10.' '.$files['error'][$key].': '.$name; + } + elseif ($files['size'][$key]) + { + $uploaded = file_upload(e_BASE.$_POST['upload_dir'][$key]); + if (($uploaded === FALSE) || !is_array($uploaded)) + { + $message .= $spacer.FMLAN_51.$name; + $spacer = '
'; + } + else + { + foreach ($uploaded as $k => $inf) + { + if ($inf['error'] == 0) + { + $uploadList[] = $_POST['upload_dir'][$key].$uploaded[0]['name']; + } + else + { // Most likely errors trapped earlier. + $message .= $spacer.FMLAN_10.' '.$inf['error'].' ('.$inf['message'].'): '.$inf['rawname']; + } + $spacer = '
'; + } + } + } } } if (count($uploadList)) @@ -149,7 +176,7 @@ if (isset($_POST['upload'])) -if (isset($message)) +if ($message) { $ns->tablerender("", "
".$message."
"); } diff --git a/e107_languages/English/admin/lan_filemanager.php b/e107_languages/English/admin/lan_filemanager.php index 13e9d7da3..7c5ef03c8 100644 --- a/e107_languages/English/admin/lan_filemanager.php +++ b/e107_languages/English/admin/lan_filemanager.php @@ -18,7 +18,7 @@ // define("FMLAN_7", "No file was uploaded."); // define("FMLAN_8", "Uploaded file size 0 bytes"); // define("FMLAN_9", "The file did not upload. Filename"); -// define("FMLAN_10", "Error"); +define('FMLAN_10', 'Error'); // define("FMLAN_11", "Probably incorrect permissions on upload directory."); define("FMLAN_12", "file"); define("FMLAN_13", "files"); @@ -61,6 +61,7 @@ define("FMLAN_47", "User Uploads"); define("FMLAN_48", "Move selected to"); define("FMLAN_49", "Please confirm you wish to move the selected files."); define("FMLAN_50", "Move"); +define('FMLAN_51', 'Unidentified error: ');