Пример #1
0
        public JsonResult SaveCourse(CourseWebModel course)
        {
            var success = false;

            success = course.Id == 0 ? UOW.CourseRepository.CreateCourse(course) : UOW.CourseRepository.UpdateCourse(course);

            return(Json(success));
        }
Пример #2
0
        public bool UpdateCourse(CourseWebModel course)
        {
            var dbModel = DataContext.Course.Include(p => p.Tags).Include(p => p.CourseCategory).SingleOrDefault(c => c.Id == course.Id);

            if (dbModel == null)
            {
                return(false);
            }
            AutoMapper.Mapper.Map(course, dbModel);


            //Save tags
            if (course.Tags != null && course.Tags.Count > 0)
            {
                foreach (var tagDb in dbModel.Tags.ToList())
                {
                    //Doesnt exist in webModel (removed by client)
                    if (!course.Tags.Any(t => t.Id == tagDb.Id))
                    {
                        dbModel.Tags.Remove(tagDb);
                    }
                }
                foreach (var tagWebModel in course.Tags.ToList())
                {
                    //Doesnt exist in db (added by client)
                    if (!dbModel.Tags.Any(t => t.Id == tagWebModel.Id))
                    {
                        dbModel.Tags.Add(DataContext.Tags.First(t => t.Id == tagWebModel.Id));
                    }
                }
            }
            else //All tags were deleted
            {
                foreach (var tag in dbModel.Tags.ToList())
                {
                    dbModel.Tags.Remove(tag);
                }
            }

            //Save image file
            if (course.ImageFile != null)
            {
                var fileName = Guid.NewGuid() + ".png";
                dbModel.ImageFileName = fileName;
                dbModel.Active        = true;
                FileHelper.SaveFile(course.ImageFile, DirectoriesEnum.Courses, fileName);
            }
            return(Save());
        }
Пример #3
0
        public bool CreateCourse(CourseWebModel course)
        {
            var dbModel = AutoMapper.Mapper.Map <CourseWebModel, Course>(course);

            //Save tags
            if (course.Tags != null)
            {
                foreach (var tagWebModel in course.Tags)
                {
                    dbModel.Tags.Add(DataContext.Tags.First(t => t.Id == tagWebModel.Id));
                }
            }

            //Save image file
            var fileName = Guid.NewGuid() + ".png";

            dbModel.ImageFileName = fileName;
            dbModel.Active        = true;
            FileHelper.SaveFile(course.ImageFile, DirectoriesEnum.Courses, fileName);

            DataContext.Course.Add(dbModel);
            return(Save());
        }