Esempio n. 1
0
        public ActionResult RemoveTrainer(TrainerPostData data)
        {
            var topicInDb   = _context.Topics.SingleOrDefault(p => p.Id == data.topicId);
            var trainerInDb = _context.UserInfoes
                              .OfType <TrainerInfo>()
                              .Include("Topics")
                              .SingleOrDefault(p => p.UserId == data.userId);

            if (topicInDb == null || trainerInDb == null)
            {
                return(HttpNotFound());
            }

            if (trainerInDb.Topics.SingleOrDefault(p => p.Id == topicInDb.Id) != null)
            {
                trainerInDb.Topics.Remove(topicInDb);
                _context.SaveChanges();

                this.AddNotification("Trainer removed!", NotificationType.SUCCESS);
            }
            else
            {
                this.AddNotification("Trainer not found", NotificationType.ERROR);
            }

            return(RedirectToAction("Details/" + data.topicId));
        }
Esempio n. 2
0
        public ActionResult AddTrainer(TrainerPostData data)
        {
            var topicInDb   = _context.Topics.SingleOrDefault(p => p.Id == data.topicId);
            var trainerInDb = _context.UserInfoes
                              .OfType <TrainerInfo>()
                              .Include("Topics")
                              .Include("User")
                              .SingleOrDefault(p => p.UserId == data.userId);

            if (topicInDb == null || trainerInDb == null)
            {
                return(HttpNotFound());
            }

            if (trainerInDb.Topics.SingleOrDefault(p => p.Id == topicInDb.Id) != null)
            {
                this.AddNotification(String.Format("{0} is already added to {1}", trainerInDb.User.UserName, topicInDb.Name), NotificationType.INFO);
            }
            else
            {
                trainerInDb.Topics.Add(topicInDb);
                _context.SaveChanges();

                this.AddNotification("Trainee added!", NotificationType.SUCCESS);
            }

            return(RedirectToAction("Details/" + data.topicId));
        }