public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, change to shouldLockout: true var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false); switch (result) { case SignInStatus.Success: UsersDataHandler dataHandler = new UsersDataHandler(); dataHandler.updateLoginDate(model.Email); return(RedirectToLocal(returnUrl)); case SignInStatus.LockedOut: return(View("Lockout")); case SignInStatus.RequiresVerification: return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe })); case SignInStatus.Failure: default: ModelState.AddModelError("", "Invalid login attempt."); return(View(model)); } }
public ActionResult Users(string sortOrder, string searchString) { ViewBag.Message = "View/Edit all Users."; ViewBag.UserFNameSortParam = String.IsNullOrEmpty(sortOrder) ? "fname_desc" : ""; ViewBag.UserLNameSortParam = sortOrder == "LName" ? "lname_desc" : "LName"; ViewBag.UserMailSortParam = sortOrder == "Mail" ? "mail_desc" : "Mail"; List <SelectListItem> items = new List <SelectListItem>(); items.Add(new SelectListItem { Text = "Active", Value = "0" }); items.Add(new SelectListItem { Text = "Inactive", Value = "1" }); ViewBag.ActiveList = items; UsersDataHandler dataSource = new UsersDataHandler(); ICollection <User> data = dataSource.GetAllUsers(); if (!string.IsNullOrEmpty(searchString)) { data = data.Where(s => s.firstName.Contains(searchString) || s.lastName.Contains(searchString)).ToList(); } switch (sortOrder) { case "fname_desc": data = data.OrderByDescending(s => s.firstName).ToList(); break; case "LName": data = data.OrderBy(s => s.lastName).ToList(); break; case "lname_desc": data = data.OrderByDescending(s => s.lastName).ToList(); break; case "Mail": data = data.OrderBy(s => s.emailID).ToList(); break; case "mail_desc": data = data.OrderByDescending(s => s.emailID).ToList(); break; default: data = data.OrderBy(s => s.firstName).ToList(); break; } ModelState.Clear(); return(View(data)); }
public ActionResult Index(string sortOrder, string searchString) { ViewBag.Message = "View your Applications"; ViewBag.AppIDSortParam = String.IsNullOrEmpty(sortOrder) ? "appID_desc" : ""; ViewBag.AppNameSortParam = sortOrder == "Name" ? "name_desc" : "Name"; string user = User.Identity.GetUserName(); UsersDataHandler userSource = new UsersDataHandler(); List <int> appIDs = userSource.GetUserApps(user); ApplicationsDataHandler dataSource = new ApplicationsDataHandler(); ICollection <Application> data = dataSource.GetAppsForUser(appIDs); if (!String.IsNullOrEmpty(searchString)) { data = data.Where(s => s.appName.Contains(searchString)).ToList(); } switch (sortOrder) { case "appID_desc": data = data.OrderByDescending(s => s.appId).ToList(); break; case "Name": data = data.OrderBy(s => s.appName).ToList(); break; case "name_desc": data = data.OrderByDescending(s => s.appName).ToList(); break; default: data = data.OrderBy(s => s.appId).ToList(); break; } ModelState.Clear(); return(View(data)); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.Email, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await this.UserManager.AddToRoleAsync(user.Id, "USER"); await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771 // Send an email with this link // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); UsersDataHandler dataHandler = new UsersDataHandler(); User newUser = new User() { firstName = user.FirstName, lastName = user.LastName, emailID = user.Email, activeStatus = "active" }; dataHandler.AddUser(newUser); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Index(string sortOrder, string currentFilter, string appString, int?page) { ViewBag.CurrentSort = sortOrder; ViewBag.LogIDSortParam = String.IsNullOrEmpty(sortOrder) ? "logID_desc" : ""; ViewBag.LogNameSortParam = sortOrder == "Name" ? "name_desc" : "Name"; ViewBag.LogTypeSortParam = sortOrder == "Type" ? "type_desc" : "Type"; ViewBag.LogTimeSortParam = sortOrder == "Time" ? "time_desc" : "Time"; ViewBag.LogAppSortParam = sortOrder == "App" ? "app_desc" : "App"; if (appString != null) { page = 1; } else { appString = currentFilter; } ViewBag.CurrentFilter = appString; string user = User.Identity.GetUserName(); UsersDataHandler userSource = new UsersDataHandler(); List <int> appIDs = userSource.GetUserApps(user); using (ErrorModel db = new ErrorModel()) { List <Application> apps = new List <Application>(); foreach (int id in appIDs) { apps.AddRange(db.Applications.Where(x => x.appId == id)); } ViewBag.Apps = apps; } ErrorLogsDataHandler dataSource = new ErrorLogsDataHandler(); ICollection <ErrorLog> data = dataSource.GetLogsForUser(appIDs); if (!String.IsNullOrEmpty(appString)) { data = data.Where(s => s.Application.appName.Contains(appString)).ToList(); } switch (sortOrder) { case "logID_desc": data = data.OrderByDescending(s => s.logID).ToList(); break; case "Name": data = data.OrderBy(s => s.fileName).ToList(); break; case "name_desc": data = data.OrderByDescending(s => s.fileName).ToList(); break; case "Type": data = data.OrderBy(s => s.logType.typeName).ToList(); break; case "type_desc": data = data.OrderByDescending(s => s.logType.typeName).ToList(); break; case "Time": data = data.OrderBy(s => s.timeStamp).ToList(); break; case "time_desc": data = data.OrderByDescending(s => s.timeStamp).ToList(); break; case "App": data = data.OrderBy(s => s.Application.appName).ToList(); break; case "app_desc": data = data.OrderByDescending(s => s.Application.appName).ToList(); break; default: data = data.OrderBy(s => s.logID).ToList(); break; } ViewBag.TotalCount = data.Count; int pageSize = 10; int pageNumber = (page ?? 1); ModelState.Clear(); return(View(data.ToPagedList(pageNumber, pageSize))); }
public ActionResult GraphView() { string user = User.Identity.GetUserName(); UsersDataHandler userSource = new UsersDataHandler(); List <int> appIDs = userSource.GetUserApps(user); using (ErrorModel db = new ErrorModel()) { ErrorLogsDataHandler dataSource = new ErrorLogsDataHandler(); ICollection <ErrorLog> data = dataSource.GetLogsForUser(appIDs); List <Application> userApps = new List <Application>(); foreach (int id in appIDs) { userApps.AddRange(db.Applications.Where(x => x.appId == id)); } ViewBag.Apps = userApps; var apps = new List <string>(); var logsPerApp = new List <int>(); var colors = new List <string>(); int tCount = 0; var months = new List <string>(); var logsPerMonth = new List <int>(); var colors2 = new List <string>(); string eColor = "rgba(76, 175, 80, 0.6)"; string dColor = "rgba(244, 67, 54, 0.6)"; foreach (Application ap in userApps) { apps.Add("\"" + ap.appName + "\""); logsPerApp.Add(ap.ErrorLogs.Count); tCount += ap.ErrorLogs.Count; if (ap.appStatus == "enabled") { colors.Add("\'" + eColor + "\'"); } else { colors.Add("\'" + dColor + "\'"); } } ViewBag.labelList = string.Join(",", apps); ViewBag.dataList = string.Join(",", logsPerApp); ViewBag.colorList = string.Join(",", colors); ViewBag.totalCount = tCount; foreach (ErrorLog er in data) { if (!months.Contains("\"" + er.timeStamp.ToString("MMMM") + "\"")) { months.Add("\"" + er.timeStamp.ToString("MMMM") + "\""); } } foreach (string m in months) { int count = 0; foreach (ErrorLog er in data) { if ("\"" + er.timeStamp.ToString("MMMM") + "\"" == m) { count++; } } logsPerMonth.Add(count); colors2.Add("\'" + eColor + "\'"); } ViewBag.labelList2 = string.Join(",", months); ViewBag.dataList2 = string.Join(",", logsPerMonth); ViewBag.colorList2 = string.Join(",", colors2); return(View()); } }
public ActionResult Users(string sortOrder, string searchString, User user, string ActiveList) { ViewBag.Message = "View/Edit all Users."; ViewBag.UserFNameSortParam = String.IsNullOrEmpty(sortOrder) ? "fname_desc" : ""; ViewBag.UserLNameSortParam = sortOrder == "LName" ? "lname_desc" : "LName"; ViewBag.UserMailSortParam = sortOrder == "Mail" ? "mail_desc" : "Mail"; List <SelectListItem> items = new List <SelectListItem>(); items.Add(new SelectListItem { Text = "Active", Value = "0" }); items.Add(new SelectListItem { Text = "Inactive", Value = "1" }); ViewBag.ActiveList = items; ErrorModel context = new ErrorModel(); User thisUser = context.Users.FirstOrDefault(x => x.emailID == user.emailID); try { using (ApplicationDbContext db = new ApplicationDbContext()) { var usertoSave = db.Users.ToList().FirstOrDefault(m => m.Email == thisUser.emailID); if (ActiveList == "1") { usertoSave.LockoutEndDateUtc = DateTime.MaxValue; thisUser.activeStatus = "inactive"; thisUser.userType = thisUser.userType; } else { usertoSave.LockoutEndDateUtc = null; thisUser.activeStatus = "active"; thisUser.userType = thisUser.userType; } db.SaveChanges(); } context.SaveChanges(); } catch (Exception ex) { string s = ex.InnerException.Message; } UsersDataHandler dataSource = new UsersDataHandler(); ICollection <User> data = dataSource.GetAllUsers(); if (!String.IsNullOrEmpty(searchString)) { data = data.Where(s => s.firstName.Contains(searchString) || s.lastName.Contains(searchString)).ToList(); } switch (sortOrder) { case "fname_desc": data = data.OrderByDescending(s => s.firstName).ToList(); break; case "LName": data = data.OrderBy(s => s.lastName).ToList(); break; case "lname_desc": data = data.OrderByDescending(s => s.lastName).ToList(); break; case "Mail": data = data.OrderBy(s => s.emailID).ToList(); break; case "mail_desc": data = data.OrderByDescending(s => s.emailID).ToList(); break; default: data = data.OrderBy(s => s.firstName).ToList(); break; } ModelState.Clear(); return(View(data)); }