// GET: Quiz/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var quiz = await _context.Quizzes.FindAsync(id); if (quiz == null) { return(NotFound()); } var questions = _context.Quizzes .Include(q => q.QuizQuestions) .ThenInclude(q => q.Question) .Single(m => m.Id == id) .QuizQuestions.Select(x => x.Question); var vm = new QuizQuestionsVm { Quiz = quiz, Questions = questions.ToList() }; return(View(vm)); }
// GET: Questions/Edit/5 public async Task <IActionResult> Edit(int?id, int quizId) { if (id == null) { return(NotFound()); } var question = await _context.Question.FindAsync(id); if (question == null) { return(NotFound()); } var vm = new QuizQuestionsVm { Question = question }; var quiz = await _context.Quizzes.FindAsync(quizId); vm.Quiz = quiz; return(View(vm)); }
// GET: Quiz/Details/5 public IActionResult Details(int?id) { if (id == null) { return(NotFound()); } var quiz = _context.Quizzes .FirstOrDefault(q => q.Id == id); if (quiz == null) { return(NotFound()); } var questions = _context.Quizzes .Include(q => q.QuizQuestions) .ThenInclude(q => q.Question) .Single(m => m.Id == id) .QuizQuestions.Select(x => x.Question); if (questions == null) { return(NotFound()); } var vm = new QuizQuestionsVm { Quiz = quiz, Questions = questions.ToList() }; return(View(vm)); }
public async Task <IActionResult> Create(QuizQuestionsVm vm, int trackIndex, string trackTitle) { if (ModelState.IsValid) { var question = vm.Question; var quiz = await _context.Quizzes.FindAsync(vm.Quiz.Id); var service = new PlaybackService(); var result = service.GetSpotifyTracks(vm.Question.TrackTitle).Result; question.TrackId = result.tracks.items[trackIndex].id; question.TrackTitle = result.tracks.items[trackIndex].name; question.QuizQuestions.Add(new QuizQuestion { Quiz = quiz }); _context.Add(question); await _context.SaveChangesAsync(); return(RedirectToAction("Create", new { quizId = quiz.Id, quizName = quiz.Name })); } return(View()); }
public async Task <IActionResult> Edit(int id, QuizQuestionsVm vm, int quizId) { if (id != vm.Question.Id) { return(NotFound()); } if (ModelState.IsValid) { try { var service = new PlaybackService(); var result = service.GetSpotifyTracks(vm.Question.TrackTitle).Result; vm.Question.TrackId = result.tracks.items[0].id; vm.Question.TrackTitle = result.tracks.items[0].name; _context.Update(vm.Question); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!QuestionExists(vm.Question.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Edit", "Quiz", new { vm.Quiz.Id })); } return(View(vm.Question.Id)); }
// GET: Quiz public async Task <IActionResult> Index() { QuizQuestionsVm vm = new QuizQuestionsVm { Quizzez = await _context.Quizzes.ToListAsync() }; return(View("Index", vm)); }
// GET: Questions/Create public IActionResult Create(int quizId, string quizName, int trackIndex, string trackTitle) { QuizQuestionsVm vm = new QuizQuestionsVm { Quiz = new Quiz { Id = quizId, Name = quizName }, TrackIndex = trackIndex, Question = new Question { TrackTitle = trackTitle } }; return(View(vm)); }
public async Task <IActionResult> Search(CreateQuizVM createquizvm, int quizId) { if (string.IsNullOrWhiteSpace(createquizvm.Question.TrackTitle)) { return(RedirectToAction("Index", "Quiz")); } var service = new PlaybackService(); var result = await service.GetSpotifyTracks(createquizvm.Question.TrackTitle); QuizQuestionsVm vm = new QuizQuestionsVm { Suggestions = result.tracks.items.Select(x => x.id).ToList(), Quiz = new Quiz { Id = quizId }, Question = new Question { TrackTitle = createquizvm.Question.TrackTitle } }; return(View("Index", vm)); }
public IActionResult Index(QuizQuestionsVm vm) { return(View(vm)); }