Пример #1
0
        public ActionResult Details(int id)
        {
            var course             = _context.Courses.SingleOrDefault(c => c.Id == id);
            var registeredStudents = getNumberOfRegisteredStudents(id);
            var testresult         = getTestResults(id);
            var subscription       = checkSubscription(id);

            if (course == null)
            {
                return(HttpNotFound());
            }
            var viewmodel = new CourseFormViewModel
            {
                Course    = course,
                Professor = _context.Users.ToList(),
                NrOfRegisteredStudents = registeredStudents,
                RateTestPast           = testresult,
                Subscribed             = subscription
            };

            //string userIdentity = User.Identity.GetUserId();
            //var firstQuery = _context.Users.Single(c => c.Id == userIdentity);
            //viewmodel.Course.Author_Id = firstQuery.Id;

            return(View("Details", viewmodel));
        }
Пример #2
0
        private ActionResult Save(CourseFormViewModel model)
        {
            using (var context = new DatabaseContext())
            {
                model.Context = context;

                if (!ModelState.IsValid)
                {
                    model.LoadDefaultValues();
                    return(View("Form", model));
                }

                var course = context.Courses.SingleOrDefault(c => c.CourseID == model.CourseID);
                if (course == null)
                {
                    course = new Course();
                    context.Courses.Add(course);
                }

                course.CourseName     = model.CourseName;
                course.CompletionDate = model.CompletionDate;

                context.SaveChanges();

                return(RedirectToAction("Index"));
            }
        }
Пример #3
0
        public ActionResult ProfessorDetails(int id)
        {
            var course             = _context.Courses.SingleOrDefault(c => c.Id == id);
            var subscribedStudents = getNumberOfRegisteredStudents(id);
            var resultTest         = getTestResults(id);

            if (course == null)
            {
                return(HttpNotFound());
            }


            var viewmodel = new CourseFormViewModel
            {
                Course    = course,
                Professor = _context.Users.ToList(),
                NrOfRegisteredStudents = subscribedStudents,
                RateTestPast           = resultTest
            };

            if (User.IsInRole("Professor") || User.IsInRole("Admin"))
            {
                return(View("Edit", viewmodel));
            }
            else
            {
                return(View("Details", viewmodel));
            }
        }
Пример #4
0
        private void MapAndSaveCourse(CourseFormViewModel model)
        {
            var dto = new CourseFormDto
            {
                CountryCode   = model.CountryCode,
                HolesTotal    = model.HolesTotal,
                NumberOfHoles = model.NumberOfHoles,
                Latitude      = model.Latitude,
                Longitude     = model.Longitude,
                ApiParentID   = model.ApiParentID,
                ApiID         = model.ApiID,
                CourseID      = model.CourseID,
                Area          = model.Area,
                TotalDistance = model.TotalDistance,
                TotalParValue = model.TotalParValue,
                Main          = model.Main,
                FullName      = model.FullName,
                Name          = model.Name,
                Holes         = _mapper.Map <List <CourseHolesDto> >(model.Holes),
            };

            dto.CreateHoles.CourseID      = model.CreateHoles.CourseID;
            dto.CreateHoles.NumberOfHoles = model.CreateHoles.NumberOfHoles;
            dto.CreateHoles.Holes         = _mapper.Map <List <HoleDto> >(model.CreateHoles.Holes);

            _adminService.SaveUpdatedCourse(dto);
        }
        public ActionResult Save(Course course)
        {
            if (!ModelState.IsValid)
            {
                var viewModel = new CourseFormViewModel
                {
                    Course      = course,
                    Departments = _context.Departments.ToList()
                };

                return(View("CourseForm", viewModel));
            }
            if (course.Id == 0)
            {
                _context.Courses.Add(course);
            }
            else
            {
                var courseInDb = _context.Courses.Single(c => c.Id == course.Id);

                courseInDb.Name         = course.Name;
                courseInDb.DepartmentId = course.DepartmentId;
                courseInDb.GPA          = course.GPA;
            }

            _context.SaveChanges();
            return(RedirectToAction("Index", "Courses"));
        }
        public ActionResult Save(Course course)
        {
            if (!ModelState.IsValid)
            {
                var departments = _context.Departments.ToList();
                var viewModel   = new CourseFormViewModel(course)
                {
                    Departments = departments
                };

                return(View("CourseForm", viewModel));
            }

            if (course.ID == 0)
            {
                _context.Courses.Add(course);
            }
            else
            {
                var courseInDb = _context.Courses.Single(c => c.ID == course.ID);
                courseInDb.Code         = course.Code;
                courseInDb.Name         = course.Name;
                courseInDb.DepartmentId = course.DepartmentId;
                courseInDb.Credits      = course.Credits;
                courseInDb.Hours        = course.Hours;
                courseInDb.Semester     = course.Semester;
            }
            _context.SaveChanges();
            return(RedirectToAction("Index", "Courses"));
        }
