// GET: Projects/Edit/5
        public ActionResult Edit(int?id)
        {
            //validation area
            if (id == null)
            {
                TempData["Alert"] = "Please provide a project id";
                return(RedirectToAction("Index"));
            }
            Project project = db.Projects.Find(id);

            if (project == null)
            {
                TempData["Alert"] = "Project not found";
                return(RedirectToAction("Index"));
            }
            if (User.IsInRole("Submitter") || User.IsInRole("Developer"))
            {
                TempData["Alert"] = "You are not authorized to edit projects";
                return(RedirectToAction("Index", "Projects"));
            }

            //instantiate, populate and pass the view model to the view
            var projectEdit = new ProjectEditVM();

            projectEdit.Project = project;
            var pmUsers = userHelper.UsersInRole("ProjectManager");

            projectEdit.ProjectManagers = new SelectList(pmUsers, "Id", "FullName", project.ProjectManagerId);

            return(View(projectEdit));
        }
        public ActionResult Edit(ProjectEditVM model, string projectManagerId)
        {
            Project project = db.Projects.Find(model.Project.Id);

            project.Name             = model.Project.Name;
            project.Description      = model.Project.Description;
            project.ProjectManagerId = projectManagerId;
            project.IsArchived       = model.Project.IsArchived;
            project.Updated          = DateTime.Now;
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #3
0
        public override HttpHandlerResult Get()
        {
            var vm = new ProjectEditVM {
                ProjectId = GetQuery("id"),
            };

            var isNew = string.IsNullOrEmpty(vm.ProjectId);

            vm.PageTitle = $"Photon Server {(isNew?"New":"Edit")} Project";

            vm.Build();

            return(Response.View("Project\\Edit.html", vm));
        }
Пример #4
0
        public override HttpHandlerResult Post()
        {
            var vm = new ProjectEditVM();

            try {
                vm.Restore(Request.FormData());
                vm.Save();

                return(Response.Redirect("projects"));
            }
            catch (Exception error) {
                vm.Errors.Add(error);
                return(Response.View("Project\\Edit.html", vm));
            }
        }
Пример #5
0
        public ActionResult Edit(ProjectEditVM project, int projectId)
        {
            if (ModelState.IsValid)
            {
                var thisProject = db.Projects.Find(projectId);

                thisProject.Name       = project.Name;
                thisProject.Details    = project.Details;
                thisProject.IsArchived = project.IsArchived;

                db.SaveChanges();

                return(Redirect(Request.UrlReferrer.ToString()));
            }
            return(Redirect(Request.UrlReferrer.ToString()));
        }