public ActionResult ChooseName(ChooseNameViewModel model) { if (string.IsNullOrWhiteSpace(model.Name)) { ViewBag.ErrorMessage = Resources.name_cant_be_empty; return(View(model)); } if (!string.IsNullOrWhiteSpace(model.Email) && !IsValidEmail(model.Email)) { ViewBag.ErrorMessage = Resources.invalid_email; return(View(model)); } using (LittleGoatEntities entities = new LittleGoatEntities()) { if (entities.Player.Any(p => p.Name.ToLower() == model.Name.ToLower())) { ViewBag.ErrorMessage = Resources.name_already_used; return(View(model)); } else if (!string.IsNullOrWhiteSpace(model.Email) && entities.Player.Any(p => p.Email.Trim().ToLower() == model.Email.Trim().ToLower())) { ViewBag.ErrorMessage = Resources.email_already_used; return(View(model)); } Player player; string playerId = Request.Cookies["playerId"]?.Value; if (playerId == null || entities.Player.FirstOrDefault(p => p.Id == playerId) == null) { player = new Player() { Id = Guid.NewGuid().ToString(), Name = model.Name.Trim(), Email = model.Email?.Trim() }; entities.Player.Add(player); Response.Cookies["playerId"].Value = player.Id; Response.Cookies["playerId"].Expires = DateTime.UtcNow.AddYears(10); } else { entities.Player.Single(p => p.Id == playerId).Name = model.Name; } entities.SaveChanges(); } if (!string.IsNullOrEmpty(model.ReturnUrl)) { return(Redirect(model.ReturnUrl)); } else { return(RedirectToAction("Index", "Home")); } }
public void CreateSubFolder(PresetFolderViewModel folderViewModel) { var dialogVM = new ChooseNameViewModel(EncodingRes.ChooseNameSubfolder, new List <string>()); dialogVM.Name = EncodingRes.DefaultPresetFolderName; var windowManager = Ioc.Get <IWindowManager>(); windowManager.OpenDialog(dialogVM, windowManager.Find <EncodingWindowViewModel>()); if (dialogVM.DialogResult) { string subfolderName = dialogVM.Name; PresetFolder newFolder = PresetFolderStorage.AddFolder(subfolderName, folderViewModel.Id); folderViewModel.AddSubfolder(PresetFolderViewModel.FromPresetFolder(newFolder, this)); } }
public void RenameFolder(PresetFolderViewModel folderViewModel) { var dialogVM = new ChooseNameViewModel(EncodingRes.ChooseNewFolderName, new List <string>()); dialogVM.Name = folderViewModel.Name; var windowManager = Ioc.Get <IWindowManager>(); windowManager.OpenDialog(dialogVM, windowManager.Find <EncodingWindowViewModel>()); if (dialogVM.DialogResult) { string newName = dialogVM.Name; if (newName != folderViewModel.Name) { PresetFolderStorage.RenameFolder(folderViewModel.Id, newName); folderViewModel.Name = newName; // Remove and re-add the folder to get the folder in the right order. PresetFolderViewModel parentFolder = folderViewModel.Parent; parentFolder.RemoveSubfolder(folderViewModel); parentFolder.AddSubfolder(folderViewModel); } } }