Example #1
0
        public ActionResult Index()
        {
            if (!SchoolContext.CanConnect())
            {
                return(RedirectToAction("Index", "Error"));
            }

            OptionEnum selectedOption = OptionEnum.Rooms;

            if (TempData["selected"] != null)
            {
                selectedOption = (OptionEnum)TempData["selected"];
            }

            OptionList optionList = new OptionList();

            switch (selectedOption)
            {
            case OptionEnum.Rooms:
                optionList.entities = db.Rooms.Cast <Entity>().ToList();
                break;

            case OptionEnum.ClassGroups:
                optionList.entities = db.ClassGroups.Cast <Entity>().ToList();
                break;

            case OptionEnum.Subjects:
                optionList.entities = db.Subjects.Cast <Entity>().ToList();
                break;

            case OptionEnum.Teachers:
                optionList.entities = db.Teachers.Cast <Entity>().ToList();
                break;
            }
            optionList.selectedOption = selectedOption;
            ViewData["optionList"]    = optionList;
            ViewBag.optionList        = optionList;

            return(View());
        }
Example #2
0
        // GET: Activities
        public async Task <ActionResult> Index()
        {
            if (!SchoolContext.CanConnect())
            {
                return(RedirectToAction("Index", "Error"));
            }

            OptionEnum selectedOption = OptionEnum.Rooms;

            if (TempData["selectedOption"] != null)
            {
                selectedOption = (OptionEnum)TempData["selectedOption"];
            }

            var optionList = new OptionList();

            optionList.entities = new List <Entity>();

            switch (selectedOption)
            {
            case OptionEnum.Rooms:
                optionList.entities = await db.Rooms.Cast <Entity>().ToListAsync();

                break;

            case OptionEnum.ClassGroups:
                optionList.entities = await db.ClassGroups.Cast <Entity>().ToListAsync();

                break;

            case OptionEnum.Subjects:
                optionList.entities = await db.Subjects.Cast <Entity>().ToListAsync();

                break;

            case OptionEnum.Teachers:
                optionList.entities = await db.Teachers.Cast <Entity>().ToListAsync();

                break;
            }

            int    selectedEntityId = Convert.ToInt32(TempData["selectedEntityId"]);
            Entity selectedEntity   = optionList.entities.Where(ent => ent.Id == selectedEntityId).SingleOrDefault();

            if (selectedEntity == null)
            {
                if (selectedEntityId > 0 && TempData["ConcurrencyAlert"] == null)
                {
                    TempData["ConcurrencyAlert"] = @"Entity you are trying to select 
                    was already deleted by another user";
                }
                if (optionList.entities.Any())
                {
                    selectedEntity = optionList.entities[0];
                }
                else
                {
                    selectedEntity = new Entity();
                }
            }

            optionList.selectedOption = selectedOption;
            optionList.selectedEntity = selectedEntity;

            var activityLabels = await GenerateLabels(selectedOption, selectedEntity.Id);

            ViewBag.activityLabels = activityLabels;

            ViewBag.optionList = optionList;
            return(View());
        }