public ActionResult CreateTeacher(TeacherCreateTeacherVM model)
        {
            UnitOfWork unitOfWork = new UnitOfWork();
            Teacher teacher = new Teacher();
            UserRepository<Teacher> teacherRepo = new UserRepository<Teacher>(unitOfWork);
            TitleRepository titleRepo = new TitleRepository(unitOfWork);

            if (!ModelState.IsValid)
            {
                model.TitleList = TeacherTitle();

                return View(model);
            }

            try
            {
                teacher.Username = model.FirstName;
                teacher.FirstName = model.FirstName;
                teacher.LastName = model.LastName;

                int tittleId = Convert.ToInt32(model.selectedValueID);

                Title title = titleRepo.GetByID(tittleId);

                teacher.Title = title;

                UniversitySystem.Hasher.Passphrase hash = UniversitySystem.Hasher.PasswordHasher.Hash("password");
                teacher.Hash = hash.Hash;
                teacher.Salt = hash.Salt;
                teacher.Active = true;

                teacherRepo.Save(teacher);

                unitOfWork.Commit();
            }

            catch (Exception)
            {
                unitOfWork.RollBack();
                throw;
            }

            return RedirectToAction("ListTeachers", "Teacher");
        }
        public ActionResult CreateTeacher()
        {
            TeacherCreateTeacherVM model = new TeacherCreateTeacherVM();

            model.TitleList = TeacherTitle();

            return View(model);
        }