Ejemplo n.º 1
0
        public async Task <ActionResult> AssignToGroup(AddGroupsView model)
        {
            if (ModelState.IsValid)
            {
                var quiz = _db.Quizs.Include("GroupsList").FirstOrDefault(m => m.Id == model.QuizId);
                if (quiz == null)
                {
                    return(View(model));
                }
                if (quiz.GroupsList == null)
                {
                    quiz.GroupsList = new List <TeachingGroup>();
                }
                else
                {
                    quiz.GroupsList.Clear();
                    _db.SaveChanges();
                }

                foreach (var groupToAdd in model.GroupsList.Where(groupToAdd => groupToAdd.Selected))
                {
                    quiz.GroupsList.Add(_db.Groups.Find(groupToAdd.GroupId));
                }

                await _db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> AssignToGroup(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var quiz = await _db.Quizs.Include("GroupsList").FirstOrDefaultAsync(m => m.Id == id);

            if (quiz == null)
            {
                return(HttpNotFound());
            }
            var qroupsList = await _db.Groups.ToListAsync();

            var model = new AddGroupsView
            {
                QuizId     = quiz.Id,
                QuizName   = quiz.Name,
                GroupsList = qroupsList.Select(group => new GroupToAdd()
                {
                    GroupId  = group.Id,
                    Name     = group.Name,
                    Selected = false
                }).ToList()
            };

            foreach (var group in model.GroupsList.Where(group => quiz.GroupsList.Contains(_db.Groups.Find(group.GroupId))))
            {
                group.Selected = true;
            }
            ViewBag.Name   = quiz.Name;
            ViewBag.QuizId = quiz.Id;
            return(View(model));
        }