public ActionResult Delete(Team team) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.Team)) { return(RedirectToPermissionDenied()); } try { int rowsDeleted = TeamProcessor.DeleteTeam(team.TeamId); if (rowsDeleted <= 0) { throw new DataException("Unable to Delete Team."); } return(RedirectToAction("Details", new RouteValueDictionary( new { controller = "ProjectOffering", action = "Details", Id = team.ProjectOfferingId }))); } catch (Exception e) { // Show any errors ModelState.AddModelError("", e.Message); } //Find Team var teamModel = TeamProcessor.GetTeamForTeamId(team.TeamId); var projectOffering = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(teamModel.ProjectofferingId); return(View(new Team(teamModel, projectOffering))); }
public ActionResult AddTeamMember(Enrollment _Enrollment) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.Team)) { return(RedirectToPermissionDenied()); } if (_Enrollment.TeamId <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } try { // Ensure a User has been selected //if( _Enrollment.UserId <= 0 ) // throw new DataException( "No Enrolled User Selected." ); var enrollmentData = EnrollmentProcessor.SelectEnrollmentForEnrollmentId(_Enrollment.EnrollmentId); //Check if Student is already a member of this team var rowsFound = EnrollmentProcessor.SelectEnrollmentCountForTeamIdAndUserId(_Enrollment.TeamId, enrollmentData.UserId); if (rowsFound > 0) { throw new DataException($"User is already a member of this Team."); } // Attempt to update enrollment with TeamId EnrollmentProcessor.UpdateEnrollmentWithTeamId(enrollmentData.EnrollmentId, _Enrollment.TeamId); return(Redirect(Request.UrlReferrer.ToString( ))); } catch (Exception _Ex) { // Show Model Errors reload data and return to view. ModelState.AddModelError("", $"Unable to save changes due to Error: {_Ex.Message}"); } // Get the team data var teamModel = TeamProcessor.GetTeamForTeamId(_Enrollment.TeamId); if (teamModel == null) { return(RedirectToUnitOfferingIndex( )); } var projectOffering = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(teamModel.ProjectofferingId); var team = new Team(teamModel, projectOffering); ViewBag.EnrollmentId = new SelectList(team.GetAvailableEnrollments(team.ProjectOfferingId), "EnrollmentId", "Username", null); return(View(team)); }
/// <summary> /// Navigate to Details page for a Unit Offering /// </summary> /// <param name="id"></param> /// <returns></returns> public ActionResult Details(int id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.UnitOffering)) { return(RedirectToPermissionDenied()); } if (id == 0) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } try { var unitOfferingModel = UnitOfferingProcessor.SelectUnitOfferingForUnitOfferingId(id); if (unitOfferingModel == null) { return(RedirectToIndexIdNotFound(id)); } var unit = UnitProcessor.SelectUnitForUnitId(unitOfferingModel.UnitId); var teachingPeriod = TeachingPeriodProcessor.SelectTeachingPeriodForTeachingPeriodId(unitOfferingModel.TeachingPeriodId); var year = YearProcessor.SelectYearForYearId(unitOfferingModel.YearId); var convenor = UserProcessor.SelectUserForUserId(unitOfferingModel.ConvenorId); var projectOfferings = ProjectOfferingProcessor.SelectProjectOfferingsForUnitOfferingId(id); var enrollments = EnrollmentProcessor.LoadEnrollmentsForUnitOffering(id); // Convert the model data to non-model data // Pass the data to the view var unitOffering = new UnitOffering(unitOfferingModel, unit, teachingPeriod, year, convenor, projectOfferings, enrollments); ViewBag.UserId = new SelectList(unitOffering.GetStudents( ), "UserId", "Username", null); return(View(unitOffering)); } catch (Exception e) { return(RedirectToIndex(e)); } // Find Unit Offering //db.GetUnitOffering( id ); // Populate Student Drop Down List for to add new Enrollments //PopulateStudentDropDownList( ); // Navigate to View //return View( db ); }
public ProjectOffering GetProjectOffering(int projectOfferingId) { var data = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(projectOfferingId); ProjectOffering = new ProjectOffering( ) { ProjectOfferingId = data.ProjectOfferingId, ProjectId = data.ProjectId, UnitOfferingId = data.UnitOfferingId }; ProjectOffering.Project = GetProject(data.ProjectId); ProjectOffering.UnitOffering = GetUnitOffering(data.UnitOfferingId); return(ProjectOffering); }
public ActionResult Create(ProjectOffering model) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectOffering)) { return(RedirectToPermissionDenied()); } if (ModelState.IsValid) { try { //Validate values of Project and UnitOffering db.GetProject(model.ProjectId); db.GetUnitOffering(model.UnitOfferingId); ProjectOfferingProcessor.InsertProjectOffering( model.ProjectId, model.UnitOfferingId); // If Insert successful return to index return(RedirectToAction("Index")); } catch (Exception e) { // Show DataLayer errors ModelState.AddModelError("", e.Message); } } else { // Show ModelState errors var errors = ModelState.Values.SelectMany(v => v.Errors); } var projectOffering = new ProjectOffering( ); // Generate drop down lists for each field. ViewBag.UnitofferingId = new SelectList(projectOffering.GetUnitOfferings( ), "UnitOfferingId", "UnitName", null); ViewBag.ProjectId = new SelectList(projectOffering.GetProjects( ), "ProjectId", "Name", null); // Navigate to View return(View( )); }
public ActionResult Delete(ProjectOffering projectOffering) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectOffering)) { return(RedirectToPermissionDenied()); } try { if (db.GetProjectOffering(projectOffering.ProjectOfferingId) == null) { throw new DataException("This Project Offering does not exist."); } var existingTeams = TeamProcessor.SelectTeamsForProjectOfferingId(projectOffering.ProjectOfferingId); foreach (var team in existingTeams) { TeamProcessor.DeleteTeam(team.TeamId); } int rowsDeleted = ProjectOfferingProcessor.DeleteProjectOffering(projectOffering.ProjectOfferingId); if (rowsDeleted <= 0) { throw new DataException("Unable to Delete ProjectOffering."); } // If delete successful return to Index return(RedirectToAction("Index")); } catch (Exception e) { // Show any errors ModelState.AddModelError("", e.Message); } // If unsuccessful return to View return(View(db)); }
public List <ProjectOffering> GetProjectOfferings( ) { var data = ProjectOfferingProcessor.SelectProjectOfferings( ); ProjectOfferings = new List <ProjectOffering>( ); foreach (var row in data) { var projectOffering = new ProjectOffering( ) { ProjectOfferingId = row.ProjectOfferingId, ProjectId = row.ProjectId, UnitOfferingId = row.ProjectId }; projectOffering.Project = GetProject(row.ProjectId); projectOffering.UnitOffering = GetUnitOffering(row.UnitOfferingId); ProjectOfferings.Add(projectOffering); } return(ProjectOfferings); }
// Create public ActionResult Create(int?id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.Team)) { return(RedirectToPermissionDenied()); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ViewBag.Message = "Create New UnitOffering"; int projetOfferingId = ( int )id; var projectOffering = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(projetOfferingId); if (projectOffering == null) { return(RedirectToIndexUnitOfferingNotFound(projetOfferingId)); } //var projectModel = ProjectProcessor.GetProject( id ); //if( projectModel == null ) return RedirectToIndexProjectNotFound( id ); // Generate Supervisor Drop down List for each field. // Supervisor var team = new Team(projectOffering); ViewBag.SupervisorId = new SelectList(team.GetAvailableSupervisors( ), "UserId", "Username", null); return(View(team)); }
public ActionResult Details(int?id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectOffering)) { return(RedirectToPermissionDenied()); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } try { int projectOfferingId = ( int )id; var projectOfferingModel = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(projectOfferingId); if (projectOfferingModel == null) { return(RedirectToIndexIdNotFound(projectOfferingId)); } var project = ProjectProcessor.GetProject(projectOfferingModel.ProjectId); var unitOffering = UnitOfferingProcessor.SelectUnitOfferingForUnitOfferingId(projectOfferingModel.UnitOfferingId); var teams = TeamProcessor.SelectTeamsForProjectOfferingId(projectOfferingModel.ProjectOfferingId); var projectOffering = new ProjectOffering(projectOfferingModel, project, unitOffering, teams); return(View(projectOffering)); } catch (Exception e) { return(RedirectToIndex(e)); } }
// Edit public ActionResult Edit(int?id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.Team)) { return(RedirectToPermissionDenied()); } if (id == null) { //If no id supplied return error code return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } int teamId = ( int )id; //Attempt to Get team for Id var teamModel = TeamProcessor.GetTeamForTeamId(teamId); if (teamModel == null) { return(RedirectToUnitOfferingIndex( )); } var projectOffering = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(teamModel.ProjectofferingId); //var project = ProjectProcessor.GetProject( teamModel.UnitOfferingId ); var team = new Team(teamModel, projectOffering); ViewBag.SupervisorId = new SelectList(team.GetAvailableSupervisors( ), "UserId", "Username", null); return(View(team)); }
// Details public ActionResult Details(int?id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.Team)) { return(RedirectToPermissionDenied()); } if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } try { int teamId = ( int )id; // Get the team data var teamModel = TeamProcessor.GetTeamForTeamId(teamId); if (teamModel == null) { return(RedirectToUnitOfferingIndex( )); } var projectOffering = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(teamModel.ProjectofferingId); var team = new Team(teamModel, projectOffering); ViewBag.EnrollmentId = new SelectList(team.GetAvailableEnrollments(team.ProjectOfferingId), "EnrollmentId", "Username", null); return(View(team)); } catch (Exception e) { return(RedirectToIndex(e)); } }
public ActionResult Delete(int?id) { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.Team)) { return(RedirectToPermissionDenied()); } if (id == null) { // If no id provided show BadRequest Error return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } int teamId = ( int )id; // Get the team data var teamModel = TeamProcessor.GetTeamForTeamId(teamId); if (teamModel == null) { return(RedirectToUnitOfferingIndex( )); } var projectOffering = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(teamModel.ProjectofferingId); //var project = ProjectProcessor.GetProject( teamModel.UnitOfferingId ); //var enrollments = EnrollmentProcessor.LoadEnrollmentsForTeam( id ); return(View(new Team(teamModel, projectOffering))); }
public ActionResult Create() { // Make sure the user is logged in and that they have permission if (!IsUserLoggedIn) { return(RedirectToLogin()); } if (!UserHasPermission(PermissionName.ProjectTask)) { return(RedirectToPermissionDenied()); } // Get the list of projects which can be accessed by the current user var projectModels = ProjectOfferingProcessor.GetProjectOfferingsForUserId(CurrentUser.UserId); // Setup the project drop-down list ViewBag.Projects = new SelectList(projectModels, "ProjectId", "Name"); // Create a project task ProjectTask projectTask = new ProjectTask(); // Go to view return(View(projectTask)); }
private void GetProjectOffering(int id) { var data = ProjectOfferingProcessor.SelectProjectOfferingForProjectOfferingId(id); ProjectOffering = new ProjectOffering( ) { ProjectOfferingId = data.ProjectOfferingId, ProjectId = data.ProjectId, UnitOfferingId = data.UnitOfferingId }; var projectData = ProjectProcessor.GetProject(data.ProjectId); ProjectOffering.Project = new Project( ) { ProjectId = projectData.ProjectId, ProjectRoleGroupId = projectData.ProjectRoleGroupId, Name = projectData.Name }; var unitOfferingData = UnitOfferingProcessor.SelectUnitOfferingForUnitOfferingId(data.UnitOfferingId); ProjectOffering.UnitOffering = new UnitOffering( ) { UnitOfferingId = unitOfferingData.UnitOfferingId, TeachingPeriodId = unitOfferingData.TeachingPeriodId, YearId = unitOfferingData.YearId, ConvenorId = unitOfferingData.ConvenorId, UnitId = unitOfferingData.UnitId, }; var teachingperiodData = TeachingPeriodProcessor.SelectTeachingPeriodForTeachingPeriodId(ProjectOffering.UnitOffering.TeachingPeriodId); ProjectOffering.UnitOffering.TeachingPeriod = new TeachingPeriod( ) { TeachingPeriodId = teachingperiodData.TeachingPeriodId, Name = teachingperiodData.Name, Day = teachingperiodData.Day, Month = teachingperiodData.Month }; var yearData = YearProcessor.SelectYearForYearId(ProjectOffering.UnitOffering.YearId); ProjectOffering.UnitOffering.Year = new Year( ) { YearId = yearData.YearId, YearValue = yearData.Year }; var convenorData = UserProcessor.SelectUserForUserId(ProjectOffering.UnitOffering.ConvenorId); ProjectOffering.UnitOffering.Convenor = new User( ) { UserId = convenorData.UserId, Username = convenorData.Username }; var unitData = UnitProcessor.SelectUnitForUnitId(ProjectOffering.UnitOffering.UnitId); ProjectOffering.UnitOffering.Unit = new Unit( ) { UnitId = unitData.UnitId, Name = unitData.Name }; }