Ejemplo n.º 1
0
        public ActionResult Create([Bind(Include = "Id,Name,Description,StartDate,EndDate,CourseId")] Module module)
        {
            if (ModelState.IsValid)
            {
                var course = db.Courses.FirstOrDefault(c => c.Id == module.CourseId);
                if (Util.Validation.DateRangeValidation(this, course, module))
                {
                    db.Modules.Add(module);
                    db.SaveChanges();
                    if (Request.IsAjaxRequest())
                    {
                        ModuleCreateViewModel vm = new ModuleCreateViewModel()
                        {
                            StartDate = course.StartDate,
                            EndDate   = course.EndDate,
                            CourseId  = course.Id,
                            Created   = true
                        };
                        return(PartialView("_Created", module));
                    }
                    return(RedirectToAction("Index", "CourseDetails", new { id = module.CourseId }));
                }
            }
            ModuleCreateViewModel model = Mapper.Map <Module, ModuleCreateViewModel>(module);

            if (Request.IsAjaxRequest())
            {
                return(PartialView("_Create", model));
            }
            return(View(model));
        }
Ejemplo n.º 2
0
        public ActionResult Create(int?courseId, ModuleCreateViewModel module)
        {
            if (courseId == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            if (ModelState.IsValid)
            {
                db.Modules.Add(new Module(module, courseId.Value));
                db.SaveChanges();
                return(RedirectToAction("Index", new { courseId = courseId }));
            }

            MakeBreadCrumbs(db.Courses.Find(courseId));

            return(View(module));
        }
Ejemplo n.º 3
0
        // GET: Modules/Create
        public ActionResult Create(int?courseId)
        {
            var course = db.Courses.FirstOrDefault(c => c.Id == courseId);
            ModuleCreateViewModel model = new ModuleCreateViewModel()
            {
                StartDate = course.StartDate,
                EndDate   = course.EndDate,
                CourseId  = course.Id,
                Created   = false
            };

            if (Request.IsAjaxRequest())
            {
                return(PartialView("_Create", model));
            }
            return(View(model));
        }
Ejemplo n.º 4
0
        public ActionResult Edit(int?id, ModuleCreateViewModel module)
        {
            if (ModelState.IsValid)
            {
                var dbmodule = db.Modules.Find(id);
                if (dbmodule == null)
                {
                    return(HttpNotFound());
                }
                dbmodule.Update(module);
                db.SaveChanges();
                return(RedirectToAction("Index", new { courseId = dbmodule.CourseId }));
            }

            MakeBreadCrumbs(db.Courses.Find(id));

            return(View(module));
        }
Ejemplo n.º 5
0
        public ActionResult CreateFromCourse(Guid courseId, Guid currId)
        {
            var course = Db.Activities.OfType <Course>().SingleOrDefault(x => x.Id == courseId);
            var curr   = Db.Curricula.SingleOrDefault(x => x.Id == currId);

            // jetzt die Default Packages


            var model = new ModuleCreateViewModel
            {
                Course      = course,
                Curriculum  = curr,
                MV          = GetMyMembership(),
                Name        = course.Name,
                ShortName   = course.ShortName,
                Description = course.Description
            };



            return(View(model));
        }
Ejemplo n.º 6
0
        public ActionResult CreateFromCourse(ModuleCreateViewModel model)
        {
            var course = Db.Activities.OfType <Course>().SingleOrDefault(x => x.Id == model.Course.Id);
            var curr   = Db.Curricula.SingleOrDefault(x => x.Id == model.Curriculum.Id);

            var pck = curr.Packages.SingleOrDefault(x => x.Name.Equals("Gesamt"));

            if (pck == null)
            {
                pck = new CurriculumPackage
                {
                    Curriculum = curr,
                    Name       = "Gesamt",
                };

                Db.CurriculumPackages.Add(pck);
                Db.SaveChanges();
            }

            var option = pck.Options.SingleOrDefault(x => x.Name.Equals("Standard"));

            if (option == null)
            {
                option = new PackageOption
                {
                    Package = pck,
                    Name    = "Standard"
                };

                Db.PackageOptions.Add(option);
                Db.SaveChanges();
            }


            // Doppelte ausschließen
            var isExisting = option.Requirements.Any(x =>
                                                     x.Name.Equals(model.Name) || x.ShortName.Equals(model.ShortName) ||
                                                     x.CatalogId.Equals(model.CatalogId));

            if (isExisting)
            {
                ModelState.AddModelError("", "Modul existiert bereits");

                // Modell wieder vervollständigen
                model.Course     = course;
                model.Curriculum = curr;
                model.MV         = GetMyMembership();

                return(View(model));
            }


            var module = new CurriculumRequirement
            {
                Name             = model.Name,
                ShortName        = model.ShortName,
                CatalogId        = model.CatalogId,
                ECTS             = model.Ects,
                SWS              = model.Sws,
                USCredits        = model.UsCredits,
                LecturerInCharge = GetMyMembership(),
                Option           = option,
            };

            Db.Requirements.Add(module);

            var nexus = new CourseModuleNexus
            {
                Course      = course,
                Requirement = module
            };

            Db.CourseNexus.Add(nexus);

            Db.SaveChanges();


            return(RedirectToAction("Admin", "Course", new { id = course.Id }));
        }