Exemplo n.º 1
0
        public ActionResult Create([Bind(Include = "LessonId,Name")] Lesson lesson)
        {
            if (!AuthInfo.Authenticated)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (CurrentAcademicYear.AcademicYearId == -1)
            {
                return(RedirectToAction("Index", "AcademicYears"));
            }

            if (ModelState.IsValid)
            {
                lesson.AcademicYearId = CurrentAcademicYear.AcademicYearId;
                lesson.UserId         = CurrentUser.UserId;

                db.Lessons.Add(lesson);
                db.SaveChanges();

                return(Redirect(Request.UrlReferrer.ToString()));
            }

            return(View(lesson));
        }
Exemplo n.º 2
0
        public ActionResult Create([Bind(Include = "TeacherId,Name,Job, CanTeach, Schedule")] TeacherDetailViewModel model)
        {
            if (ModelState.IsValid)
            {
                Teacher newTeacher = new Teacher
                {
                    Name           = model.Name,
                    Job            = model.Job,
                    AcademicYearId = CurrentAcademicYear.AcademicYearId,
                    UserId         = CurrentUser.UserId,
                };

                db.Teachers.Add(newTeacher);

                db.SaveChanges();

                List <CanTeach> abilities = new List <CanTeach>();

                foreach (var item in model.CanTeach)
                {
                    CanTeach ability = new CanTeach
                    {
                        TeacherId = newTeacher.TeacherId,
                        UserId    = CurrentUser.UserId,
                        LessonId  = db.Lessons.Where(m => m.Name == item).FirstOrDefault().LessonId
                    };

                    abilities.Add(ability);
                }

                db.CanTeaches.AddRange(abilities);

                db.SaveChanges();

                List <TeacherFreeTime> tfts = TeacherFreeTime.FromTableToDb(model.Schedule.ToArray());

                for (int i = 0; i < tfts.Count; i++)
                {
                    tfts[i].TeacherId      = newTeacher.TeacherId;
                    tfts[i].AcademicYearId = CurrentAcademicYear.AcademicYearId;
                    tfts[i].UserId         = CurrentUser.UserId;
                }

                db.TeacherFreeTimes.AddRange(tfts);

                db.SaveChanges();

                return(RedirectToAction("Index", "Teachers"));
            }



            model.Lessons = db.Lessons
                            .Where(l => l.AcademicYearId == CurrentAcademicYear.AcademicYearId && l.UserId == CurrentUser.UserId)
                            .OrderBy(l => l.Name)
                            .Select(l => l.Name).ToList();

            return(View(model));
        }
Exemplo n.º 3
0
        public ActionResult Create([Bind(Include = "AcademicYearId,Title,DefaultRingCount")] AcademicYear academicYear)
        {
            if (!AuthInfo.Authenticated)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (ModelState.IsValid)
            {
                academicYear.User = CurrentUser;
                db.AcademicYears.Add(academicYear);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(academicYear));
        }
Exemplo n.º 4
0
        public ActionResult ActivateUser(string key)
        {
            var user = Database.Users.Where(u => u.UserId.ToString() == key).FirstOrDefault();

            if (user == null)
            {
                ViewBag.Message = "امکان فعالسازی حساب کاربری وجود ندارد. لطفا با پشتیبانی سامانه تماس بگیرید.";
                return(View());
            }

            user.Active = true;

            Database.SaveChanges();

            return(RedirectToAction("Login", new UserViewModel {
                Email = user.Email, Password = user.Password
            }));
        }