public async Task <IActionResult> Create(TrainingCreateViewModel model) { if (model.NumOfLevelOneGame + model.NumOfLevelTwoGame + model.NumOfLevelThreeGame > 20 || model.NumOfLevelOneGame + model.NumOfLevelTwoGame + model.NumOfLevelThreeGame < 1) { ModelState.AddModelError("NumOfLevelThreeGame", "The number of games in the training must be from 1 to 20"); } if (ModelState.IsValid) { var user = await _userManager.GetUserAsync(this.HttpContext.User); var training = new Training { Name = model.Name, Player = user, Created = DateTime.UtcNow, NumOfLevelOneGame = model.NumOfLevelOneGame, NumOfLevelTwoGame = model.NumOfLevelTwoGame, NumOfLevelThreeGame = model.NumOfLevelThreeGame, Games = new List <Game>() }; _context.Add(training); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "PersonalArea")); } return(View(model)); }
// GET: Trainings/Create public ActionResult Create() { var trainingCreateViewModel = new TrainingCreateViewModel(); trainingCreateViewModel.Tags = db.Tags.ToList(); return(View(trainingCreateViewModel)); }
public async Task <ActionResult> Create(TrainingCreateViewModel model) { if (!ModelState.IsValid) { return(Json(ModelState.ToDictionary())); } var createdTraining = await _trainingServices.CreateAsync(model, User.Identity.GetUserId()); return(Json(createdTraining)); }
public ActionResult Create(TrainingCreateViewModel model) { if (!this.ModelState.IsValid) { return(this.View(model)); } var training = this.Mapper.Map <Training>(model); this.trainings.Add(training); this.TempData["Success"] = "Item created!"; return(this.RedirectToAction("Index")); }
public async Task <TrainingListViewModel> CreateAsync(TrainingCreateViewModel model, string adminId) { if (string.IsNullOrEmpty(adminId)) { throw new ArgumentException("Не е намерен администартора, който създава Обучение!"); } if (!await _userManager.IsInRoleAsync(adminId, Enum.GetName(typeof(Role), Role.Administrator))) { throw new NotAuthorizedUserException("Потребителят няма право на това действие! Само админи имат право да създават обучения !"); } if (model.TrainingDate == null) { throw new ArgumentException("Не е въведена дата на обучението!"); } var training = new Model.Trainings { TrainingDate = (DateTime)model.TrainingDate, TrainingTheme = model.TrainingTheme, AdditionalDescription = model.AdditionalDescription, TrainingMaterialsFolderLink = model.TrainingMaterialsFolderLink }; _dbContext.Trainings.Add(training); await _dbContext.SaveChangesAsync(); #region notification var notificationToCreate = new NotificationCreateViewModel { NotificationTypeId = (int)NotificationType.Learning, NotificationLink = "/trainings/index?trainingId=" + training.Id, NotificationText = "Ще се проведе обучение на тема: " + training.TrainingTheme + " в " + training.TrainingDate.ToString("dddd, dd.MM.yyyyг. hh:mmч.") }; await _notificationCreator.CreateGlobalNotification(notificationToCreate, adminId); #endregion return(await Get(training.Id)); }
public ActionResult Create() { var date = DateTime.Now; var testTraining = new TrainingCreateViewModel() { Title = "Test Training 1", StartDate = date, EndDate = date.AddHours(5), }; var testTrack = new TrackCreateViewModel() { Title = "Test track 1", Ascent = 2500, Length = 80, AscentLength = 45, }; testTraining.Track = testTrack; return(this.View(testTraining)); }
public ActionResult Create(TrainingCreateViewModel model) { if (!this.ModelState.IsValid) { return this.View(model); } var training = this.Mapper.Map<Training>(model); this.trainings.Add(training); this.TempData["Success"] = "Item created!"; return this.RedirectToAction("Index"); }
public ActionResult Create() { var date = DateTime.Now; var testTraining = new TrainingCreateViewModel() { Title = "Test Training 1", StartDate = date, EndDate = date.AddHours(5), }; var testTrack = new TrackCreateViewModel() { Title = "Test track 1", Ascent = 2500, Length = 80, AscentLength = 45, }; testTraining.Track = testTrack; return this.View(testTraining); }