public async Task <IActionResult> EditCourse(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            Course course = await _db.Courses.FindAsync(id);

            if (course == null)
            {
                return(NotFound());
            }
            if (course.isDeleted == false)
            {
                return(NotFound());
            }

            CourseEditVM editVM = new CourseEditVM
            {
                Categories = _db.Categories.Where(c => c.isDeleted == false),
                Category   = _db.Categories.FirstOrDefault(c => c.Id == course.CategoryId),
                Course     = course
            };

            return(View(editVM));
        }
        public ActionResult Edit([Bind(Include = "Id,Name,CourseCode,CourseDuration,Credit,CourseOutLine,OrganizationId")] CourseEditVM course)
        {
            if (ModelState.IsValid)
            {
                var entity = AutoMapper.Mapper.Map <Course>(course);
                //entity.Name = course.Name;
                db.Entry(entity).State = EntityState.Modified;
                db.SaveChanges();
                //return RedirectToAction("Index");
            }
            //ViewBag.Name = course.Name;
            //ViewBag.OrganizationId = new SelectList(db.Organizations, "Id", "Org_Name", course.OrganizationId);

            course.OrganizationLookUps = db.Organizations.Select(c => new SelectListItem()
            {
                Value = c.Id.ToString(), Text = c.Org_Name
            }).ToList();
            course.TrainerLookUps = db.Trainers.Select(c => new SelectListItem()
            {
                Value = c.Id.ToString(), Text = c.Name
            }).ToList();
            course.CourseLookUps = db.Courses.Select(c => new SelectListItem()
            {
                Value = c.Id.ToString(), Text = c.Name
            }).ToList();
            return(View(course));
        }
예제 #3
0
        /// <summary>
        /// Provides conventional routing for course/edit/<adviseeID>/<ID>.
        /// </summary>
        /// <param name="adviseeId"></param>
        /// <param name="id"></param>
        /// <returns>A edit view with a course edit view model</returns>
        public IActionResult Edit(int adviseeId, int id)
        {
            var advisee = _repo.ReadAdvisee(adviseeId);
            if (advisee == null)
            {
                return NotFound("Could not find advisee.");
            }

            var course = _repo.Read(id);
            if (course == null)
            {
                return NotFound("Could not find course.");
            }

            var courseVM = new CourseEditVM
            {
                Id = course.Id,
                Code = course.Code,
                CreditHours = course.CreditHours,
                LetterGrade = course.LetterGrade,
                AdviseeId = course.AdviseeId
            };

            return View(courseVM);
        }
예제 #4
0
        public async Task <IViewComponentResult> InvokeAsync(long courseId)
        {
            var entity = _context.Courses.Include(x => x.Sections).FirstOrDefault(x => x.Id == courseId);
            var model  = new CourseEditVM
            {
                Id       = entity.Id,
                Sections = entity.Sections.ToList()
            };

            return(View(model));
        }
예제 #5
0
        public IActionResult Edit(int adviseeId, int id, CourseEditVM courseVM)
        {
            var course = courseVM.GetInstance();
            if (ModelState.IsValid)
            {
                _repo.Update(course.Id, course);
                return RedirectToAction("Details", "Advisee", new { id = adviseeId });
            }

            return View(courseVM);
        }
예제 #6
0
        public async Task <IViewComponentResult> InvokeAsync(long courseId)
        {
            var entity      = _mapper.Map <CourseEditVM>(_context.Courses.FirstOrDefault(x => x.Id == courseId));
            var userCourses = _context.UserCourses.Where(x => x.CourseId == entity.Id).Include(x => x.User);
            var model       = new CourseEditVM
            {
                Id    = entity.Id,
                Users = userCourses.ToList()
            };

            return(View(model));
        }
        public async Task <IActionResult> EditCourse(int?id, CourseEditVM _course)
        {
            if (id == null)
            {
                return(NotFound());
            }
            Course course = await _db.Courses.FindAsync(id);

            if (course == null)
            {
                return(NotFound());
            }
            if (course.isDeleted == false)
            {
                return(NotFound());
            }

            _course.Categories = _db.Categories;
            _course.Category   = _db.Categories.FirstOrDefault(c => c.Id == course.CategoryId);

            if (!ModelState.IsValid)
            {
                return(View(_course));
            }


            if (_db.Courses.Any(c => c.Name.ToLower() == _course.Course.Name.ToLower()))
            {
                if (course.Name.ToLower() != _course.Course.Name.ToLower())
                {
                    ModelState.AddModelError(string.Empty, "Bu adda kurs mövcuddur. Xahiş edirik başqa ad seçəsiniz.");
                    return(View(_course));
                }
            }

            Category category = await _db.Categories.FindAsync(Int32.Parse(Request.Form["category"]));

            int prev_id = course.CategoryId;

            course.Name = _course.Course.Name;
            if (course.Category != category)
            {
                course.Category = category;
            }
            await _db.SaveChangesAsync();

            return(RedirectToAction("Course"));
        }
