public ActionResult Upload([Bind(Include = "Title,Description,IsPrivate,Kategoria")] MediaFile mediaFile, HttpPostedFileBase file) { var isFileValid = file != null && file.ContentLength > 0; mediaFile.ApplicationUserId = User.Identity.GetUserId(); if (!ModelState.IsValid || !isFileValid || !ServerTools.CategoriesList.List.Contains(mediaFile.Category)) { // ViewBag.Kategoria = new SelectList(ServerTools.CategoriesList.List); // return View(mediaFile); var ms = ModelState; Response.StatusCode = 400; /*var result = JsonConvert.SerializeObject(ModelState.Values); * return Content(result, "application/json");*/ var errors = ModelErrorsToDictionary(ModelState); if (!isFileValid) { errors.Add("File", "File not supported"); } return(Json(errors)); } mediaFile.IsBeingConverted = true; db.MediaFiles.Add(mediaFile); db.SaveChanges(); var dir = Server.MapPath("~/MediaData/Videos/" + mediaFile.Id); //todo: check if dir exists if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } var fileName = Path.GetFileName(file.FileName); var path = Path.Combine(dir, fileName); file.SaveAs(path); MediaService.ConvertVideo(fileName, mediaFile.Id); ViewBag.Info = "Your video was successfully uploaded"; // return RedirectToAction("Pending","Manage"); Response.StatusCode = 200; return(Json("Success")); }
public ActionResult Upload([Bind(Include = "Title, Description, IsPrivate, Category")] Media mediaFile, HttpPostedFileBase file) { var isFileValid = (file != null && file.ContentLength > 0); mediaFile.ApplicationUserId = User.Identity.GetUserId(); if (!ModelState.IsValid || !isFileValid || !ServerParams.CategoriesList.List.Contains(mediaFile.Category)) { var ms = ModelState; Response.StatusCode = 400; var errors = ModelErrorsToDictionary(ModelState); if (!isFileValid) { errors.Add("File", "File not supported."); } return(Json(errors)); } mediaFile.IsBeingConverted = true; db.Media.Add(mediaFile); db.SaveChanges(); var dir = Server.MapPath("~/MediaData/Videos/" + mediaFile.Id); // todo: check if dir exists if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } var fileName = Path.GetFileName(file.FileName); var path = Path.Combine(dir, fileName); file.SaveAs(path); MediaService.ConvertVideo(fileName, mediaFile.Id); ViewBag.Info = "Your video was successfully uploaded"; Response.StatusCode = 200; return(Json("Success")); }