示例#1
0
        public ActionResult Action(int?Id)
        {
            ProjectActionVm model = new ProjectActionVm();

            if (Id.HasValue)
            {
                var project = ProjectsService.Instance.GetProjectById(Id.Value);
                if (project == null)
                {
                    return(HttpNotFound());
                }

                model.PageTitle       = "Edit Project";
                model.PageDescription = string.Format("Edit Ptoject {0}.", project.Name);
                model.Id                  = project.Id;
                model.CategoryId          = project.CategoryId;
                model.Name                = project.Name;
                model.Summary             = project.Summary;
                model.Description         = project.Description;
                model.Price               = project.Price;
                model.isFeatured          = project.isFeatured;
                model.ProjectPicturesList = project.ProjectPictures;
                model.ThumbnailPicture    = project.ThumbnailPictureId;
            }
            else
            {
                model.PageTitle       = "Create Project";
                model.PageDescription = "Create new Project";
            }

            model.Categories = CategoriesService.Instance.GetAllCategories();

            return(View(model));
        }
示例#2
0
        public ActionResult Action(ProjectActionVm model)
        {
            if (model.Id > 0)
            {
                var project = ProjectsService.Instance.GetProjectById(model.Id);
                if (project == null)
                {
                    return(HttpNotFound());
                }

                project.Id          = model.Id;
                project.Name        = model.Name;
                project.CategoryId  = model.CategoryId;
                project.Summary     = model.Summary;
                project.Description = model.Description;
                project.Price       = model.Price;
                project.isFeatured  = model.isFeatured;
                project.ModifiedOn  = DateTime.Now;

                if (!string.IsNullOrEmpty(model.ProjectPictures))
                {
                    var pictureIds = model.ProjectPictures
                                     .Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
                                     .Select(ID => int.Parse(ID)).ToList();

                    if (pictureIds.Count > 0)
                    {
                        project.ProjectPictures.Clear();
                        project.ProjectPictures.AddRange(pictureIds.Select(x => new ProjectPicture()
                        {
                            PictureId = project.Id,
                            ProjectId = x
                        }).ToList());

                        project.ThumbnailPictureId = model.ThumbnailPicture != 0 ? model.ThumbnailPicture : pictureIds.First();
                    }
                }

                ProjectsService.Instance.UpdateProject(project);
            }

            else
            {
                Project project = new Project();
                project.Id          = model.Id;
                project.Name        = model.Name;
                project.CategoryId  = model.CategoryId;
                project.Summary     = model.Summary;
                project.Description = model.Summary;
                project.Price       = model.Price;
                project.isFeatured  = model.isFeatured;
                project.ModifiedOn  = DateTime.Now;

                if (!string.IsNullOrEmpty(model.ProjectPictures))
                {
                    var pictureIds = model.ProjectPictures
                                     .Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
                                     .Select(Id => int.Parse(Id)).ToList();

                    if (pictureIds.Count > 0)
                    {
                        project.ProjectPictures = new List <ProjectPicture>();
                        project.ProjectPictures.AddRange(pictureIds.Select(x => new ProjectPicture()
                        {
                            ProjectId = project.Id,
                            PictureId = x
                        }).ToList());

                        project.ThumbnailPictureId = model.ThumbnailPicture != 0 ? model.ThumbnailPicture : pictureIds.First();
                    }
                }

                ProjectsService.Instance.SaveProject(project);
            }

            return(RedirectToAction("Index"));
        }