public ActionResult Create(CreateTweetViewModel model) { var user = this.database.Users.All() .FirstOrDefault(u => u.UserName == User.Identity.Name); if (user == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (ModelState.IsValid) { var tweet = new Tweet() { PostDate = DateTime.Now, Text = model.Text, User = user }; this.database.Tweets.Add(tweet); this.database.SaveChanges(); return(RedirectToAction("All")); } return(View(model)); }
private void AddNewTweet(CreateTweetViewModel model) { var tweetToSave = this.Mapper.Map <Tweet>(model); tweetToSave.ApplicationUserId = this.User.Identity.GetUserId(); var tags = this.tagExtractor.ExtractTags(tweetToSave.OriginalContent); if (tags.Count > 0) { foreach (var tag in tags) { var tagFromDatabase = this.tags.GetAll().FirstOrDefault(t => t.Name == tag.Name); if (tagFromDatabase != null) { tweetToSave.Tags.Add(tagFromDatabase); } else { tweetToSave.Tags.Add(tag); } } } var displayContent = this.tagRepalceService.ReplaceHashtagsWithLinks(tweetToSave.OriginalContent); tweetToSave.DisplayContent = displayContent; this.tweets.Add(tweetToSave); }
// GET: Tweet public ActionResult Create(CreateTweetViewModel model) { if (this.ModelState.IsValid) { this.AddNewTweet(model); return(this.RedirectToAction("Index", "Home")); } return(this.View("_CreateTweetPartial", model)); }
public ActionResult CreateTweet(CreateTweetViewModel model) { if (ModelState.IsValid) { var loggedUserId = User.Identity.GetUserId(); var tweet = new Tweet { CreatedAt = DateTime.Now, Content = model.Content, UserId = loggedUserId }; this.Data.Tweets.Add(tweet); this.Data.SaveChanges(); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public CreateTweetPage() { InitializeComponent(); BindingContext = new CreateTweetViewModel(); }