public ActionResult Create()
        {
            string text = db.SscisParam.Where(p => p.ParamKey.Equals(SSCISParameters.CHCIPOMAHATHTML)).Single().ParamValue;

            ViewBag.TextHelp = WebUtility.HtmlDecode(text);
            if (HttpContext.Session.GetString("role") == null)
            {
                return(View("Create_public"));
            }

            int userID = (int)HttpContext.Session.GetInt32("userId");

            if (db.TutorApplication.Where(a => a.IdUser == userID && a.IsAccepted == null).Count() > 0)
            {
                return(RedirectToAction("ApplicationPending"));
            }

            int countOfSubjects = db.EnumSubject.Count(s => s.IdParent != null && s.Lesson == true);

            MetaTutorApplication model = new MetaTutorApplication(countOfSubjects);

            SscisUser user = db.SscisUser.Find(userID);

            model.Application.IdUserNavigation = user;
            ViewBag.SubjectID    = new SelectList(db.EnumSubject.Where(s => s.Lesson != null && s.Lesson.Value).ToList(), "Id", "Code");
            ViewBag.AcceptedByID = new SelectList(db.SscisUser, "Id", "Login");
            ViewBag.UserID       = new SelectList(db.SscisUser, "Id", "Login");
            ViewBag.Degree       = new SelectList(ApplicationDegrees.Degrees);
            return(View(model));
        }
        public ActionResult Create(MetaTutorApplication model)
        {
            if (ModelState.IsValid)
            {
                int userID          = (int)HttpContext.Session.GetInt32("userId");
                int countOfSubjects = int.Parse(Request.Form["subjects_count"]);

                if (countOfSubjects < 1)
                {
                    return(RedirectToAction("Create"));
                }

                model.Application.ApplicationDate  = DateTime.Now;
                model.Application.IdUserNavigation = db.SscisUser.Find(userID);
                db.TutorApplication.Add(model.Application);
                db.SaveChanges();

                string znamky   = Request.Form["Degree"];
                string predmety = HttpContext.Request.Form["SubjectID"];

                string[] znamkyPole   = znamky.Split(',');
                string[] predmetyPole = predmety.Split(',');

                for (int i = 0; i <= countOfSubjects; i++)
                {
                    TutorApplicationSubject s = new TutorApplicationSubject();

                    s.IdApplicationNavigation = model.Application;
                    s.IdSubjectNavigation     = db.EnumSubject.Find(Int32.Parse(predmetyPole[i]));

                    byte.TryParse(znamkyPole[i], out byte deg);
                    if (deg == 0)
                    {
                        s.Degree = null;
                    }
                    else
                    {
                        s.Degree = deg;
                    }
                    db.TutorApplicationSubject.Add(s);
                    db.SaveChanges();
                }
                return(RedirectToAction("Applied"));
            }

            ViewBag.AcceptedByID = new SelectList(db.SscisUser, "ID", "Login", model.Application.AcceptedById);
            ViewBag.UserID       = new SelectList(db.SscisUser, "ID", "Login", model.Application.IdUser);
            return(View(model.Application));
        }
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new StatusCodeResult((int)HttpStatusCode.NotFound));
            }
            TutorApplication tutorApplication = db.TutorApplication.Find(id);

            if (tutorApplication == null)
            {
                return(NotFound());
            }
            MetaTutorApplication model = new MetaTutorApplication
            {
                Application = tutorApplication
            };
            List <TutorApplicationSubject> subjects = db.TutorApplicationSubject.Where(s => s.IdApplication == tutorApplication.Id).Include(a => a.IdSubjectNavigation).ToList();

            model.ApplicationSubjects = subjects;
            return(View(model));
        }