public async Task <IActionResult> Edit(EditLectureBindingModel model) { var userId = this.userManager.GetUserId(this.User); if (model.VideoUpload == null) { await this.lectureService.Edit(model, userId); return(View(model)); } else { var inputAsset = await this.azureMediaService.CreateInputAssetAsync(model.VideoUpload); var outputAsset = await this.azureMediaService.CreateOutputAssetAsync(); var transform = await this.azureMediaService.GetOrCreateTransformAsync(); var job = await this.azureMediaService.SubmitJobAsync(inputAsset.Name, outputAsset.Name, transform.Name); await this.azureMediaService.WaitForJobToFinishAsync(transform.Name, job.Name); var streamingLocator = await this.azureMediaService.CreateStreamingLocatorAsync(outputAsset.Name); var getStreamingUrls = await this.azureMediaService.GetStreamingUrlsAsync(streamingLocator.Name); await this.azureMediaService.CleanUpAsync(transform.Name, inputAsset.Name); await this.lectureService.EditLectureDbAsync(model, userId, outputAsset.Name, getStreamingUrls[2]); return(Json("Valid")); } }
public IActionResult EditLecture(int id) { var lecture = this.db.Lectures.FirstOrDefault(l => l.Id == id && l.IsDeleted == false); if (lecture == null) { return(NotFound()); } var lectureModel = this.mapper.Map <LectureBindingModel>(lecture); var editLectureModel = new EditLectureBindingModel() { Lecture = lectureModel }; editLectureModel.Lecture.LectureId = id; editLectureModel.Resources = this.db.Resources .Where(r => r.LectureId == id && r.IsDeleted == false) .Select(r => new InfoViewModel() { Name = r.Title, Id = r.Id }) .ToList(); return(View(editLectureModel)); }
public async Task Edit(EditLectureBindingModel model, string userId) { var lecture = this.db.Lectures.FirstOrDefault(x => x.Id == model.Id && x.Course.InstructorId == userId); if (lecture == null) { throw new ArgumentNullException( string.Format(ExceptionMessages.InvalidLectureId, model.Id)); } this.db.Entry(lecture) .CurrentValues.SetValues(model); await this.db.SaveChangesAsync(); }
public IActionResult EditLecture(EditLectureBindingModel model) { if (!this.ModelState.IsValid) { return(this.View(model)); } var lecture = this.db.Lectures.FirstOrDefault(l => l.Id == model.Lecture.LectureId && l.IsDeleted == false); if (lecture == null) { return(NotFound()); } lecture.Title = model.Lecture.Title; lecture.Description = model.Lecture.Description; lecture.StartTime = model.Lecture.StartTime; lecture.EndTime = model.Lecture.EndTime; lecture.LectureHall = model.Lecture.LectureHall; this.db.SaveChanges(); return(Redirect(string.Format(this.ReturnUrl, model.Lecture.InstanceId))); }