// // GET: /Manage/Index public async Task <ActionResult> Index(ManageMessageId?message) { if (User.IsInRole("Customer")) { SinExDatabaseContext DB = new SinExDatabaseContext(); string user_name = System.Web.HttpContext.Current.User.Identity.Name; if (user_name == null) { return(RedirectToAction("ManageLogins", new { Message = message })); } ShippingAccount current_user = DB.ShippingAccounts.SingleOrDefault(c => c.UserName == user_name); if (current_user is BusinessShippingAccount) { ViewBag.customerType = "Business"; } else if (current_user is PersonalShippingAccount) { ViewBag.customerType = "Personal"; } } ViewBag.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed." : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set." : message == ManageMessageId.SetTwoFactorSuccess ? "Your two-factor authentication provider has been set." : message == ManageMessageId.Error ? "An error has occurred." : message == ManageMessageId.AddPhoneSuccess ? "Your phone number was added." : message == ManageMessageId.RemovePhoneSuccess ? "Your phone number was removed." : ""; var userId = User.Identity.GetUserId(); string account_number = ""; if (User.IsInRole("Customer")) { account_number = DataBase.ShippingAccounts.SingleOrDefault(n => n.UserName == User.Identity.Name).AccountNumber; } else { account_number = ""; } var model = new IndexViewModel { AccountNum = account_number, HasPassword = HasPassword(), PhoneNumber = await UserManager.GetPhoneNumberAsync(userId), TwoFactor = await UserManager.GetTwoFactorEnabledAsync(userId), Logins = await UserManager.GetLoginsAsync(userId), BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(userId) }; return(View(model)); }