public ActionResult EditBidderOrBidderView(string id) { var adminCompanyId = inBidDB.aspnet_Users.Where(x => x.UserName == User.Identity.Name).FirstOrDefault().CompanyId; var member = inBidDB.aspnet_Users.Where(x => x.UserName == id).FirstOrDefault(); if (Roles.IsUserInRole(User.Identity.Name, @"SuperAdmin")) { var membershipData = inBidDB.aspnet_Membership.Where(x => x.UserId == member.UserId).FirstOrDefault(); PopulateLanguagesDropDownList(member.LanguageId); bool role = false; role = (Roles.IsUserInRole(id, @"Bidder")) ? true : false; RegistrationBidderOrBidderViewModel rbv = new RegistrationBidderOrBidderViewModel { Bidder = role, Email = membershipData.Email, FirstName = member.FirstName, LastName = member.LastName, UserName = member.UserName, Phone = member.Phone, LanguageId=member.LanguageId, Password = membershipData.Password, ConfirmPassword = membershipData.Password }; return View(rbv); } if (((Roles.IsUserInRole(User.Identity.Name, @"Admin")) && (adminCompanyId == member.CompanyId)) ) { var membershipData = inBidDB.aspnet_Membership.Where(x => x.UserId == member.UserId).FirstOrDefault(); PopulateLanguagesDropDownList(member.LanguageId); bool role = false; role = (Roles.IsUserInRole(id, @"Bidder")) ? true : false; RegistrationBidderOrBidderViewModel rbv = new RegistrationBidderOrBidderViewModel { Bidder=role, Email = membershipData.Email, FirstName=member.FirstName, LastName=member.LastName, UserName=member.UserName, Phone=member.Phone, LanguageId = member.LanguageId, Password = membershipData.Password, ConfirmPassword=membershipData.Password }; return View(rbv); } return View("AccessDenied"); }
public ActionResult EditBidderOrBidderView(string id, RegistrationBidderOrBidderViewModel rm) { var adminCompanyId = inBidDB.aspnet_Users.Where(x => x.UserName == User.Identity.Name).FirstOrDefault().CompanyId; var member = inBidDB.aspnet_Users.Where(x => x.UserName == id).FirstOrDefault(); if (Roles.IsUserInRole(User.Identity.Name, @"SuperAdmin")) { if (ModelState.IsValid) { try { if (Roles.IsUserInRole(member.UserName, @"Bidder") && !rm.Bidder) { Roles.RemoveUserFromRole(member.UserName, @"Bidder"); Roles.AddUserToRole(member.UserName, @"BidderView"); } else if (Roles.IsUserInRole(member.UserName, @"BidderView") && rm.Bidder) { Roles.RemoveUserFromRole(member.UserName, @"BidderView"); Roles.AddUserToRole(member.UserName, @"Bidder"); } member.UserName = rm.UserName; member.FirstName = rm.FirstName; member.LastName = rm.LastName; member.Phone = rm.Phone; member.LanguageId = rm.LanguageId; setLanguage(rm.UserName); //zmiana jezyka var membershipData = inBidDB.aspnet_Membership.Where(x => x.UserId == member.UserId).FirstOrDefault(); membershipData.Email = rm.Email; inBidDB.SaveChanges(); TempData["Message"] = string.Format("Dane "+rm.UserName + " zostały zmienione"); //var adminName = Request.QueryString["companyAdmin"]; return RedirectToAction("Company", new { companyAdmin = id }); } catch { ModelState.AddModelError("", "Dane nie zostaly zapisane. Problem z bazá danych"); } } PopulateLanguagesDropDownList(rm.LanguageId); return View(rm); } if (((Roles.IsUserInRole(User.Identity.Name, @"Admin")) && (adminCompanyId == member.CompanyId)) ) { if (ModelState.IsValid) { try { if (Roles.IsUserInRole(member.UserName, @"Bidder") && !rm.Bidder) { Roles.RemoveUserFromRole(member.UserName, @"Bidder"); Roles.AddUserToRole(member.UserName, @"BidderView"); } else if (Roles.IsUserInRole(member.UserName, @"BidderView") && rm.Bidder) { Roles.RemoveUserFromRole(member.UserName, @"BidderView"); Roles.AddUserToRole(member.UserName, @"Bidder"); } member.UserName = rm.UserName; member.FirstName = rm.FirstName; member.LastName = rm.LastName; member.Phone = rm.Phone; member.LanguageId = rm.LanguageId; setLanguage(rm.UserName); //zmiana jezyka var membershipData = inBidDB.aspnet_Membership.Where(x => x.UserId == member.UserId).FirstOrDefault(); membershipData.Email = rm.Email; inBidDB.SaveChanges(); TempData["Message"] = string.Format("Dane " + rm.UserName + " zostały zmienione"); return RedirectToAction("Company"); } catch { ModelState.AddModelError("", "Dane nie zostaly zapisane. Problem z bazá danych"); } } PopulateLanguagesDropDownList(rm.LanguageId); return View(rm); } return View("AccessDenied"); }
public ActionResult RegisterBidderOrBidderView(RegistrationBidderOrBidderViewModel model) { if (Roles.IsUserInRole(User.Identity.Name, @"Admin")) { if (model.Bidder) { if (CheckOverBiddersAndBiddersViews(2)==2) return View("BiddersOver"); } else { if (CheckOverBiddersAndBiddersViews(3) == 3) return View("BidderViewsOver"); } try { if (ModelState.IsValid) { // Attempt to register the user MembershipCreateStatus createStatus; Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, false, null, out createStatus); int? companyId = 0; Company company = null; //var companyId = inBidDB.aspnet_Users.Where(x => x.UserName == User.Identity.Name).FirstOrDefault(); if (Request.QueryString["companyAdmin"] == null) { companyId = inBidDB.aspnet_Users.Where(x => x.UserName == User.Identity.Name).SingleOrDefault().CompanyId; company = inBidDB.Companies.Where(x => x.CompanyId == companyId).FirstOrDefault(); } else { var adminName = Request.QueryString["companyAdmin"]; companyId = inBidDB.aspnet_Users.Where(x => x.UserName == adminName).SingleOrDefault().CompanyId; company = inBidDB.Companies.Where(x => x.CompanyId == companyId).FirstOrDefault(); } var InsertedRow = inBidDB.aspnet_Users.Where(x => x.UserName == model.UserName).First(); InsertedRow.FirstName = model.FirstName; InsertedRow.LastName = model.LastName; InsertedRow.LanguageId = model.LanguageId; InsertedRow.CompanyId = companyId; InsertedRow.Phone = model.Phone; if (model.Bidder) Roles.AddUserToRole(model.UserName, @"Bidder"); else Roles.AddUserToRole(model.UserName, @"BidderView"); inBidDB.SaveChanges(); if (createStatus == MembershipCreateStatus.Success) { setLanguage(model.UserName); //FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */); // FormsAuth.SignIn(model.UserName, false /* createPersistentCookie */); //Roles.AddUserToRole(model.UserName, "Admin"); string path = urlApp + "/Account/ActiveUser?userId=" + InsertedRow.UserId; // string path = Url.Action("ActiveUser", "Account", new { userId = InsertedRow.UserId }, Request.Url.Scheme); MailHelper.SendRegistrationBidderOrBidderViewMail(model.Bidder, model.Email, model.UserName, model.Password, InsertedRow.UserId, company.Name, path); //if (Request.IsAjaxRequest()) //{ // // Same idea as above // return PartialView("_AdminRegistrationCompleted", model); //} TempData["Message"] = string.Format(model.UserName + " został zarejestrowany w firmie " + company.Name); //return RedirectToAction("Company"); if (Request.QueryString["companyAdmin"] == null) { return RedirectToAction("Company"); } else { var adminName = Request.QueryString["companyAdmin"]; return RedirectToAction("Company", new { companyAdmin = adminName }); } } else { ModelState.AddModelError("", ErrorCodeToString(createStatus)); } } } catch (DataException e) { ModelState.AddModelError("", ""); } PopulateLanguagesDropDownList(model.LanguageId); // PopulateCountiresDropDownLists(model.CountryId); // If we got this far, something failed, redisplay form return View(model); } if (Request.IsAjaxRequest()) { return PartialView("_AccessDenied"); } //return PartialView(); return View("AccessDenied"); }