public async Task <ActionResult> Login(AdminContractorLoginViewModel model, string returnUrl) { if (ModelState.IsValid) { var user = await userManager.FindAsync(model.UserName, model.Password); if (user == null) { ModelState.AddModelError("", Resources.Resources.InvalidUsernameOrPassword); return(View(model)); } //Add this to check if the email was confirmed. if (!await userManager.IsEmailConfirmedAsync(user.Id)) { //ModelState.AddModelError("", "Necesita confirmar el mail para poder ingresar al Sistema."); ModelState.AddModelError("", Resources.Resources.IsNotEmailConfirmed); return(View(model)); } //if (user != null) if (user != null && user.GetType().BaseType.Name == typeof(ContractorUser).Name) { await SignInAsync(user, model.RememberMe); //base.CurrentCustomerID = model.CustomerID; try { Contractor contractor = await contractorRepository.FindContractorsByIDAsync(((ContractorUser)user).ContractorID); base.CurrentCustomerID = contractor.CustomerID; base.CurrentContractorID = contractor.ContractorID; base.CurrentUserFullname = user.LastName + ", " + user.FirstName; base.CurrentUserID = user.Id; //return RedirectToLocal(returnUrl, "Index", "AdminContractor"); return(RedirectToAction("Index", returnUrl.Replace("/", ""))); } catch //(System.InvalidCastException ex) { ModelState.AddModelError("", Resources.Resources.InvalidUsernameOrPassword); } } else { ModelState.AddModelError("", Resources.Resources.InvalidUsernameOrPassword); } } // If we got this far, something failed, redisplay form return(View(model)); }
public async Task <ActionResult> Details(int id) { //if (id == null) //{ // return new HttpStatusCodeResult(HttpStatusCode.BadRequest); //} Contractor contractor = await contractorRepository.FindContractorsByIDAsync(id); if (contractor == null) { return(HttpNotFound()); } return(View(contractor)); }
public async Task <ActionResult> Index() { Contractor contractor = await contractorRepository.FindContractorsByIDAsync(base.CurrentContractorID); if (contractor == null) { return(HttpNotFound()); } ViewBag.UserFullname = base.CurrentUserFullname; var model = new ContractorDashboardViewModel(contractor); return(View(model)); //return View(); }
public async Task <ActionResult> Index() { Contractor contractor = await contractorRepository.FindContractorsByIDAsync(base.CurrentContractorID); if (contractor == null) { return(HttpNotFound()); } if (contractor.CustomerID != base.CurrentCustomerID) { return(HttpNotFound()); } var model = new ContractorEmployeesViewModel(contractor); return(View(model)); }