Пример #7
0
        // GET: Admin/Courses/Edit
        public async Task <ActionResult> Edit(int?id)
        {
            if (!id.HasValue)
            {
                return(HttpNotFound());
            }

            CourseFormViewModel viewModel = null;

            try
            {
                var course = await _courseRepository.GetCourseById(id.Value);

                viewModel = new CourseFormViewModel(course)
                {
                    IsNew       = false,
                    CourseTypes = await _courseTypeRepository.GetCourseTypes()
                };
            }
            catch (BadRequestException bre)
            {
                AddErrorsFromAdycHttpExceptionToModelState(bre, ModelState);
            }

            // Add properties to layout
            AddPageHeader(viewModel.Title, "");

            AddBreadcrumb("Courses", Url.Action("Index", "Courses", new { area = "Admin" }));
            AddBreadcrumb(viewModel.Title, "");

            return(View("CourseForm", viewModel));
        }
Пример #8
0
        public ActionResult New()
        {
            var AllFlags   = _context.CFlags;
            var AllCourses = _context.Courses;
            var viewModel  = new CourseFormViewModel(new Course(), AllFlags, AllCourses);

            return(View("CourseForm", viewModel));
        }
Пример #9
0
        public ActionResult CreateCourse()
        {
            var viewModel = new CourseFormViewModel
            {
                Departments = _context.Departments.ToList()
            };

            return(View(viewModel));
        }
        // GET: Courses/Create
        public ActionResult Create()
        {
            var viewModel = new CourseFormViewModel
            {
                CourseTypes = db.CourseTypes.ToList()
            };

            return(View(viewModel));
        }
Пример #11
0
        public IActionResult CourseForm(int ResultId)
        {
            var model = new CourseFormViewModel()
            {
                Courses  = context.Course.Where(c => c.ResultId == ResultId).ToList(),
                ResultId = ResultId,
            };

            return(View(model));
        }
        public ViewResult CourseForm()
        {
            var departments = _context.Departments.ToList();
            var viewModel   = new CourseFormViewModel
            {
                Departments = departments
            };

            return(View("CourseForm", viewModel));
        }
Пример #13
0
        public ActionResult Create()
        {
            var departments = _context.Departments.ToList();
            var viewModel   = new CourseFormViewModel()
            {
                Departments = departments
            };

            return(View("CourseForm", viewModel));
        }
        public async Task <IActionResult> Create()
        {
            CourseFormViewModel model = new CourseFormViewModel();

            model.StartDate = DateTime.UtcNow;
            model.EndDate   = DateTime.UtcNow.AddMonths(1);
            model.Trainers  = await this.GetAllUsersAsSelectItems();

            return(View(model));
        }
Пример #15
0
        public ActionResult EditCourse(byte id)
        {
            var viewModel = new CourseFormViewModel
            {
                Course      = _context.Courses.Single(c => c.Id == id),
                Departments = _context.Departments.ToList()
            };

            return(View("CourseForm", viewModel));
        }
Пример #16
0
        public ActionResult New()
        {
            var viewModel = new CourseFormViewModel
            {
                Semesters   = _context.Semesters.ToList(),
                Departments = _context.Departments.ToList()
            };

            return(View(viewModel));
        }
        public ActionResult Save([Bind(Exclude = "PublishDate,FirstActivationDate")]
                                 Course course)
        {
            if (!ModelState.IsValid)
            {
                var viewModel = new CourseFormViewModel
                {
                    Course     = course,
                    Categories = unitOfWork.Categories.GetAll()
                };

                return(View(CourseFormConst, viewModel));
            }

            if (course.Id == 0) //New Course
            {
                course.PublishDate = DateTime.Now;

                if (course.IsActive == true)
                {
                    course.FirstActivationDate = DateTime.Now;
                }
                unitOfWork.Courses.Add(course);
            }
            else //Modified Course
            {
                var courseInDb = unitOfWork.Courses.Get(course.Id);
                if (courseInDb == null)
                {
                    return(HttpNotFound());
                }

                //TODO: Review the security AND business logic
                if (course.IsActive == true && courseInDb.IsActive == false)
                {
                    courseInDb.FirstActivationDate = DateTime.Now;
                }

                courseInDb.CourseNumber  = course.CourseNumber;
                courseInDb.CourseVersion = course.CourseVersion;
                courseInDb.Description   = course.Description;
                courseInDb.TotalHours    = course.TotalHours;
                courseInDb.VideoURL      = course.VideoURL;
                courseInDb.IsActive      = course.IsActive;
                courseInDb.CategoryId    = course.CategoryId;


                // unitOfWork.Courses.Update(course); //https://msdn.microsoft.com/en-us/library/jj592676%28v=vs.113%29.aspx
            }

            unitOfWork.Save();

            return(RedirectToAction(IndexConst, CoursesConst));
        }
