Esempio n. 1
0
        public ActionResult Index(int?assignmentId)
        {
            //existing assignments skip this step
            if (assignmentId != null)
            {
                Assignment assignment = db.Assignments.Find(assignmentId);

                //prime the manager for the new assignment
                manager.ActiveAssignmentId = assignment.ID;
                manager.SetActiveAssignmentType((AssignmentTypes)assignment.AssignmentTypeID);
                manager.IsNewAssignment = false;

                //load in any secondary (non-required) components
                ActivateAssignmentComponents(assignment);

                //now, load in essential components
                List <WizardBaseController> components = (from comp in manager.GetComponentsForAssignmentType(assignment.Type)
                                                          where comp.IsRequired == true
                                                          select comp).ToList();
                foreach (WizardBaseController component in components)
                {
                    component.IsSelected = true;
                }

                //finally, request that the list be sorted
                manager.SortComponents();

                //begin wizard
                return(RedirectToRoute(AssignmentWizardAreaRegistration.AssignmentWizardRoute, new { controller = manager.ActiveComponent.ControllerName }));
            }
            manager.IsNewAssignment = true;
            return(View(Assignment.AllAssignmentTypes.OrderBy(e => e.ToString()).ToList()));
        }