public void DeleteElement(TEntity obj) { var o = dbSet.Remove(obj); context.SaveChanges(); context.Entry(obj).State = EntityState.Detached; }
public ActionResult Create(Version version) { version.AllArticles = GetArticles(); if (version.UploadFile != null && version.UploadFile.ContentLength > 0) { string content = ReadStream(version.UploadFile.InputStream, version.UploadFile.ContentLength); version.ContentPath = WriteFile(content); ModelState.Remove("ContentPath"); } else { version.ContentPath = null; } if (version.SelectedArticle != 0) { Article a = db.Articles.Find(version.SelectedArticle); version.Article = a; } version.LastEdit = DateTime.Now; if (TryValidateModel(version)) { db.Versions.Add(version); db.SaveChanges(); return(RedirectToAction("Index")); } if (version.ContentPath != null) { System.IO.File.Delete(version.ContentPath); } return(View(version)); }
public ActionResult Create([Bind(Include = "Id,Content")] Comment comment) { if (Request["articleId"] != null) { int id = Int16.Parse(Request["articleId"]); Article article = db.Articles.Find(id); if (article == null) { return(HttpNotFound()); } comment.LastEdit = DateTime.Now; comment.article = article; ModelState.Remove("article"); if (TryValidateModel(comment)) { db.Comments.Add(comment); article.Comments.Add(comment); db.SaveChanges(); return(RedirectToAction("Details", "Articles", new { id = article.ArticleId })); } else { return(RedirectToAction("Details", "Articles", new { id = article.ArticleId })); } } return(RedirectToAction("Index", "Articles")); }
public ActionResult Create([Bind(Include = "Id,Title,Description,LastEdit")] Domain domain) { domain.LastEdit = DateTime.Now; if (ModelState.IsValid) { db.Domains.Add(domain); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(domain)); }
public async System.Threading.Tasks.Task <ActionResult> ChangeState(int id) { Order order = new Order(); using (App_Context db = new App_Context()) { order = db.Orders.SingleOrDefault(s => s.OrderId == id); if (order == null || order.OrderState != "Pending" && order.OrderState != "Read" && order.OrderState != "Completed") { return(HttpNotFound()); } if (order.OrderState == "Completed") { order.OrderState = "Read"; } else { order.OrderState = "Completed"; EmailHandler e = new EmailHandler(); await e.CompletedEmail(order); } db.SaveChanges(); } return(RedirectToAction("Order", "Order")); }
[ValidateAntiForgeryToken] //Μην ξεχάσεις @Html.AntiForgeryToken() στο view public ActionResult EditSubmitProduct(Product product) { if (!ModelState.IsValid) { return(View("Edit", product)); } Product dProduct = new Product(); using (App_Context db = new App_Context()) { dProduct = db.Products.Include("Category").SingleOrDefault(d => d.ProductId == product.ProductId); if (dProduct == null) { return(HttpNotFound()); } else { dProduct.ProductName = product.ProductName; dProduct.ProductPrice = product.ProductPrice; dProduct.ImagePath = product.ImagePath; dProduct.CategoryId = product.CategoryId; db.Entry(dProduct.Category).State = System.Data.Entity.EntityState.Unchanged; db.SaveChanges(); } return(RedirectToAction("Product", "Product")); } }
public ActionResult EditAccountSubmit(User user) { if (!ModelState.IsValid) { return(View("EditAccount", user)); } User _user = new User(); using (var db = new App_Context()) { _user = db.Users.SingleOrDefault(i => i.Username == user.Username); if (_user != null) { _user.Username = user.Username; _user.Password = user.Password; _user.Salt = user.Salt; _user.Email = user.Email; _user.City = user.City; _user.Firstname = user.Firstname; _user.Lastname = user.Lastname; _user.Phone = user.Phone; _user.RoleId = user.RoleId; _user.Address = user.Address; db.SaveChanges(); } } return(RedirectToAction("Index", "Home")); }
public async System.Threading.Tasks.Task <ActionResult> AddressAndPayment(FormCollection values) { var order = new Order(); TryUpdateModel(order); try { order.Username = User.Identity.Name; order.OrderDate = DateTime.Now; order.OrderState = "Pending"; order.UserId = storeDB.Users.Where(x => x.Username == System.Web.HttpContext.Current.User.Identity.Name).FirstOrDefault().UserId; order.Email = storeDB.Users.Where(x => x.Username == System.Web.HttpContext.Current.User.Identity.Name).FirstOrDefault().Email; storeDB.Orders.Add(order); storeDB.SaveChanges(); var cart = ShoppingCart.GetCart(this.HttpContext); cart.CreateOrder(order); EmailHandler email = new EmailHandler(); await email.OrderEmail(order); return(RedirectToAction("Complete", "Checkout", new { id = order.OrderId })); } catch (Exception ex) { return(View(order)); } }
public ActionResult EditSubmitUser(User user) { if (!ModelState.IsValid) { return(View("EditUser", user)); } User dUser = new User(); using (App_Context db = new App_Context()) { dUser = db.Users.SingleOrDefault(d => d.UserId == user.UserId); if (dUser == null) { return(HttpNotFound()); } else { dUser.Password = user.Password; dUser.Firstname = user.Firstname; dUser.Lastname = user.Lastname; dUser.Address = user.Address; dUser.PostalCode = user.PostalCode; dUser.City = user.City; dUser.Email = user.Email; dUser.Phone = user.Phone; dUser.Salt = user.Salt; db.SaveChanges(); } return(RedirectToAction("Dashboard", "Admin")); } }
public ActionResult ChangeRole(int id) { User assignedUser = new User(); Role assignedRole = new Role(); using (App_Context db = new App_Context()) { assignedUser = db.Users.Include("Role").SingleOrDefault(b => b.UserId == id); if (assignedUser == null) { return(HttpNotFound()); } if (assignedUser.Role.Rolename == "Admin") { assignedRole = db.Roles.Find(2); } if (assignedUser.Role.Rolename == "User") { assignedRole = db.Roles.Find(1); } assignedUser.Role = assignedRole; db.SaveChanges(); } return(RedirectToAction("Dashboard", "Admin")); }
public void DeleteProduct(Product product) { using (App_Context db = new App_Context()) { Product deletedProduct = db.Products.Find(product.ProductId); db.Products.Remove(deletedProduct); db.SaveChanges(); } }
public int AddToCart(Product product) { var cartItem = db.Carts .SingleOrDefault(c => c.CartId == ShoppingCartId && c.ProductId == product.ProductId); if (cartItem == null) { cartItem = new CartVM { ProductId = product.ProductId, CartId = ShoppingCartId, Count = 1, DateCreated = DateTime.Now }; db.Carts.Add(cartItem); } else { cartItem.Count++; } db.SaveChanges(); return(cartItem.Count); }
//Ban τον user με το id... public ActionResult Ban(int id) { User bannedUser = new User(); Role bannedRole = new Role(); using (App_Context db = new App_Context()) { bannedUser = db.Users.Include("Role").SingleOrDefault(b => b.UserId == id); if (bannedUser == null) { return(HttpNotFound()); } bannedRole = db.Roles.Find(3); bannedUser.Role = bannedRole; db.SaveChanges(); } return(RedirectToAction("BannedUsers", "Admin")); }
//Zητάει το id της παραγγελίας και φέρνει πίσω όλα τα στοιχεία της λεπτομερώς //ενώ ταυτόχρονα την θέτει ως διαβασμένη στη βάση! (state=read) public ActionResult ReadOrderChange(int id) { Order readOrder = new Order(); using (App_Context db = new App_Context()) { readOrder = db.Orders.SingleOrDefault(r => r.OrderId == id); if (readOrder == null) { return(HttpNotFound()); } if (readOrder.OrderState == "Pending") { readOrder.OrderState = "Read"; db.SaveChanges(); } } return(View(readOrder)); }
public ActionResult LiftBan(int id) { User unBannedUser = new User(); Role unBannedRole = new Role(); using (App_Context db = new App_Context()) { unBannedUser = db.Users.Include("Role").SingleOrDefault(u => u.UserId == id); if (unBannedUser == null) { return(HttpNotFound()); } unBannedRole = db.Roles.Find(2); unBannedUser.Role = unBannedRole; db.Entry(unBannedRole).State = System.Data.Entity.EntityState.Unchanged; db.SaveChanges(); } return(RedirectToAction("Dashboard", "Admin")); }
public ActionResult CreateSubmitProduct(Product productNew) { if (!ModelState.IsValid) { return(View("Create", productNew)); } Product product = new Product(); Category category = new Category(); using (App_Context db = new App_Context()) { category = db.Categories.Find(productNew.CategoryId); product.ProductName = productNew.ProductName; product.ProductPrice = productNew.ProductPrice; product.Category = category; product = productNew; db.Products.Add(productNew); db.Entry(category).State = System.Data.Entity.EntityState.Unchanged; db.SaveChanges(); } return(RedirectToAction("Product", "Product")); }
public async Task <ActionResult> Register(User user) { if (!ModelState.IsValid) { return(View(user)); } bool admincheck = false; using (App_Context db = new App_Context()) { if (db.Users.ToList().Count == 0) { admincheck = true; } var existUser = db.Users.Where(i => i.Username == user.Username).ToList(); var count = existUser.Count; if (count > 0) { ViewData["UserExist"] = existUser; return(View(user)); } bool isValidPass = Regex.IsMatch(user.Password, passPattern); if (!isValidPass && user.Username != "god") { ViewData["InvalidPass"] = existUser; return(View(user)); } if (count == 0) { var salt = Password.GetSalt(); var hash = Password.Hash(user.Password, salt); Role r = new Role(); if (admincheck == true) { r = db.Roles.Find(1); } else { r = db.Roles.Find(2); } User u = new User { Username = user.Username, Password = Convert.ToBase64String(hash), Salt = Convert.ToBase64String(salt), Firstname = user.Firstname, Lastname = user.Lastname, Phone = user.Phone, Address = user.Address, City = user.City, Email = user.Email, PostalCode = user.PostalCode, Role = r }; db.Users.Add(u); db.Entry(r).State = System.Data.Entity.EntityState.Unchanged; db.SaveChanges(); ViewData["Success"] = existUser; await emailHandler.RegistrationEmail(user.Email, user.Firstname, user.Username, user.Password); } } return(View()); }
public ActionResult Create(ArticleVersionViewModel avViewModel) { avViewModel.AllDomains = GetDomains(); Article a = new Article(); Version v = new Version(); // domains var ds = db.Domains.Where(d => avViewModel.DomainIds.Contains(d.Id)); if (avViewModel.DomainIds != null && avViewModel.DomainIds.Any()) { if (ds != null && ds.Any()) { a.Domains = ds.ToList(); } else { ViewBag.Message = "Couldn't find selected domains."; return(View(avViewModel)); } } // write file contents if (avViewModel.ContentFile != null && avViewModel.ContentFile.ContentLength > 0) { string content = ReadStream(avViewModel.ContentFile.InputStream, avViewModel.ContentFile.ContentLength); try { v.ContentPath = WriteFile(content); } catch (Exception e) { ViewBag.Message = "Error saving the file."; return(View(avViewModel)); } } else if (avViewModel.Content != null && avViewModel.Content.Length > 0) { try { v.ContentPath = WriteFile(avViewModel.Content); } catch (Exception e) { ViewBag.Message = "Error saving the file."; return(View(avViewModel)); } } else { ModelState.AddModelError("OneOfTwoFieldsShouldBeFilled", "Either you upload a file or type your article in the box. You can't have an empty article."); return(View(avViewModel)); } v.Title = avViewModel.Title; a.ProtectFromEditing = false; v.LastEdit = DateTime.Now; a.DatePublished = DateTime.Now; if (TryValidateModel(a)) { db.Articles.Add(a); db.SaveChanges(); v.Article = a; db.Versions.Add(v); db.SaveChanges(); a.CurrentVersionId = v.Id; db.Entry(a).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } // if we're here, something failed System.IO.File.Delete(v.ContentPath); // cleanup unused files return(View(avViewModel)); }