Пример #18
0
        public IActionResult EditCourse(CourseFormViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(PartialView("_CourseForm", model));
            }

            MapAndSaveCourse(model);

            return(PartialView("_CourseForm", model));
        }
Пример #19
0
        public ActionResult CreateCourse(CourseFormViewModel viewModel)
        {
            var course = new Course
            {
                CourseName   = viewModel.CourseName,
                DepartmentId = viewModel.Department
            };

            _context.Courses.Add(course);
            _context.SaveChanges();
            return(RedirectToAction("Index", "Home"));
        }
Пример #20
0
        public ActionResult NewCourse()
        {
            var viewModel = new CourseFormViewModel
            {
                Course    = new Cours(),
                Professor = _context.Users.ToList()
            };
            string userIdentity = User.Identity.GetUserId();
            var    firstQuery   = _context.Users.Single(c => c.Id == userIdentity);

            viewModel.Course.Author_Id = firstQuery.Id;
            return(View("CourseForm", viewModel));
        }
Пример #21
0
        public ActionResult Save(Course course)
        {
            if (!ModelState.IsValid)
            {
                var viewModel = new CourseFormViewModel
                {
                    Code         = course.Code,
                    Name         = course.Name,
                    Credit       = course.Credit,
                    Description  = course.Description,
                    DepartmentId = course.DepartmentId,
                    SemesterId   = course.SemesterId,
                    Departments  = _context.Departments.ToList(),
                    Semesters    = _context.Semesters.ToList()
                };

                return(View("New", viewModel));
            }


            //IsUnique Cheack
            var courses = _context.Courses.Where(c => c.Code == course.Code || c.Name == course.Name).ToList();

            if (courses.Count != 0)
            {
                var viewModel = new CourseFormViewModel
                {
                    Code         = course.Code,
                    Name         = course.Name,
                    Credit       = course.Credit,
                    Description  = course.Description,
                    DepartmentId = course.DepartmentId,
                    SemesterId   = course.SemesterId,
                    Departments  = _context.Departments.ToList(),
                    Semesters    = _context.Semesters.ToList(),
                    ErrorMessage = "Course Name & Code must be Unique"
                };

                return(View("New", viewModel));
            }
            //IsUnique Check end



            _context.Courses.Add(course);
            _context.SaveChanges();

            return(RedirectToAction("Index", "Courses"));
        }
        public async Task <IActionResult> Create(CourseFormViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.Trainers = await this.GetAllUsersAsSelectItems();

                return(View(model));
            }

            await this.adminCourseService.CreateAsync(model.Name, model.Description, model.StartDate, model.EndDate, model.TrainerId);

            TempData.AddSuccessMessage($"Course '{model.Name}' has been successfully created.");

            return(RedirectToAction(nameof(Web.Controllers.CoursesController.Index), "Courses", new { area = string.Empty }));
        }
        public ActionResult Edit(int id)
        {
            var course = _context.Courses.SingleOrDefault(c => c.Id == id);

            if (course == null)
            {
                return(HttpNotFound());
            }
            var viewModel = new CourseFormViewModel
            {
                Course      = course,
                Departments = _context.Departments.ToList()
            };

            return(View("CourseForm", viewModel));
        }
Пример #24
0
        // GET: Admin/Courses/New
        public async Task <ActionResult> New()
        {
            var viewModel = new CourseFormViewModel
            {
                IsNew       = true,
                CourseTypes = await _courseTypeRepository.GetCourseTypes()
            };

            // Add properties to layout
            AddPageHeader(viewModel.Title, "");

            AddBreadcrumb("Courses", Url.Action("Index", "Courses", new { area = "Admin" }));
            AddBreadcrumb(viewModel.Title, "");

            return(View("CourseForm", viewModel));
        }
