public bool DeleteSession(int sessionId) { //Check for registrations SessionCartManager sessMgr = new SessionCartManager(); var registrations = sessMgr.GetAllUsersBySession(sessionId); if (registrations == null) { using (wsadDbContext context = new wsadDbContext()) { Session sessionDTO = context.Sessions.Find(sessionId); context.Sessions.Remove(sessionDTO); context.SaveChanges(); } return(true); } else { return(false); } }
public IQueryable <SessionCart> GetAllUsersBySession(int id, bool asNoTracking = false) { wsadDbContext context = new wsadDbContext(); //Get USer Id from Username int?sessionId = id; //Check Username is valid if (sessionId == null) { return(null); } //Query Items IQueryable <SessionCart> results = context.SessionCarts .Include(row => row.Session) .Where(row => row.SessionId == sessionId.Value && row.IsActive == true); //Check for As No Tracking if (asNoTracking == false) { results = results.AsNoTracking(); } //Return Active Session Cart Items for this user return(results); }
internal IQueryable <ShoppingCart> GetAllItems(string username, bool asNoTracking = false) { wsadDbContext context = new wsadDbContext(); //Get USer Id from Username int?userId = context.Users.Where(x => x.UserName.ToLower() == username.ToLower()) .Select(x => x.Id).FirstOrDefault(); //Check Username is valid if (userId == null) { return(null); } //Query Items IQueryable <ShoppingCart> results = context.ShoppingCarts .Include(row => row.Product) .Where(row => row.UserId == userId.Value && row.IsActive == true); //Check for As No Tracking if (asNoTracking == false) { results = results.AsNoTracking(); } //Return Active Shopping Cart Items for this user return(results); }
public ActionResult Edit(int id) { //Get the user by Id EditViewModel editVM; using (wsadDbContext context = new wsadDbContext()) { //Get user from database User userDTO = context.Users.Find(id); if (userDTO == null) { return(Content("Invalid Id")); } //Create an EditViewModel editVM = new EditViewModel() { EmailAddress = userDTO.EmailAddress, FirstName = userDTO.FirstName, Id = userDTO.Id, LastName = userDTO.LastName, UserName = userDTO.UserName, IsAdmin = userDTO.IsAdmin }; } //Send the ViewModel to the view return(View(editVM)); }
public IQueryable <User> GetAllUsers() { wsadDbContext context = new wsadDbContext(); //SELECT * FROM USERS return(context.Users); }
public User UpdateUser(User userToUpdate) { using (wsadDbContext context = new wsadDbContext()) { //Get User From Database User currentUserDTO = context.Users.Find(userToUpdate.Id); //Copy Values currentUserDTO.EmailAddress = userToUpdate.EmailAddress; currentUserDTO.EmailOpt = userToUpdate.EmailOpt; currentUserDTO.FirstName = userToUpdate.FirstName; currentUserDTO.LastName = userToUpdate.LastName; currentUserDTO.UserName = userToUpdate.UserName; //Does password need to change? if (string.IsNullOrWhiteSpace(userToUpdate.Password) == false && currentUserDTO.Password != userToUpdate.Password) { currentUserDTO.Password = userToUpdate.Password; } //Save Changes context.SaveChanges(); return(currentUserDTO); } }
public ActionResult Index(ContactEmailViewModel contactMessage) { //Validate contact message input if (contactMessage == null) { ModelState.AddModelError("", "No Message has been provided!"); return(View()); } if (string.IsNullOrWhiteSpace(contactMessage.Name) || string.IsNullOrWhiteSpace(contactMessage.Email) || string.IsNullOrWhiteSpace(contactMessage.Message)) { ModelState.AddModelError("", "All fields are required!"); return(View()); } //Create an email message object System.Net.Mail.MailMessage email = new System.Net.Mail.MailMessage(); //Populate the object email.To.Add("*****@*****.**"); email.From = new System.Net.Mail.MailAddress(contactMessage.Email); email.Subject = "This is our email to you!"; email.Body = string.Format( "Name: {0}\r\nMessage: {1}", contactMessage.Name, contactMessage.Message ); email.IsBodyHtml = false; //Setup an SMTP client to send the messages System.Net.Mail.SmtpClient smptClient = new System.Net.Mail.SmtpClient(); smptClient.Host = "smtp.fuse.net"; //Send the message smptClient.Send(email); //Create an instance on our DbContext using (wsadDbContext context = new wsadDbContext()) { //Create Correspondence DTO Correspondence newCorrespondenceDTO = new Correspondence() { Name = contactMessage.Name, Email = contactMessage.Email, Message = contactMessage.Message }; //Add to DbContext context.Correspondences.Add(newCorrespondenceDTO); //Save Changes context.SaveChanges(); } //Notify the user that the message was sent return(View("emailConfirmation")); }
public Session AddSession(Session template) { using (wsadDbContext context = new wsadDbContext()) { Session newSessionObj = context.Sessions.Add(template); context.SaveChanges(); return(newSessionObj); } }
public void DeleteUser(int userId) { using (wsadDbContext context = new wsadDbContext()) { User userDTO = context.Users.Find(userId); context.Users.Remove(userDTO); context.SaveChanges(); } }
public User AddUser(User template) { using (wsadDbContext context = new wsadDbContext()) { User newUserObj = context.Users.Add(template); context.SaveChanges(); return(newUserObj); } }
public void DeleteRegistration(int sessionCartId) { using (wsadDbContext context = new wsadDbContext()) { SessionCart sessionCartDTO = context.SessionCarts.Find(sessionCartId); context.SessionCarts.Remove(sessionCartDTO); context.SaveChanges(); } }
internal IQueryable <SessionCart> GetAllSessionCarts(bool asNoTracking = false) { wsadDbContext context = new wsadDbContext(); IQueryable <SessionCart> results = context.SessionCarts; if (asNoTracking == false) { results = results.AsNoTracking(); } return(results); }
internal IQueryable <Product> GetAllProducts(bool asNoTracking = false) { wsadDbContext context = new wsadDbContext(); IQueryable <Product> results = context.Products; if (asNoTracking == false) { results = results.AsNoTracking(); } return(results); }
public ActionResult Login(AccountLoginViewModel login) { //Validate a username and password(no empties) if (login == null) { ModelState.AddModelError("", "Login is required."); return(View()); } if (string.IsNullOrWhiteSpace(login.Username)) { ModelState.AddModelError("", "Username is required."); return(View()); } if (string.IsNullOrWhiteSpace(login.Password)) { ModelState.AddModelError("", "Password is required."); return(View()); } bool isValid = false; using (wsadDbContext context = new wsadDbContext()) { //hash password //Query for the user based on username and password hash if (context.Users.Any( row => row.UserName.Equals(login.Username) && row.Password.Equals(login.Password) )) { isValid = true; } } //If invalid, send error if (!isValid) { ModelState.AddModelError("", "Invalid UserName or Password"); return(View()); } else { //Valid, redirect to user profile System.Web.Security.FormsAuthentication.SetAuthCookie(login.Username, login.RememberMe); return(Redirect(FormsAuthentication.GetRedirectUrl(login.Username, login.RememberMe))); } }
public ActionResult Edit(EditViewModel editVM) { //Varilables bool needsPasswordReset = false; //Validate the model if (!ModelState.IsValid) { return(View(editVM)); } //Check for a password change if (string.IsNullOrWhiteSpace(editVM.Password)) { //compare password with password confirm if (!editVM.Password.Equals(editVM.PasswordConfirm)) { ModelState.AddModelError("", "Both Passwords must match!"); } else { needsPasswordReset = true; } } //Get user from datbase using (wsadDbContext context = new wsadDbContext()) { //Get DTO User userDTO = context.Users.Find(editVM.Id); if (userDTO == null) { return(Content("Invalid User Id")); } //Set or update values from the view model userDTO.FirstName = editVM.FirstName; userDTO.EmailAddress = editVM.EmailAddress; userDTO.LastName = editVM.LastName; userDTO.UserName = editVM.UserName; userDTO.IsAdmin = editVM.IsAdmin; if (needsPasswordReset) { userDTO.Password = editVM.Password; } //Save changes context.SaveChanges(); } return(RedirectToAction("UserProfile")); }
internal IQueryable <UserRole> GetUserRoles(int userId) { //DbContext wsadDbContext context = new wsadDbContext(); //Select User_Roles based on user_Id IQueryable <UserRole> matches = context.UserRoles .Include(x => x.User) .Include(x => x.Role) .Where(row => row.User_Id == userId); //Return results -- matching user_roles return(matches); }
public ActionResult UserProfile() { //Build a DbContext wsadDbContext context = new wsadDbContext(); //Get my user DTO from database User userDTO = context.Users.FirstOrDefault(row => row.UserName == User.Identity.Name); //Build UserProfile ViewModel UserProfileViewModel userProfileVM = new UserProfileViewModel(userDTO); //Return View with ViewModel return(View(userProfileVM)); }
public SessionCart GetSessionCart(int id, bool asNoTracking = false) { wsadDbContext context = new wsadDbContext(); int sessCartId = id; //Check Username is valid if (sessCartId == null) { return(null); } //Query Items SessionCart results = GetAllSessionCarts().FirstOrDefault(row => row.Id == sessCartId); return(results); }
internal void AddToCart(string username, int sessionId) { //Establish Db Context using (wsadDbContext context = new wsadDbContext()) { //Capture User Id based on Username int?userId = context.Users .Where(row => row.UserName.ToLower() == username.ToLower()) .Select(row => row.Id) .FirstOrDefault(); if (userId.HasValue == false) { throw new ArgumentException("Invalid Username"); } /*Check if a session exists for this user's cart*/ //Does Session Id exist in database? if (context.Sessions.Any(row => row.Id == sessionId) == false) { throw new ArgumentException("Invalid Session Id"); } SessionCart cartItem = context.SessionCarts .Where(row => row.UserId == userId.Value && row.SessionId == sessionId) .FirstOrDefault(); //No session exists -- add new session cartItem = new SessionCart() { UserId = userId.Value, SessionId = sessionId, IsActive = true, DateAdded = DateTime.Now, }; context.SessionCarts.Add(cartItem); //Update Database context.SaveChanges(); } }
// GET: SessionManager public ActionResult Index() { List <SessionManager_SessionViewModel> collectionOfSessionVM = new List <SessionManager_SessionViewModel>(); //Setup a DbContext using (wsadDbContext context = new wsadDbContext()) { //Get all users var dbSessions = context.Sessions; //Move all users into a ViewModel object foreach (var sessionDTO in dbSessions) { collectionOfSessionVM.Add( new SessionManager_SessionViewModel(sessionDTO) ); } } //Send ViewModel Collection theView return(View(collectionOfSessionVM)); }
public Session UpdateSession(Session sessionToUpdate) { using (wsadDbContext context = new wsadDbContext()) { //Get session From Database Session currentSessionDTO = context.Sessions.Find(sessionToUpdate.Id); //Copy Values currentSessionDTO.Title = sessionToUpdate.Title; currentSessionDTO.Description = sessionToUpdate.Description; currentSessionDTO.Building = sessionToUpdate.Building; currentSessionDTO.Room = sessionToUpdate.Room; currentSessionDTO.DateAndTime = sessionToUpdate.DateAndTime; currentSessionDTO.TotalSeats = sessionToUpdate.TotalSeats; //Save Changes context.SaveChanges(); return(currentSessionDTO); } }
public IQueryable <SessionCart> GetAllSessionsByUser(string username, int?id, bool asNoTracking = false) { wsadDbContext context = new wsadDbContext(); int?userId; //If username is not null, get USer Id from Username if (username != null) { userId = context.Users.Where(x => x.UserName.ToLower() == username.ToLower()) .Select(x => x.Id).FirstOrDefault(); } else { userId = id; } //Check Username is valid if (userId == null) { return(null); } //Query Items IQueryable <SessionCart> results = context.SessionCarts .Include(row => row.Session) .Where(row => row.UserId == userId.Value && row.IsActive == true); //Check for As No Tracking if (asNoTracking == false) { results = results.AsNoTracking(); } //Return Active Session Cart Items for this user return(results); }
internal void AddToCart(string username, int productId) { //Establish Db Context using (wsadDbContext context = new wsadDbContext()) { //Capture User Id based on Username int?userId = context.Users .Where(row => row.UserName.ToLower() == username.ToLower()) .Select(row => row.Id) .FirstOrDefault(); if (userId.HasValue == false) { throw new ArgumentException("Invalid Username"); } /*Check if a product exists for this user's cart*/ //Does Product Id exist in database? if (context.Products.Any(row => row.Id == productId) == false) { throw new ArgumentException("Invalid Product Id"); } ShoppingCart cartItem = context.ShoppingCarts .Where(row => row.UserId == userId.Value && row.ProductId == productId) .FirstOrDefault(); //If product exists -- add one to the quantity if (cartItem != null) { //Is it Active? if (cartItem.IsActive == false) { cartItem.IsActive = true; cartItem.Quantity = 1; } else { //Existing Active Item cartItem.Quantity++; //Add one to the quantity } } else { //No product exists -- add new product cartItem = new ShoppingCart() { UserId = userId.Value, ProductId = productId, Quantity = 1, IsActive = true, DateAdded = DateTime.Now, }; context.ShoppingCarts.Add(cartItem); } //Update Database context.SaveChanges(); } }
public ActionResult Create(AccountCreateViewModel createdUser) { //Validate the account information if (!ModelState.IsValid) { return(View(createdUser)); } if (createdUser == null) { ModelState.AddModelError("", "No information was given"); } if (string.IsNullOrWhiteSpace(createdUser.FirstName) || string.IsNullOrWhiteSpace(createdUser.LastName) || string.IsNullOrWhiteSpace(createdUser.EmailAddress) || string.IsNullOrWhiteSpace(createdUser.Gender) || string.IsNullOrWhiteSpace(createdUser.UserName) || string.IsNullOrWhiteSpace(createdUser.Password) || string.IsNullOrWhiteSpace(createdUser.ConfirmPassword)) { ModelState.AddModelError("", "All fields are required"); return(View()); } if (!createdUser.Password.Equals(createdUser.ConfirmPassword)) { ModelState.AddModelError("", "Your password does not match"); return(View()); } //Create Database connectoin using (wsadDbContext context = new wsadDbContext()) { if (context.Users.Any( row => row.UserName.Equals(createdUser.UserName) )) { ModelState.AddModelError("", "Username " + createdUser.UserName + " already exists. Please select another."); createdUser.UserName = ""; return(View(createdUser)); } //Setup insert into database Models.DataAccess.User newUserObj; newUserObj = new Models.DataAccess.User() { FirstName = createdUser.FirstName, LastName = createdUser.LastName, EmailAddress = createdUser.EmailAddress, Gender = createdUser.Gender, UserName = createdUser.UserName, Password = createdUser.Password, EmailOpt = createdUser.EmailOpt, IsAdmin = createdUser.IsAdmin }; //Commit the insert newUserObj = context.Users.Add(newUserObj); context.SaveChanges(); } //Show user creation page with inforation they gave TempData["Message"] = "Account Creation Successful"; return(RedirectToAction("Login")); //return View("Confirmation", createdUser); }