public ActionResult Create([Bind(Include = "Name, Sport, Country, Town, Address")] CreateGroupBindingModel bindingModel) { if (ModelState.IsValid) { var userId = HttpContext.User.Identity.GetUserId(); this._service.CreateGroup(bindingModel, userId); return(RedirectToAction("Index")); } return(View(bindingModel)); }
public ActionResult Create(CreateGroupBindingModel model) { if (!ModelState.IsValid) { return(this.View(model)); } var loggedUserId = this.User.Identity.GetUserId(); var currentTime = DateTime.Now; // transform string value to bool value var isPrivate = string.Compare(model.IsPrivate, "on", StringComparison.OrdinalIgnoreCase) == 0; var group = new Group { Name = model.Name, Description = model.Description, CreatedTime = currentTime, CreaterId = loggedUserId, LastTweetUpdateTime = currentTime, IsDisplay = true, Classification = Classification.未分类, IsPrivate = isPrivate }; if (isPrivate) { var user = this.Data.Users.Find(loggedUserId); if (user == null) { return(HttpNotFound($"User with id {loggedUserId} not found")); } group.Users.Add(user); } this.Data.Group.Add(group); this.Data.SaveChanges(); // add group corresponding plugins group.GroupPlugin = new GroupPlugin(); this.Data.Group.Update(group); this.Data.SaveChanges(); return(RedirectToAction("Get", new { groupId = group.Id, p = 1 })); }
public IHttpActionResult CreateGroup(CreateGroupBindingModel model) { if (model == null) { return(this.BadRequest("Missing data about group.")); } if (!this.ModelState.IsValid) { return(this.BadRequest(this.ModelState)); } if (this.Data.Groups.Any(g => g.Name == model.Name)) { return(this.BadRequest("The group already exists.")); } var currentUserId = this.User.Identity.GetUserId(); var currentUser = this.Data.Users.FirstOrDefault(u => u.Id == currentUserId); if (currentUser == null) { return(this.BadRequest("Invalid user token! Please login again!")); } var group = new Group() { Name = model.Name, Description = model.Description, CreatedOn = DateTime.Now, WallPicture = model.WallPicture, Owner = currentUser }; this.Data.Groups.Add(group); this.Data.SaveChanges(); var viewModel = CreateGroupViewModel.CreateGroupPreview(currentUser, group); return(this.Ok(viewModel)); }
public void CreateGroup(CreateGroupBindingModel bindingModel, string userId) { var group = Mapper.Map <CreateGroupBindingModel, Group>(bindingModel); group.Id = Guid.NewGuid().ToString(); var location = Mapper.Map <CreateGroupBindingModel, Location>(bindingModel); location.Id = Guid.NewGuid().ToString(); var player = Context.Users.Find(userId); if (player != null) { group.Admins.Add(player); group.Players.Add(player); } group.Location = location; Context.Groups.Add(group); Context.SaveChanges(); }
public IHttpActionResult CreateGroup(CreateGroupBindingModel bindingModel) { if (!this.ModelState.IsValid) { return(this.BadRequest(this.ModelState)); } if (bindingModel == null) { return(this.BadRequest("Invalid data")); } var currentUserId = this.UserIdProvider.GetUserId(); var currentUser = this.Data.Users.Find(currentUserId); Group group = new Group { Name = bindingModel.Name, Description = bindingModel.Description, CoverImageData = null, CreatedOn = DateTime.Now }; if (bindingModel.CoverImageData != null && this.IsValidBase64Format(bindingModel.CoverImageData)) { group.CoverImageData = string.Format( "{0}{1}", "data:image/jpg;base64,", bindingModel.CoverImageData); } group.Members.Add(currentUser); group.Admins.Add(currentUser); currentUser.Groups.Add(group); this.Data.Groups.Add(group); this.Data.SaveChanges(); return(this.Ok()); }
public IHttpActionResult CreateGroup(CreateGroupBindingModel bindingModel) { if (!this.ModelState.IsValid) { return this.BadRequest(this.ModelState); } if (bindingModel == null) { return this.BadRequest("Invalid data"); } var currentUserId = this.UserIdProvider.GetUserId(); var currentUser = this.Data.Users.Find(currentUserId); Group group = new Group { Name = bindingModel.Name, Description = bindingModel.Description, CoverImageData = null, CreatedOn = DateTime.Now }; if (bindingModel.CoverImageData != null && this.IsValidBase64Format(bindingModel.CoverImageData)) { group.CoverImageData = string.Format( "{0}{1}", "data:image/jpg;base64,", bindingModel.CoverImageData); } group.Members.Add(currentUser); group.Admins.Add(currentUser); currentUser.Groups.Add(group); this.Data.Groups.Add(group); this.Data.SaveChanges(); return this.Ok(); }