Пример #25
0
        public ActionResult EditCourse(int id)
        {
            var userId = User.Identity.GetUserId();
            var course = _context.Courses.Single(s => s.Id == id);


            var viewModel = new CourseFormViewModel
            {
                Id         = course.Id,
                CourseName = course.CourseName,



                Departments = _context.Departments.ToList()
            };

            return(View("CreateCourse", viewModel));
        }
 public ActionResult Save(Course course)
 {
     if (!ModelState.IsValid)
     {
         var viewModel = new CourseFormViewModel()
         {
             Course     = course,
             CTypes     = _context.CTypes.ToList(),
             DayInWeeks = _context.DayInWeeks.ToList(),
             Genres     = _context.Genres.ToList(),
             Levels     = _context.Levels.ToList(),
             Rooms      = _context.Rooms.ToList(),
             Semesters  = _context.Semesters.ToList()
         };
         return(View("AddNewCourse", viewModel));
     }
     if (course.Id == null)
     {
         //course.Id = 0;
         _context.Courses.Add(course);
     }
     else
     {
         //mapper.map(course,courseInDb)
         var courseInDb = _context.Courses.Single(c => c.Id == course.Id);
         courseInDb.Name          = course.Name;
         courseInDb.ClassDuration = course.ClassDuration;
         courseInDb.Hour          = course.Hour;
         courseInDb.LevelId       = course.LevelId;
         courseInDb.RoomId        = course.RoomId;
         courseInDb.SemesterId    = course.SemesterId;
         courseInDb.Year          = course.Year;
         courseInDb.BeginDate     = course.BeginDate;
         courseInDb.EndDate       = course.EndDate;
         courseInDb.CTypeId       = course.CTypeId;
         courseInDb.DayInWeekId   = course.DayInWeekId;
         courseInDb.GenreId       = course.GenreId;
         courseInDb.Times         = course.Times;
         courseInDb.BeginTime     = course.BeginTime;
         courseInDb.EndTime       = course.EndTime;
     }
     _context.SaveChanges();
     return(RedirectToAction("Index", "Courses"));
 }
Пример #27
0
        public ActionResult Edit(int id)
        {
            var course = _context.Courses
                         .Include(c => c.Flags)
                         .Include(c => c.PreReqs)
                         .Include(c => c.ReqFor)
                         .SingleOrDefault(c => c.ID == id);

            if (course == null)
            {
                return(HttpNotFound());
            }

            var AllFlags   = _context.CFlags;
            var AllCourses = _context.Courses;
            var viewModel  = new CourseFormViewModel(course, AllFlags, AllCourses);

            return(View("CourseForm", viewModel));
        }
Пример #28
0
        public async Task <ActionResult> Save(CourseFormViewModel form)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    CourseDto course = (form.IsNew)
                        ? new CourseDto()
                        : await _courseRepository.GetCourseById(form.Id.Value);

                    course.Name         = form.Name;
                    course.CourseTypeId = form.CourseTypeId;

                    if (form.IsNew)
                    {
                        await _courseRepository.PostCourse(course);
                    }
                    else
                    {
                        await _courseRepository.PutCourse(course.Id.Value, course);
                    }

                    AddPageAlerts(ViewHelpers.PageAlertType.Success, "Your changes have been saved succesfully.");

                    return(RedirectToAction("Index"));
                }
                catch (BadRequestException bre)
                {
                    AddErrorsFromAdycHttpExceptionToModelState(bre, ModelState);
                }
            }

            form.CourseTypes = await _courseTypeRepository.GetCourseTypes();

            // Add properties to layout
            AddPageHeader(form.Title, "");

            AddBreadcrumb("Courses", Url.Action("Index", "Courses", new { area = "Admin" }));
            AddBreadcrumb(form.Title, "");

            return(View("CourseForm", form));
        }
        public ActionResult AddNewCourse()
        {
            var classtypes = _context.CTypes.ToList();
            var semesters  = _context.Semesters.ToList();
            var genres     = _context.Genres.OrderBy(g => g.Name).ToList();
            var rooms      = _context.Rooms.ToList();
            var levels     = _context.Levels.ToList();
            var dayinweeks = _context.DayInWeeks.ToList();
            var viewModel  = new CourseFormViewModel
            {
                CTypes     = classtypes,
                Semesters  = semesters,
                Genres     = genres,
                Rooms      = rooms,
                Levels     = levels,
                DayInWeeks = dayinweeks
            };

            return(View("AddNewCourse", viewModel));
        }
Пример #30
0
        public ActionResult Edit(int id)
        {
            var course = _context.Courses.SingleOrDefault(c => c.Id == id);

            if (course == null)
            {
                return(HttpNotFound());
            }

            var viewmodel = new CourseFormViewModel
            {
                Course    = course,
                Professor = _context.Users.ToList()
            };
            string userIdentity = User.Identity.GetUserId();
            var    firstQuery   = _context.Users.Single(c => c.Id == userIdentity);

            viewmodel.Course.Author_Id = firstQuery.Id;
            return(View("CourseForm", viewmodel));
        }