示例#1
0
        public ToDoModel EditToDo(EditToDoModel model)
        {
            var project = GetProject(model.ProjectId);
            var idea    = GetIdea(project.IdeaId);
            var todo    = GetToDo(project, model.MileStoneId, model.Id);

            todo.Subject           = model.Subject;
            todo.DueDate           = model.DueDate;
            todo.ResponsibleUserId = model.IsPrivate ? CurrentUser.Id : model.ResponsibleUserId;
            todo.IsPrivate         = idea.IsPrivateToOrganization && !string.IsNullOrEmpty(idea.OrganizationId) || model.IsPrivate;
            UpdateProject(project);

            bus.Send(new ProjectCommand()
            {
                ActionType     = ActionTypes.ToDoEdited,
                ProjectId      = project.Id,
                UserId         = CurrentUser.Id,
                ToDoId         = todo.Id,
                Text           = todo.Subject,
                ProjectSubject = idea.Subject,
                Link           = GetProjectUrl(project.Id),
                MileStoneId    = model.MileStoneId,
                IsPrivate      = todo.IsPrivate
            });

            return(GetToDoModelFromToDo(todo, project, IsProjectEditable(project, false), model.MileStoneId));
        }
示例#2
0
        public virtual ActionResult EditToDo(EditToDoModel model)
        {
            if (Request.HttpMethod == "GET" || !Request.IsAjaxRequest())
            {
                return(RedirectToAction(MVC.Organization.ToDos(model.OrganizationId, model.ProjectId)));
            }

            var viewModel = Service.EditToDo(model);

            return(Json(new { Content = RenderPartialViewToString(MVC.Organization.Views.Project.ToDoItem, viewModel) }));
        }
示例#3
0
        public EditToDoModel GetToDoEdit(string projectId, string milestoneId, string id)
        {
            var project = GetProject(projectId);
            var todo    = GetToDo(project, milestoneId, id);
            var model   = new EditToDoModel()
            {
                Id                = todo.Id,
                ProjectId         = project.Id,
                DueDate           = todo.DueDate,
                ResponsibleUserId = todo.ResponsibleUserId ?? TodoAssignedTo.All,
                Subject           = todo.Subject,
                ResponsibleUsers  = (from member in project.ProjectMembers
                                     select new SelectListItem()
                {
                    Value = member.UserObjectId,
                    Text = GetUserFullName(member.UserObjectId),
                }).ToList(),
                IsPrivate   = todo.IsPrivate,
                MileStoneId = milestoneId,
                Milestones  = (from m in project.MileStones
                               select new SelectListItem()
                {
                    Value = m.Id,
                    Text = m.DateString,
                }).ToList()
            };

            model.Milestones.Insert(0, new SelectListItem()
            {
                Text  = CommonStrings.Unassigned,
                Value = string.Empty
            });

            AddEmptyUser(model.ResponsibleUsers);
            return(model);
        }