public IActionResult Repository() { if (!this.User.IsAuthenticated) { return(new RedirectResult("/home/index")); } string username = this.User.Name; using (var db = new SimpleMVCDbContext()) { var user = db.Users.FirstOrDefault(u => u.Username == username); if (user == null) { return(this.Login("Sorry! User authentication error. Please try again!")); } var notes = db.Notes.Where(n => n.UserId == user.Id && n.IsDeleted == false).ToList(); StringBuilder sb = new StringBuilder(); foreach (var note in notes) { sb.AppendLine(string.Format(PartialViews.NoteView, note.Id, note.Title, note.Content)); } string result = sb.ToString(); this.Model["allNotes"] = result; } return(View()); }
public IActionResult Register(RegisterUserBindingModel model) { if (!this.IsValidModel(model)) { this.Model["message"] = "Invalid data in the fields!"; return(this.View()); } string username = model.Username; string passHash = PasswordUtilities.GetHash(model.Password); User user = new User(username, passHash); using (var db = new SimpleMVCDbContext()) { if (!db.Users.Select(u => u.Username).Contains(username)) { db.Users.Add(user); db.SaveChanges(); return(this.Login("Successful registration!")); } this.Model["message"] = "Username is allready taken!"; } return(this.View()); }
public IActionResult New(AddNoteBindingModel model) { if (!this.IsValidModel(model)) { this.Model["message"] = "Can't save invalid note!"; } else { using (var db = new SimpleMVCDbContext()) { var user = db.Users.FirstOrDefault(u => u.Username == this.User.Name); if (user == null) { this.Model["message"] = "No such user!"; return(View()); } var note = new Note(model.Title, model.Content, user.Id); user.Notes.Add(note); db.SaveChanges(); } this.Model["message"] = "Saved"; } return(this.View()); }
public static void Main() { using (var dbContext = new SimpleMVCDbContext()) { dbContext.Database.Migrate(); } WebServer server = new WebServer(55000, new ControllerRouter()); MvcEngine.Run(server); }
public IActionResult Delete(int Id) { using (var db = new SimpleMVCDbContext()) { var note = db.Notes.Find(Id); note.IsDeleted = true; db.SaveChanges(); } return(new RedirectResult("/user/repository")); }
public IActionResult Edit(EditNoteBindingModel model) { using (var db = new SimpleMVCDbContext()) { var note = db.Notes.Find(model.Id); note.Title = model.Title; note.Content = model.Content; db.SaveChanges(); } return(new RedirectResult("/user/repository")); }
public IActionResult Edit(int Id) { this.Model["message"] = "Editing"; using (var db = new SimpleMVCDbContext()) { var note = db.Notes.Find(Id); this.Model["Id"] = note.Id.ToString(); this.Model["Title"] = note.Title; this.Model["Content"] = note.Content; } return(this.View()); }
public IActionResult <AllUsernamesViewModel> All() { List <string> usernames = null; using (var db = new SimpleMVCDbContext()) { usernames = db.Users.Select(u => u.Username).ToList(); } var viewModel = new AllUsernamesViewModel() { Usernames = usernames }; return(View(viewModel)); }
public IActionResult Register(RegisterUserBindingModel model) { string username = model.Username; string passHash = PasswordUtilities.GetHash(model.Password); User user = new User(username, passHash); using (var db = new SimpleMVCDbContext()) { db.Users.Add(user); db.SaveChanges(); } return(View()); }
public static void Main() { using (var dbContext = new SimpleMVCDbContext()) { dbContext.Database.Migrate(); } int port = 55000; WebServer server = new WebServer( port, new ControllerRouter(), new ResourceRouter() ); MvcEngine.Run(server); }
public IActionResult <UserProfileViewModel> Profile(AddNoteBindingModel model) { using (var db = new SimpleMVCDbContext()) { User user = db.Users.Find(model.UserId); Note note = new Note() { Title = model.Title, Content = model.Content }; user.Notes.Add(note); db.SaveChanges(); } return(this.Profile(model.UserId)); }
public IActionResult <UserProfileViewModel> Profile(int id) { User user = null; List <Note> notes = null; using (var db = new SimpleMVCDbContext()) { user = db.Users.FirstOrDefault(u => u.Id == id); notes = db.Notes.Where(n => n.UserId == id).ToList(); } var viewModel = new UserProfileViewModel() { UserId = user.Id, Username = user.Username, Notes = notes.Select(n => new NoteViewModel(n.Title, n.Content)) }; return(View(viewModel)); }
public IActionResult Login(RegisterUserBindingModel model) { string username = model.Username; string passHash = PasswordUtilities.GetHash(model.Password); using (var db = new SimpleMVCDbContext()) { User user = db.Users.FirstOrDefault(u => u.Username == username && u.PasswordHash == passHash); if (user == null) { this.Model["message"] = "Invalid username or password!"; return(View()); } this.SignIn(user.Username); } return(new RedirectResult("/home/index")); }