public async Task <IActionResult> Edit(ProjectResponseDTO project) { if (!ModelState.IsValid) { return(View(project)); } var editedProyect = await CallApiPUTAsync <ProjectResponseDTO>(uri : "/api/projects/myprojects/" + project.Id.ToString(), body : project, isSecured : true); if (editedProyect == null) { return(View(project)); } return(RedirectToAction("Edit", new { projectId = project.Id })); }
public IActionResult Publish() { var userCredentials = GetUserCredentials(); if (userCredentials is null || userCredentials.Role != "Contratista") { return(PageNotFound()); } var newProject = new ProjectResponseDTO(); newProject.UserId = userCredentials.Id; newProject.CloseDate = DateTime.Now.AddDays(15); newProject.PostulantsLimit = 10; return(View(newProject)); }
public async Task <IActionResult> Publish(ProjectResponseDTO project) { if (!ModelState.IsValid) { return(View(project)); } if (project.NotCloseDate) { project.CloseDate = DateTime.MinValue; } if (project.MaxPostulants) { project.PostulantsLimit = 50; } var newProject = await CallApiPOSTAsync <ProjectResponseDTO>(uri : "/api/projects", body : project, isSecured : true); return(RedirectToRoute(new { action = "Index", controller = "Project", projectId = newProject.Id })); }
public async Task <IActionResult> CloseProject(ProjectResponseDTO project) { if (!ModelState.IsValid) { return(RedirectToAction("Index", project)); } var userCredentials = GetUserCredentials(); if (userCredentials.Id != project.UserId) { return(RedirectToAction("AccessDenied", "Authorization")); } var editedProyect = await CallApiPUTAsync <ProjectResponseDTO>(uri : "/api/projects/myprojects/" + project.Id.ToString(), body : project, isSecured : true); if (editedProyect == null) { return(RedirectToAction("Index", new { projectId = project.Id })); } return(RedirectToAction("Index", "Review")); }