public ActionResult Index() { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectTask)) { return(RedirectToPermissionDenied()); } // Set the page message ViewBag.Message = "Project Task List"; // Get all project tasks from the database var projectTaskModels = ProjectTaskProcessor.GetAllProjectTasks(); // Convert the list to the correct type List <ProjectTask> projectTasks = new List <ProjectTask>(); foreach (var p in projectTaskModels) { projectTasks.Add(new ProjectTask(p)); } // Return the view, with the list of project tasks return(View(projectTasks)); }
public ActionResult Edit(int?id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectTask)) { return(RedirectToPermissionDenied()); } // Check if a project task ID was provided if (id == null) { return(RedirectToIndex()); } int projectTaskId = (int)id; // Entry try-catch from here // Make sure any errors are displayed try { // Get the project task data var projectTaskModel = ProjectTaskProcessor.GetProjectTask(projectTaskId); if (projectTaskModel == null) { return(RedirectToIndexIdNotFound(projectTaskId)); } // Convert the model data to non-model data var projectTask = new ProjectTask(projectTaskModel) { // Fill in missing text data StudentUsername = UserProcessor.SelectUserForEnrollment(projectTaskModel.EnrollmentId)?.Username }; // Get all possible roles which could be assigned to this task var projectRoles = ProjectRoleProcessor.GetProjectRolesForEnrollment(projectTaskModel.EnrollmentId); // Setup the project role drop-down list SetupRoleDropDownList(projectRoles, projectTask.ProjectRoleId); // Pass the data to the view return(View(projectTask)); } catch (Exception e) { return(RedirectToIndex(e)); } }
public ActionResult Edit(ProjectTask projectTask) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectTask)) { return(RedirectToPermissionDenied()); } // Make sure the entered data is valid if (ModelState.IsValid) { // Update the project task within the database try { ProjectTaskProcessor.UpdateProjectTask( projectTask.ProjectTaskId, projectTask.Description, projectTask.ProjectRoleId, projectTask.Duration); TempData[LabelSuccess] = "Updated task."; return(RedirectToIndex()); } catch (Exception e) { ModelState.AddModelError("", e.Message); } } else { //show error var errors = ModelState.Values.SelectMany(v => v.Errors); } // Get all possible roles which could be assigned to this task var projectRoles = ProjectRoleProcessor.GetProjectRolesForEnrollment(projectTask.EnrollmentId); // Setup the project role drop-down list SetupRoleDropDownList(projectRoles, projectTask.ProjectRoleId); // Return to same page with same data return(View(projectTask)); }
public ActionResult Create(ProjectTask projectTask) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectTask)) { return(RedirectToPermissionDenied()); } // Make sure the entered data is valid if (ModelState.IsValid) { // Update the project within the database try { ProjectTaskProcessor.CreateProjectTask( projectTask.EnrollmentId, projectTask.Description, projectTask.ProjectRoleId, projectTask.Duration); TempData[LabelSuccess] = "Created new task: " + projectTask.Description; return(RedirectToIndex()); } catch (Exception e) { ModelState.AddModelError("", e.Message); } } else { //show error var errors = ModelState.Values.SelectMany(v => v.Errors); } // Return to same page with same data return(View(projectTask)); }