public ActionResult AssignUser(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Ticket ticket = db.Tickets.Find(id); if (ticket == null) { return(HttpNotFound()); } AssignTicketUserViewModel AssignModel = new AssignTicketUserViewModel(); AssignModel.TicketId = ticket.Id; AssignModel.TicketTitle = ticket.Title; ProjectUsersHelper helper = new ProjectUsersHelper(db); UserRolesHelper userHelper = new UserRolesHelper(db); var projectUsers = helper.ListUsers(ticket.ProjectId); var projectDevelopers = new List <ApplicationUser>(); foreach (var user in projectUsers) { if (userHelper.IsUserInRole(user.Id, "Developer")) { projectDevelopers.Add(user); } } if (ticket.Assignee != null) { AssignModel.TicketAssignedTo = ticket.Assignee.FullName; } AssignModel.UsersList = new SelectList(projectDevelopers, "Id", "FullName"); return(View(AssignModel)); }
public async Task <ActionResult> AcceptInvitation(AcceptInvitationViewModel invitationvm) { if (ModelState.IsValid) { UserRolesHelper helper = new UserRolesHelper(); var user = new ApplicationUser { FirstName = invitationvm.FirstName, LastName = invitationvm.LastName, UserName = invitationvm.Email, Email = invitationvm.Email, HouseholdId = invitationvm.HouseholdId }; var result = await UserManager.CreateAsync(user, invitationvm.Password); if (result.Succeeded) { InvitationExtensions.MarkAsInvalid(invitationvm.Id); helper.RemoveUserFromRole(user.Id, "Guest"); helper.AddUserToRole(user.Id, "Household Member"); await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); return(RedirectToAction("Index", "Home")); } AddErrors(result); } return(View(invitationvm)); }
public UserAddEdit(UserViewModel userViewModel, bool isCreateProcess, bool isPopup = false) { // Initialize service this.userService = DependencyResolver.Kernel.Get <IUserService>(); this.companyService = DependencyResolver.Kernel.Get <ICompanyService>(); InitializeComponent(); this.DataContext = this; CurrentUser = userViewModel; IsCreateProcess = isCreateProcess; IsPopup = isPopup; RolesFromDB = new ObservableCollection <UserRoleViewModel>(UserRolesHelper.GetAvailableRoles()); UserRolesItemForm = new CompanyUserViewModel(); Thread td = new Thread(() => DisplayItems()); td.IsBackground = true; td.Start(); Thread displayThread = new Thread(() => PopulateCompanyData()); displayThread.IsBackground = true; displayThread.Start(); }
// // GET: /Manage/Index public async Task <ActionResult> Index(ManageMessageId?message) { UserRolesHelper helper = new UserRolesHelper(); 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(); var model = new IndexViewModel { HasPassword = HasPassword(), ProfilePic = db.Users.FirstOrDefault(u => u.Id == userId).ProfilePic, FirstName = db.Users.FirstOrDefault(u => u.Id == userId).FirstName, LastName = db.Users.FirstOrDefault(u => u.Id == userId).LastName, Roles = helper.ListUserRoles(userId), PhoneNumber = await UserManager.GetPhoneNumberAsync(userId), TwoFactor = await UserManager.GetTwoFactorEnabledAsync(userId), Logins = await UserManager.GetLoginsAsync(userId), BrowserRemembered = await AuthenticationManager.TwoFactorBrowserRememberedAsync(userId) }; return(View(model)); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.Email, Email = model.Email, FirstName = model.FName, LastName = model.LName, DisplayName = model.DName }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { 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>"); UserRolesHelper helper = new UserRolesHelper(db); helper.AddUserToRole(user.Id, "Submitter"); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }
// GET: Tickets public ActionResult Index() { var userId = User.Identity.GetUserId(); TicketIndexViewModel model = new TicketIndexViewModel(); UserRolesHelper urHelper = new UserRolesHelper(); var alltickets = db.Tickets.Include(t => t.AssignedUser) .Include(t => t.CreatorUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.AdminTickets = alltickets.ToList(); if (User.IsInRole("ProjectManager")) { var tickets = db.Projects.Where(p => p.PMID == userId).SelectMany(p => p.Tickets) .Include(t => t.AssignedUser) .Include(t => t.CreatorUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.PMTickets = tickets.ToList(); ViewBag.PMAmount = model.PMTickets.Count(); } if (User.IsInRole("Developer")) { var tickets = db.Tickets.Where(t => t.AssignedUserId == userId) .Include(t => t.AssignedUser) .Include(t => t.CreatorUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.DevTickets = tickets.ToList(); ViewBag.DevAmount = model.DevTickets.Count(); } if (User.IsInRole("Submitter")) { var tickets = db.Tickets.Where(t => t.CreatorUserId == userId) .Include(t => t.AssignedUser) .Include(t => t.CreatorUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.SubTickets = tickets.ToList(); ViewBag.SubAmount = model.SubTickets.Count(); } return(View(model)); }
// GET: Projects/Details/5 public ActionResult Details(int?id) { ProjectDetailViewModel vm = new ProjectDetailViewModel(); //AdminProjectViewModel vm = new AdminProjectViewModel(); UserRolesHelper helper = new UserRolesHelper(); ProjectsHelper phelper = new ProjectsHelper(); var pSub = phelper.ProjectUsersByRole(id.Value, "Submitter"); var pDev = phelper.ProjectUsersByRole(id.Value, "Developer"); var pms = helper.UsersInRole("ProjectManager"); vm.PMUsers = new SelectList(pms, "Id", "FirstName"); vm.TeamMembers = new SelectList(db.Users, "Id", "FullName"); vm.Developers = pDev; vm.Submitters = pSub; vm.Project = db.Projects.Find(id); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //Project project = db.Projects.Find(id); if (vm.Project == null) { return(HttpNotFound()); } return(View(vm)); }
// GET: Tickets/Edit/5 public ActionResult EditDash(int?id) { var roleHelper = new UserRolesHelper(); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Ticket ticket = db.Tickets.Find(id); if (ticket == null) { return(HttpNotFound()); } if (ticket.AssignedToUserId == User.Identity.GetUserId() || ticket.OwnerUser.Email == User.Identity.Name || User.IsInRole("Admin") || projHelper.IsUserOnProject(User.Identity.GetUserId(), ticket.ProjectId)) { ViewBag.AssignedToUserId = new SelectList(roleHelper.UsersInRole("Developer"), "Id", "FirstName", ticket.AssignedToUser); ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "FirstName", ticket.OwnerUserId); ViewBag.ProjectId = new SelectList(db.Projects, "Id", "Name", ticket.ProjectId); ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name", ticket.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatuses.Where(s => s.Name != "New"), "Id", "Name", ticket.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketTypes, "Id", "Name", ticket.TicketTypeId); return(View(ticket)); } return(RedirectToAction("InvalidAttempt", "Home")); }
public ActionResult CreateDB() { UserRolesHelper rolesHelper = new UserRolesHelper(); ViewBag.ProjectManagerId = new SelectList(rolesHelper.UsersInRole("ProjectManager"), "Id", "FirstName"); return(View()); }
public ActionResult Update(string Id) { var currUser = userRepo.ResultTable.Where(x => x.Id == Id).First(); var helper = new UserRolesHelper(_db); var model = new UpdateUserViewModel() { Id = Id, FirstName = currUser.FirstName, LastName = currUser.LastName, Email = currUser.Email, Phone = currUser.PhoneNumber }; try { model.CurrentRole = helper.ListUserRoles(Id).First(); } catch { model.CurrentRole = "No Current Role"; } var selectListSetup = helper.ListAbsentUserRoles(Id).ToList(); selectListSetup.Insert(0, " "); model.AvailableRoles = new SelectList(selectListSetup); return(View(model)); }
public ActionResult SidebarPartial2() { var currentuser = db.Users.Find(User.Identity.GetUserId()); if (currentuser != null) { ProjectAssignHelper ph = new ProjectAssignHelper(); UserRolesHelper uh = new UserRolesHelper(db); UsersRolesViewModel vm = new UsersRolesViewModel(); var userId = User.Identity.GetUserId(); var user = db.Users.Find(userId); vm.User = db.Users.Find(User.Identity.GetUserId()); vm.Roles = uh.ListUserRoles(vm.User.Id); if (uh.IsUserInRole(userId, "Admin") || uh.IsUserInRole(userId, "Administrator") || uh.IsUserInRole(userId, "Project Manager1") || uh.IsUserInRole(userId, "Project Manager2") || uh.IsUserInRole(userId, "Project Manager3")) { vm.Projectsb = db.Projects.ToList(); } else { vm.Projectsb = ph.ListProjectsForAUser(userId); } return(PartialView("~/Areas/BugTracker/Views/Projects/_SidebarPartial2.cshtml", vm)); } return(RedirectToAction("Index", "Home")); }
// GET: Tickets/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Ticket ticket = db.Ticket.Find(id); if (ticket == null) { return(HttpNotFound()); } UserRolesHelper helper = new UserRolesHelper(); ViewBag.AssignedUserId = new SelectList(helper.UsersInRole("Developer"), "Id", "DisplayName", ticket.AssignedUserId); ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "DisplayName", ticket.OwnerUserId); ViewBag.ProjectId = new SelectList(db.Project, "Id", "Name", ticket.ProjectId); ViewBag.TicketPriorityId = new SelectList(db.TicketPriority, "Id", "Name", ticket.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatus, "Id", "Name", ticket.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketType, "Id", "Name", ticket.TicketTypeId); TempData["OldTicket"] = ticket; return(View(ticket)); }
// GET: Tickets/Details/5 //public ActionResult Details(int? id) //{ // if (id == null) // { // return new HttpStatusCodeResult(HttpStatusCode.BadRequest); // } // var ticket = db.Tickets.Find(id); // if (ticket == null) // { // return HttpNotFound(); // } // TicketDetailsViewModel TicketDetailsVM = new TicketDetailsViewModel(); // TicketDetailsVM.Histories = db.TicketHistories.Where(tH => tH.TicketId == id).ToList(); // return View(ticket); //} // GET: Tickets/Details/5 public ActionResult Details(int?id) { UserRolesHelper userRolesHelper = new UserRolesHelper(); //UserRolesViewModel userRoles = userRolesViewModel(); var userId = User.Identity.GetUserId(); TicketHelper ticketHelper = new TicketHelper(); Ticket ticket = db.Tickets.Find(id); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } if (ticket == null) { return(HttpNotFound()); } var userTickets = ticketHelper.GetUserTickets(userId); if (userTickets.Any(t => t.Id == ticket.Id) || User.IsInRole("Admin") || ticket.Project.ProjectManagerId == User.Identity.GetUserId()) { TicketDetailsViewModel TicketDetailsVM = new TicketDetailsViewModel(); TicketDetailsVM.Histories = db.TicketHistories.Where(tH => tH.TicketId == id).ToList(); return(View(ticket)); } return(RedirectToAction("Index", "Home")); }
// GET: Projects/Create public ActionResult Create() { List <ApplicationUser> ProjectManagerId = new List <ApplicationUser>(); UserRolesHelper helper = new UserRolesHelper(db); ProjectAssignHelper ph = new ProjectAssignHelper(); var userId = User.Identity.GetUserId(); var user = db.Users.Find(userId); var PMs = helper.UsersInRole("Project Manager1"); var PMs2 = helper.UsersInRole("Project Manager2"); var PMs3 = helper.UsersInRole("Project Manager3"); var AD = helper.UsersInRole("Admin"); var AD2 = helper.UsersInRole("Administrator"); foreach (var PM in PMs) { ProjectManagerId.Add(PM); } foreach (var PM in PMs2) { ProjectManagerId.Add(PM); } foreach (var PM in PMs3) { ProjectManagerId.Add(PM); } ViewBag.ProjectManagerId = new SelectList(ProjectManagerId, "Id", "FirstName"); return(View()); }
public ActionResult Manage(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var model = new AssignPageModel(); var theUser = db.Users.Find(id); // send a select list of projects the user is NOT on // send a select list of tickets the user is NOT on // send a select list of roles the user is NOT on // send a list of projects, tickets, roles the user is on var roles = new List <IdentityRole>(); foreach (var rol in db.Roles) { if (!theUser.Roles.Any(r => r.RoleId == rol.Id)) { roles.Add(rol); } } var tick = db.Tickets; var helper = new UserRolesHelper(); var helperP = new UserProjectsHelper(); model.TicketOwner = id; model.DisplayName = theUser.DisplayName; var UNP = helperP.ListUserNOTProjects(theUser.Id); model.UserNotProjects = new MultiSelectList(UNP.OrderBy(p => p.Name), "Id", "Name"); var UNT = db.Tickets.Where(t => t.AssignedUser.Id != theUser.Id).OrderBy(m => m.Title); model.UserNotTickets = new MultiSelectList(UNT, "Id", "Title"); model.UserNotRoles = new MultiSelectList(roles, "Id", "Name"); var UP = theUser.Projects.OrderBy(p => p.Name); model.UserProjects = new MultiSelectList(UP, "Id", "Name"); //model.UserProjects = null; var UT = theUser.Tickets.OrderBy(t => t.Title); model.UserTickets = new MultiSelectList(UT, "Id", "Title"); //model.UserTickets = null; model.UserRoles = new MultiSelectList(helper.ListUserRoles(theUser.Id)); //model.UserRoles = null; if (model == null) { return(HttpNotFound()); } return(View(model)); }
public ActionResult Edit([Bind(Include = "Id,Title,Description,ProjectId,TicketTypeId,TicketPriorityId,TicketStatusId")] Ticket ticket) { var userId = User.Identity.GetUserId(); if (ModelState.IsValid) { var oldTicket = db.Tickets.AsNoTracking().FirstOrDefault(t => t.Id == ticket.Id); ticket.Updated = DateTime.Now; ticket.OwnerUserId = User.Identity.GetUserId(); db.Entry(ticket).State = EntityState.Modified; db.SaveChanges(); var newTicket = db.Tickets.AsNoTracking().FirstOrDefault(t => t.Id == ticket.Id); NotificationManager.ManageTicketNotifications(oldTicket, newTicket); //var userId = User.Identity.GetUserId(); HistoryHelper.GenerateHistory(oldTicket, newTicket, userId); return(RedirectToAction("Index")); } UserRolesHelper helper = new UserRolesHelper(); var users = helper.UsersInRole("Developer").ToList(); ViewBag.AssignedToUserId = new SelectList(users, "Id", "FirstName", ticket.AssignedToUserId); ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "FirstName", ticket.OwnerUserId); ViewBag.ProjectId = new SelectList(db.Projects, "Id", "Name", ticket.ProjectId); ViewBag.TicketPriorityId = new SelectList(projectsHelper.ListUserProjects(userId), "Id", "Name", ticket.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatuses, "Id", "Name", ticket.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketTypes, "Id", "Name", ticket.TicketTypeId); return(View(ticket)); }
// GET: Households/Create //[Authorize(Roles = ApplicationRoleName.ADMINISTRATOR)] public ActionResult Create() { Household household = new Household(); household.HeadOfHousehold = UserRolesHelper.GetUserById(User.Identity.GetUserId());; return(View(household)); }
public ActionResult UserTicketsIndex() { //find the id of the current user var userId = User.Identity.GetUserId(); TicketIndexViewModel model = new TicketIndexViewModel(); //use roles helper to check for the roles UserRolesHelper helper = new UserRolesHelper(); if (User.IsInRole("Admin")) { var tickets = db.Tickets.Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.AdminTickets = tickets.ToList(); } if (User.IsInRole("Developer")) { var tickets = db.Tickets.Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType) //.Include(t => t.ProjectId) ; tickets = tickets.Where(s => s.AssignedToUserId == userId); model.DevTickets = tickets.ToList(); } if (User.IsInRole("ProjectManager")) { var tickets = db.Tickets.Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); tickets = tickets.Where(s => s.Project.PMID == userId); model.PMTickets = tickets.ToList(); } if (User.IsInRole("Submitter")) { var tickets = db.Tickets.Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); tickets = tickets.Where(s => s.OwnerUserId == userId); model.SubTickets = tickets.ToList(); } return(View(model)); }
private string BindRole(int flag) { UserRolesHelper helper = new UserRolesHelper(); DataSet roles = helper.getRoleList(flag); string xmlroles = roles.GetXml(); return(xmlroles); }
public List <ApplicationUser> ProjectUsersByRole(int projectId, string role) { UserRolesHelper uHelper = new UserRolesHelper(); var users = uHelper.UsersInRole(role); return(users.Where(m => m.Projects.Select(p => p.Id).Contains(projectId)).ToList()); }
private string BindAllRole(int roleid) { UserRolesHelper helper = new UserRolesHelper(); DataSet roles = helper.getAllRole(roleid); string xmlroles = roles.GetXml(); return(xmlroles); }
// GET: Tickets public ActionResult Index() { var userId = User.Identity.GetUserId(); TicketIndexViewModel model = new TicketIndexViewModel(); UserRolesHelper helper = new UserRolesHelper(); if (User.IsInRole("Admin")) { var tickets = db.Tickets.Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.AdminTickets = tickets.ToList(); } if (User.IsInRole("ProjectManager")) { var proj = db.Projects; var myproj = proj.Where(p => p.PMID == userId); var tkts = myproj.SelectMany(t => t.Tickets); tkts.Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.PMTickets = tkts.ToList(); } if (User.IsInRole("Developer")) { var tickets = db.Tickets.Where(t => t.AssignedToUserId == userId) .Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.DevTickets = tickets.ToList(); } if (User.IsInRole("Submitter")) { var tickets = db.Tickets.Where(t => t.OwnerUserId == userId) .Include(t => t.AssignedToUser) .Include(t => t.OwnerUser) .Include(t => t.Project) .Include(t => t.TicketPriority) .Include(t => t.TicketStatus) .Include(t => t.TicketType); model.SubTickets = tickets.ToList(); } return(View(model)); }
public async Task <ActionResult> Register(RegisterViewModel model, HttpPostedFileBase image, int hourConversion, int serverTime) { ViewBag.ServerHourRegister = System.DateTime.Now.Hour; var now = System.DateTime.Now.Hour; var diff = Math.Abs(now - serverTime); if (ModelState.IsValid) { var joinChapter = db.Chapters.First(c => c.CurrentChapter == true).Id; var pPic = "/assets/images/DefaultProfilePic.png"; if (ImageUploadValidator.IsWebFriendlyImage(image)) { //Counter var num = 0; //Gets Filename without the extension var fileName = Path.GetFileNameWithoutExtension(image.FileName); pPic = Path.Combine("/ProfilePics/", fileName + Path.GetExtension(image.FileName)); //Checks if pPic matches any of the current attachments, //if so it will loop and add a (number) to the end of the filename while (db.Users.Any(u => u.ProfilePic == pPic)) { //Sets "filename" back to the default value fileName = Path.GetFileNameWithoutExtension(image.FileName); //Add's parentheses after the name with a number ex. filename(4) fileName = string.Format(fileName + "(" + ++num + ")"); //Makes sure pPic gets updated with the new filename so it could check pPic = Path.Combine("/ProfilePics/", fileName + Path.GetExtension(image.FileName)); } image.SaveAs(Path.Combine(Server.MapPath("~/ProfilePics/"), fileName + Path.GetExtension(image.FileName))); } var user = new ApplicationUser { UserName = model.Email, Email = model.Email, PhoneNumber = model.PhoneNumber, ProfilePic = pPic, JoinChapterId = joinChapter, FirstName = model.FirstName, LastName = model.LastName, DisplayName = model.FirstName + ' ' + model.LastName, Company = model.Company, JobTitle = model.JobTitle, HourConversion = hourConversion - diff }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { var helper = new UserRolesHelper(db); helper.AddUserToRole(user.Id, "User"); db.SaveChanges(); 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>"); return(RedirectToAction("Index", "Home")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }
//GET: Assign Ticket public ActionResult AssignTicket(int?id) { UserRolesHelper helper = new UserRolesHelper(); var ticket = db.Tickets.Find(id); var users = helper.UsersInRole("Developer").ToList(); ViewBag.AssignedToUserId = new SelectList(users, "Id", "FirstName", ticket.AssignedToUserId); return(View(ticket)); }
public int insertRoles(Roles Role) { UserRolesHelper helper = new UserRolesHelper(); Role.IsActive = true; int res = helper.insertUpdateRole(Role, 'I'); return(res); }
// GET: Projects/AssignProject public ActionResult AssignProject(int?id) { UserRolesHelper helper = new UserRolesHelper(); var project = db.Projects.Find(id); var users = helper.UsersInRole("ProjectManager").ToList(); ViewBag.ProjectManagerId = new SelectList(users, "Id", "Email", project.ProjectManagerId); return(View(project)); }
//GET public ActionResult Details(string Id) { ProjectAssignHelper ph = new ProjectAssignHelper(); UserRolesHelper UH = new UserRolesHelper(db); var userId = User.Identity.GetUserId(); var user = db.Users.Find(userId); if (UH.IsUserInRole(userId, "Admin") || UH.IsUserInRole(userId, "Administrator") || userId == Id) { if (Id != null) { UsersRolesViewModel userRoleViewModel2 = new UsersRolesViewModel(); userRoleViewModel2.User = db.Users.Find(Id); userRoleViewModel2.Roles = helper.ListUserRoles(Id); userRoleViewModel2.Tickets = db.Tickets.ToList(); userRoleViewModel2.Projectsb = db.Projects.ToList(); //userRoleViewModel.Projects = helper. var SubmitterlessRolesList = db.Roles.Where(r => r.Name != "Submitter"); ViewBag.Roles = new MultiSelectList(SubmitterlessRolesList, "Name", "Name"); //ViewBag.Roles = new MultiSelectList(db.Topics, "Id", "TopicName"); return(View(userRoleViewModel2)); } else { UsersRolesViewModel userRoleViewModel = new UsersRolesViewModel(); userRoleViewModel.User = db.Users.Find(userId); userRoleViewModel.Roles = helper.ListUserRoles(userId); userRoleViewModel.Tickets = db.Tickets.ToList(); List <Project> UserProjects = new List <Project>(); foreach (var project in db.Projects) { if (ph.IsUserOnAProject(userId, project.Id)) { UserProjects.Add(project); } } userRoleViewModel.Projectsb = UserProjects; //userRoleViewModel.Projects = helper. var SubmitterlessRolesList = db.Roles.Where(r => r.Name != "Submitter"); ViewBag.Roles = new MultiSelectList(SubmitterlessRolesList, "Name", "Name"); //ViewBag.Roles = new MultiSelectList(db.Topics, "Id", "TopicName"); return(View(userRoleViewModel)); } } var Temporary = "You cannot view Details of this User. Please revisit your role assignment. You may view your own user details, but other user's details can only be viewed by Administrators. "; TempData["message"] = Temporary; return(RedirectToAction("Index", "Users")); }
// GET: AssignTicket public ActionResult AssignTicket(int?id) { UserRolesHelper helper = new UserRolesHelper(); var ticket = db.Tickets.Find(id); var users = helper.UsersInRole("DEVELOPER").ToList(); ViewBag.DevelperID = new SelectList(users, "Id", "FullName", ticket.DeveloperID); return(View(ticket)); }
public ActionResult AssignTicket(int?id) { UserRolesHelper helper = new UserRolesHelper(); var ticket = db.Tickets.Find(id); var users = helper.UsersInRole("Developer").ToList(); var currentTicketDevelopers = users.Where(u => u.Projects.Any(p => p.Id.Equals(ticket.ProjectId))); ViewBag.AssignedToUserId = new SelectList(currentTicketDevelopers, "Id", "FullName", ticket.AssignedToUserId); return(View(ticket)); }
public bool RemoveHouseholdMember(string userId, int householdId) { if (IsMemberOfHousehold(userId, householdId)) { UserRolesHelper.RemoveUserFromRole(userId, HouseholdRoleName.MEMBER); UserRolesHelper.AddUserToRole(userId, HouseholdRoleName.NONE); db.Households.Find(householdId).Members.Remove(db.Users.Find(userId)); db.SaveChanges(); } return(!IsMemberOfHousehold(userId, householdId)); }
public ActionResult EditUser(string id, AdminUserViewModel model) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } var user = db.Users.Find(id); UserRolesHelper helper = new UserRolesHelper(); foreach (var role in db.Roles.ToList()) { //If selected but user doesn't have, add if (model.SelectedRoles.Contains(role.Id)) { helper.AddUserToRole(id, role.Name); } //If not selected but user *does* have, remove else if (!model.SelectedRoles.Contains(role.Id)) { helper.RemoveUserFromRole(id, role.Name); } } return RedirectToAction("Index", new { id }); }
public ActionResult ManageRoles(string role, string[] assignedUsers) { var helper = new UserRolesHelper();//a new 'UserRolesHelper' object is instantiated and named 'helper'. It has all of the methods //defined in the 'UserRolesHelper' class. var dbRole = db.Roles.FirstOrDefault(r => r.Name == role);//go to the 'Roles' table in the database and find the first role where //it's 'Name' property has the same value as the 'role' parameter that was passed to this action method and assign that role //(it's 'Name' and 'Id' properties and their values) to the variable called 'dbRole'. if (dbRole == null) return new HttpStatusCodeResult(HttpStatusCode.BadRequest); dbRole.Users.Clear();//remove all of the users from the 'Users' property of 'dbRole' db.SaveChanges();//save any changes made to the database. foreach (var user in assignedUsers ?? new string[0])//loop over the string array 'assignedUser', which was passed as a parameter //to this acton method....LOOK INTO THE SECOND PART OF THIS LOOP STATEMENT...NOT REALLY SURE WHAT THAT IS ABOUT... helper.AddUserToRole(user, role);//call the 'AddUserToRole' method from the 'helper' object and pass it the current user from //the 'assignedUsers' array and the specified 'role'. return RedirectToAction("ManageRoles", new { role });//redirect to the 'ManageRoles' action method with a new object of the //'role' that was passed to this action method. }
//When the administrator wants to add many users to a role at once they will click //the button that indicates which role they want to add users to. that button submits a url request that is processed and //matched to a pattern in the route.config file, which will direct to the 'ManageRoles' action method in the 'admin' controller. //the 'string role' parameter of this method receives the parameter indicated in the button that was clicked. The parameter will //be either 'admin', 'project manager', 'developer' or 'submitter'. //GET: Admin/ManageRoles/(role) public ActionResult ManageRoles(string role) { if (role == "Admin") { ViewBag.Title = "Manage Admin Role"; } else if (role == "Project Manager") { ViewBag.Title = "Manage Project Manager Role"; } else if (role == "Developer") { ViewBag.Title = "Manage Developer Role"; } else { ViewBag.Title = "Manage Submitter Role"; } var helper = new UserRolesHelper();//this creates a new instance of the 'UserRolesHelper' class. the 'helper' object has //all of the methods defined in the 'UserRolesHelper' class. ViewBag.AssignedUsers = new MultiSelectList(db.Users.ToList(),"Id","DisplayName", helper.UsersInRole(role).Select(u => u.Id)); //the 'AssignedUsers' variable is a new instance of the 'MultiSelectList' class and is attached to the 'ViewBag' so that a //multiselect list can be created in the view. The parameters given to the 'MultiSelectList' object are 1.) a list of all users //in the database, 2.) the property that is going to be selectable in the list (the users Id), 3.) the property that will be displayed //in the multiselect list (the users DisplayName), 4.)...the 'UsersInRole' method is called from the 'helper' object and passed the //'role' parameter that was passed to the 'ManageRoles' action method. From the 'UsersInRole' method is returned a list of users //whose 'RoleId' value matches the 'Id' value for that role in the 'Roles' table. So, this multiselect list will be populated with //all of the Users in the database and the end user will see the user's display names and those display names will have the users' //id's tied to them and any user that the end user selects on that multiselect list will be added to the role specified. return View();//return the ManageRoles view. }
public ActionResult Edit(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Ticket tickets = db.Tickets.Find(id); if (tickets == null) { return HttpNotFound(); } UserRolesHelper helper = new UserRolesHelper(); ViewBag.AssignedUserId = new SelectList(db.Users, "Id", "FirstName", tickets.AssignedUserId); ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "FirstName", tickets.OwnerUserId); ViewBag.ProjectId = new SelectList(db.Projects, "Id", "Name", tickets.ProjectId); ViewBag.TicketPriorityId = new SelectList(db.TicketPriorities, "Id", "Name", tickets.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatuses, "Id", "Name", tickets.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketTypes, "Id", "Name", tickets.TicketTypeId); TempData["OldTicket"] = tickets; return View(tickets); }
// GET: Tickets/Edit/5 public ActionResult Edit(int id) { TicketsModel ticketsModel = db.TicketsData.Find(id); if (ticketsModel == null) { return HttpNotFound(); } var projectId = db.ProjectsData.Find(ticketsModel.ProjectId); var projectUser = projectId.Users.ToList(); var projUserList = new List<ApplicationUser>(); List<ApplicationUser> projdevs = new List<ApplicationUser>(); UserRolesHelper helper = new UserRolesHelper(); foreach (var user in projectId.Users) { if ((helper.IsUserInRole(user.Id, "Developer")) || (helper.IsUserInRole(user.Id, "ProjectManager"))) { projdevs.Add(user); } } ViewBag.ProjectId = new SelectList(db.ProjectsData, "Id", "Name", ticketsModel.ProjectId); ViewBag.TicketPriorityId = new SelectList(db.TicketPrioritiesData, "Id", "Name", ticketsModel.TicketPriorityId); ViewBag.TicketStatusId = new SelectList(db.TicketStatusesData, "Id", "Name", ticketsModel.TicketStatusId); ViewBag.TicketTypeId = new SelectList(db.TicketTypesData, "Id", "Name", ticketsModel.TicketTypeId); ViewBag.OwnerUserId = new SelectList(db.Users, "Id", "DisplayName", ticketsModel.OwnerUserId); ViewBag.AssignedToUserId = new SelectList(projectUser.ToList(), "Id", "DisplayName", ticketsModel.AssignedToUserId); ViewBag.Comments = new SelectList(db.Users, "Id", "Comment", ticketsModel.Comments); ViewBag.Historys = new SelectList(db.TicketHistoriesData, "Id", "Property", ticketsModel.History); return View(ticketsModel); }