예제 #8
0
        public IActionResult Edit(CourseEditVM model)
        {
            if (ModelState.IsValid)
            {
                var entity = _context.Courses.Include(x => x.Sections).FirstOrDefault(x => x.Id == model.Id);
                if (!User.IsCurrentAuthor(entity.AuthorId))
                {
                    ModelState.AddModelError("Form", "You cannot edit this course. You are not the Author!");
                    return(View(model));
                }

                _context.Update(entity);
                _context.SaveChanges();
                return(View(model));
            }
            else
            {
                return(View(model));
            }
        }
예제 #9
0
        public async Task <IActionResult> Update(CourseEditVM courseEditVM, List <int> List /*,List<string> ListUser*/)
        {
            var users = await _usermanager.GetUsersInRoleAsync("CourseManager");

            ViewBag.Roles      = users;
            ViewBag.Categories = _db.Categories.Where(c => !c.IsDeleted).ToList();
            if (!ModelState.IsValid)
            {
                return(View());
            }
            Course dbCourse = _db.Courses.Where(c => c.IsDeleted == false).Include(c => c.CourseCategories).FirstOrDefault(c => c.Id == courseEditVM.Id);

            if (courseEditVM.Photo != null)
            {
                Helper.DeleteImage(_env.WebRootPath, "img/course", dbCourse.Image);
                dbCourse.Image = await courseEditVM.Photo.SaveImg(_env.WebRootPath, "img/course");
            }

            dbCourse.Language      = courseEditVM.Language;
            dbCourse.SkilLevel     = courseEditVM.SkilLevel;
            dbCourse.StartTime     = courseEditVM.StartTime;
            dbCourse.StudentsCount = courseEditVM.StudentsCount;
            dbCourse.Title         = courseEditVM.Title;
            dbCourse.Assesments    = courseEditVM.Assesments;
            dbCourse.ClassDuration = courseEditVM.ClassDuration;
            dbCourse.CourseUsers   = courseEditVM.CourseUsers;
            dbCourse.Description   = courseEditVM.Description;
            dbCourse.Duration      = courseEditVM.Duration;
            dbCourse.CourseFee     = courseEditVM.CourseFee;
            dbCourse.AboutCourse   = courseEditVM.AboutCourse;
            dbCourse.HowToApply    = courseEditVM.HowToApply;
            dbCourse.Certification = courseEditVM.Certification;
            var dbcoursecategory = _db.CourseCategories.Where(p => p.CourseId == dbCourse.Id);

            //foreach (var item in dbCourse.CourseUsers)
            //{
            //    dbCourse.CourseUsers.Remove(item);
            //}
            //List<CourseUser> newusers = new List<CourseUser>();
            //foreach (var item in ListUser)
            //{
            //    CourseUser courseUser = new CourseUser
            //    {
            //        CourseId = dbCourse.Id,
            //        AppUserId = item
            //    };
            //    newusers.Add(courseUser);
            //}
            //dbCourse.CourseUsers = newusers;
            //_db.SaveChanges();

            foreach (var item in dbcoursecategory)
            {
                dbCourse.CourseCategories.Remove(item);
            }
            _db.SaveChanges();

            List <CourseCategory> courseCategories = new List <CourseCategory>();

            foreach (var item in List)
            {
                CourseCategory newcourseCategory = new CourseCategory
                {
                    CourseId   = dbCourse.Id,
                    CategoryId = item
                };
                courseCategories.Add(newcourseCategory);
            }
            dbCourse.CourseCategories = courseCategories;

            await _db.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }