Issue 16229. Validation for empty filenames when uploading media

This commit is contained in:
smwhit
2010-04-07 15:31:16 +01:00
parent 40d7c95b72
commit 8fcbea38c2
4 changed files with 56 additions and 4 deletions

View File

@@ -4,6 +4,7 @@ using System.IO;
using System.Text;
using System.Web;
using System.Web.Mvc;
using Orchard.Extensions;
using Orchard.Localization;
using Orchard.Media.Models;
using Orchard.Media.Services;
@@ -139,21 +140,32 @@ namespace Orchard.Media.Controllers {
}
[HttpPost]
public ActionResult Add() {
public ActionResult Add()
{
var viewModel = new MediaItemAddViewModel();
try {
try
{
UpdateModel(viewModel);
if (!Services.Authorizer.Authorize(Permissions.UploadMediaFiles, T("Couldn't upload media file")))
return new HttpUnauthorizedResult();
foreach (string fileName in Request.Files) {
if(Request.Files[0].FileName.IsNullOrEmptyTrimmed()) {
ModelState.AddModelError("File", "Select a file to upload");
}
if (!ModelState.IsValid)
return View(viewModel);
foreach (string fileName in Request.Files)
{
HttpPostedFileBase file = Request.Files[fileName];
_mediaService.UploadMediaFile(viewModel.MediaPath, file);
}
return RedirectToAction("Edit", new { name = viewModel.FolderName, mediaPath = viewModel.MediaPath });
}
catch (Exception exception) {
catch (Exception exception)
{
Services.Notifier.Error("Uploading media file failed: " + exception.Message);
return View(viewModel);
}