private Vendor GetLoggedInVendor() { using (var db = new MnyouContext()) { var userId = User.Claims.First(c => c.Type == ClaimTypes.PrimarySid).Value; return(db.Vendors.First(v => v.VendorId == Int32.Parse(userId))); } }
public IActionResult LogIn(LogInViewModel vm) { if (User.Identity.IsAuthenticated) { return(RedirectToAction("Index", "Home")); } ViewBag.method = Request.Method; if (ViewBag.method == "POST") { using (var db = new MnyouContext()) { var vendor = db.Vendors.FirstOrDefault(v => v.Email == vm.Email && v.Password == vm.Password); if (vendor != null) { LogInVendor(vendor); return(RedirectToAction("Details", new { id = vendor.Slug })); } else { ModelState.AddModelError("base", "Your email address or password could not be found."); } } } return(View(vm)); }
public IActionResult Index() { List <Vendor> vendors; using (var db = new MnyouContext()) { vendors = db.Vendors.Take(5).ToList(); } return(View(vendors)); }
public IActionResult Index() { List <Vendor> vendors; using (var db = new MnyouContext()) { vendors = db.Vendors.OrderBy(v => v.Name).ToList(); } return(View(vendors)); }
public IActionResult Search(string q) { ViewBag.SearchString = q; List <Vendor> vendors; using (var db = new MnyouContext()) { vendors = db.Vendors.Where(v => v.Name.Contains(q) || v.Bio.Contains(q) || v.City.Contains(q) ).OrderBy(v => v.Name).ToList(); } return(View(vendors)); }
public IActionResult Create(Vendor vendor) { ViewBag.method = Request.Method; if (ModelState.IsValid) { using (var db = new MnyouContext()) { vendor.GenerateSlug(); db.Vendors.Add(vendor); db.SaveChanges(); } LogInVendor(vendor); return(RedirectToAction("ThankYou")); } return(View(vendor)); }
public IActionResult Details(string id) { Vendor vendor; using (var db = new MnyouContext()) { vendor = db.Vendors.FirstOrDefault(v => v.Slug == id); } if (vendor == null) { return(RedirectToAction("Index")); } return(View(vendor)); }
public IActionResult Edit(Vendor postedVendor) { ViewBag.method = Request.Method; var vendor = GetLoggedInVendor(); vendor.CopyValuesFrom(postedVendor); ModelState.Clear(); TryValidateModel(vendor); if (ModelState.IsValid) { using (var db = new MnyouContext()) { vendor.GenerateSlug(); db.Vendors.Update(vendor); db.SaveChanges(); } ModelState.AddModelError("base", "Your changes have been saved."); } return(View(vendor)); }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { loggerFactory.AddConsole(Configuration.GetSection("Logging")); loggerFactory.AddDebug(); if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseBrowserLink(); } else { app.UseExceptionHandler("/Home/Error"); } app.UseCookieAuthentication(new CookieAuthenticationOptions() { AuthenticationScheme = "MyCookieMiddlewareInstance", LoginPath = new PathString("/Vendors/LogIn"), AccessDeniedPath = new PathString("/"), AutomaticAuthenticate = true, AutomaticChallenge = true }); using (var context = new MnyouContext()) { context.Database.Migrate(); } app.UseStaticFiles(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); }