public ActionResult Create(JoukkoVideo joukkovideo, HttpPostedFileBase file) { if (file != null && file.ContentLength > 0) { BlobStorage.uploadBlob(file, WebSecurity.CurrentUserId, joukkovideo.title, joukkovideo.categoryId); return RedirectToAction("Index"); } ViewBag.categories = new SelectList(db.Category, "ID", "Name"); ModelState.AddModelError("", "Please choose a file to upload"); return View(joukkovideo); }
public override void Run() { var sourceContainer = BlobStorage.container; while (true) { foreach (CloudBlockBlob sourceBlob in sourceContainer.ListBlobs()) { try { sourceBlob.FetchAttributes(); } catch { continue; } string title = sourceBlob.Metadata["title"]; int categoryId = int.Parse(sourceBlob.Metadata["category"]); int userId = int.Parse(sourceBlob.Metadata["userid"]); IAsset assetToBeProcessed = BlobToMedia.UseAzureStorageSdkToUpload(sourceBlob.Name); IAsset encodedAsset = MediaServices.encodeAsset(assetToBeProcessed.Id); MediaServices.DeleteAsset(assetToBeProcessed); string streamingUrl = MediaServices.GetStreamingURL(encodedAsset); sourceBlob.Delete(); JoukkoVideoDBContext db = new JoukkoVideoDBContext(); JoukkoVideo joukkovideo = new JoukkoVideo(); joukkovideo.path = streamingUrl; var user = db.UserProfiles.Single(u => u.UserId == userId); joukkovideo.user = user; joukkovideo.title = title; joukkovideo.category = db.Category.Single(c => c.ID == categoryId); db.JoukkoVideos.Add(joukkovideo); db.SaveChanges(); } Thread.Sleep(10000); } }
public ActionResult Edit(JoukkoVideo joukkovideo) { if (ModelState.IsValid) { if (joukkovideo.user.UserId == WebSecurity.CurrentUserId || Roles.GetRolesForUser().Contains("Admin")) { db.Entry(joukkovideo).State = EntityState.Modified; db.SaveChanges(); //return RedirectToAction("Index"); } else { ModelState.AddModelError("", "Permission denied"); } } return View(joukkovideo); }