/// <summary> /// Returns a User, or null, chosen through the store name. /// </summary> /// <param name="db">The DBModelContainer to be used to retrieve the user.</param> /// <param name="storeName">The name of the store.</param> /// <returns>A DigistoreWithMVC.Models.User or null </returns> internal static User GetUserByStorename(DigiStoreDBModelContainer db, string storeName) { int storeId = (from s in db.Stores where s.Name.ToLower() == storeName.ToLower() select s.Id).FirstOrDefault(); User checkUser = (from u in db.Users where u.Store.Id == storeId select u).FirstOrDefault(); return(checkUser); }
public ActionResult Contact(HomeViewModels model) { if (ModelState.IsValid) { using (DigiStoreDBModelContainer db = new DigiStoreDBModelContainer()) { //messing with this for the time being Review newReview = db.Reviews.Create(); newReview.Id = db.Reviews.Count(); if (model.ReviewText != null) { newReview.ReviewText = model.ReviewText; } newReview.Rating = 0; newReview.Date = DateTime.Now; newReview.ReviewerName = "*****@*****.**"; db.Reviews.Add(newReview); db.SaveChanges(); ViewBag.Message = "Review Submitted! Thanks!"; return(View()); } } else { return(View(model)); } }
internal static User GetUserByEmail(DigiStoreDBModelContainer db, string email) { User currentUser = (from u in db.Users where u.Email.ToLower() == email.ToLower() select u).FirstOrDefault(); return(currentUser); }
/// <summary> /// Returns the currently logged in User, or null. /// </summary> /// <param name="db">The DBModelContainer to be used to retrieve the user.</param> /// <returns>A DigistoreWithMVC.Models.User or null </returns> internal static User GetCurrentUser(DigiStoreDBModelContainer db) { User currentUser = (from u in db.Users where u.Email.ToLower() == HttpContext.Current.User.Identity.Name.ToLower() select u).FirstOrDefault(); return(currentUser); }
internal static List <Store> GetStores(DigiStoreDBModelContainer db) { List <Store> allStores = (from stores in db.Stores where stores.StorePicture != null select stores).ToList(); return(allStores); }
internal static void CreateUserPaymentMethodIfNotExisting(DigiStoreDBModelContainer db, User user) { User currentUser = ModelHelpers.GetCurrentUser(db); if (currentUser != null) { PaymentMethod payment = currentUser.PaymentMethods.FirstOrDefault(); if (payment == null) { payment = new PaymentMethod(); payment.AccountNumber = ""; payment.PaymentType = ""; currentUser.PaymentMethods.Add(payment); } db.SaveChanges(); } }
internal static void CreateUserStoreIfNotExisting(DigiStoreDBModelContainer db, User user) { string[] DAYS_OF_THE_WEEK = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; // If the user is not null, we continue if (user != null) { // If the user's store does not exist, we create it. if (user.Store == null) { user.Store = new Store(); user.Store.Address = ""; user.Store.City = ""; user.Store.Country = ""; user.Store.Name = user.UserName; user.Store.PostalCode = ""; user.Store.PhoneNumber = ""; user.Store.StateProv = ""; user.Store.StorePicture = ""; } // If the user's store doesn't have hours, we add them now. // This is seperate for existing stores that don't have hours as of yet to receive store hours. if (user.Store.StoreHours.Count == 0) { for (int i = user.Store.StoreHours.Count; i < 7; i++) { StoreHours storeHours = new StoreHours(); storeHours.StoreId = user.Store.Id; storeHours.DayOfTheWeek = DAYS_OF_THE_WEEK[i]; storeHours.StartTime = new DateTime(2015, 1, 1, 1, 0, 0); storeHours.EndTime = new DateTime(2015, 1, 1, 1, 0, 0); user.Store.StoreHours.Add(storeHours); } } db.SaveChanges(); } }
public ActionResult SubmitReview(SubmitReviewViewModel model) { if (User.Identity.IsAuthenticated) { if (ModelState.IsValid) { using (DigiStoreDBModelContainer db = new DigiStoreDBModelContainer()) { User storeOwner = ModelHelpers.GetUserByEmail(db, model.StoreOwnerEmail); Review newReview = db.Reviews.Create(); if (model.ReviewText != null) { newReview.ReviewText = model.ReviewText; } if (model.ReviewRating != 0) { newReview.Rating = model.ReviewRating; } newReview.Date = DateTime.Now; User existingUser = ModelHelpers.GetCurrentUser(db); newReview.ReviewerName = existingUser.UserName; storeOwner.Reviews.Add(newReview); db.SaveChanges(); return(PartialView("_ReviewSuccess")); } } else { ViewBag.ReviewError = "Please enter 1-5 for the rating, and a review."; return(PartialView("_SubmitReview", model)); } } else { return(RedirectToAction("Login", "Account")); } }
internal static Item GetItemById(DigiStoreDBModelContainer db, int id) { Item item = (from i in db.Items where i.Id == id select i).FirstOrDefault(); return(item); }