public ActionResult Profile()
        {
            string username = HttpContext.User.Identity.Name;
            TeacherProfileViewModel profileVm = this.teachersService.GetTeacherProfileViewModel(username);

            return(View(profileVm));
        }
示例#2
0
 //   public Teacher teacher;
 //     public ObservableCollection<Teacher> teacherlist;
 public TeacherProfile()
 {
     this.InitializeComponent();
     this.api = new APIService();
     this.vm  = new TeacherProfileViewModel();
     //   teacher = new Teacher();
     vm.apiGet();
 }
示例#3
0
        public async Task <IActionResult> AddSubject(TeacherProfileViewModel model)
        {
            Teacher teacher = await _authentication.GetCurrentTeacherAsync();

            await _subjectService.AddSubject(model.Subject, teacher.Id);

            return(RedirectToAction("Profile"));
        }
示例#4
0
        public IActionResult Index()
        {
            var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value;
            var obj    = _db.Teachers
                         .Include(x => x.Person)
                         .Include(x => x.Faculty)
                         .FirstOrDefault(x => x.PersonId == userId);
            var vm = new TeacherProfileViewModel();

            vm.Teacher = obj;
            return(View(vm));
        }
示例#5
0
        public void Test_TeacherProfileVm_Should_Return_Vm()
        {
            // Arrange
            const string teacherUsername = "******";

            // Act
            TeacherProfileViewModel profileVm = this.teachersService.GetTeacherProfileViewModel(teacherUsername);

            // Assert
            Assert.IsNotNull(profileVm);
            Assert.AreEqual(teacherUsername, profileVm.UserName);
        }
示例#6
0
        public async Task <IActionResult> Index(TeacherProfileViewModel vm)
        {
            if (ModelState.IsValid)
            {
                var teacher = _db.Teachers.Include(x => x.Person).Where(x => x.PersonId == vm.Teacher.PersonId).FirstOrDefault();
                teacher.Person.Name    = vm.Teacher.Person.Name;
                teacher.Person.Address = vm.Teacher.Person.Address;
                teacher.Person.Email   = vm.Teacher.Person.Email;

                _db.Update(teacher);
                _db.SaveChanges();
                if (vm.IsChangePassworld)
                {// có đổi mk
                    if (vm.Password.Length < 4 || vm.CurrentPassword.Length < 4 || vm.ConfirmPassword.Length < 4)
                    {
                        ModelState.AddModelError("", "Mk ko hợp lệ");
                    }
                    else
                    {
                        try
                        {
                            var result = await _userManager.ChangePasswordAsync(teacher.Person, vm.CurrentPassword, vm.Password);

                            if (result.Succeeded)
                            {
                                return(RedirectToAction("index"));
                            }
                            else
                            {
                                foreach (var item in result.Errors)
                                {
                                    ModelState.AddModelError("", item.Description);
                                }
                            }
                        }
                        catch (Exception e)
                        {
                            ModelState.AddModelError("", e.Message);
                        }
                    }
                }
                else
                {
                    return(RedirectToAction("index", "home"));
                }
            }
            return(View(vm));
        }
        // GET: TeacherProfile
        public async Task <ActionResult> Index()
        {
            string userId = User.Identity.GetUserId();

            if (userId == null)
            {
                return(View("Error"));
            }

            var model = new TeacherProfileViewModel();

            model.Teacher = await _teacherService.GetTeacherByUserId(userId);

            //TODO model.SchoolClasses = await _teacherService.GetTeachersSchoolClasses(model.Teacher.TeacherId);

            return(View(model));
        }
示例#8
0
        public async Task <IActionResult> Profile()
        {
            User currentUser = await _authentication.GetCurrentUserAsync();

            Teacher currentTeacher = await _authentication.GetCurrentTeacherAsync();

            Department department = _authentication.GetTeachersDepartment(currentTeacher);
            Position   position   = _authentication.GetTeachersPosition(currentTeacher);

            IEnumerable <Subject> subjects = _subjectService.GetSubjectsByTeacher(currentTeacher);

            TeacherProfileViewModel model = new TeacherProfileViewModel {
                User       = currentUser,
                Department = department,
                Position   = position,
                Subjects   = subjects
            };

            return(View(model));
        }
示例#9
0
        private TeacherProfileViewModel GetTeacherProfileViewModel(User teacher)
        {
            var teacherViewModel = new TeacherProfileViewModel();
            var teacherName      = User.Identity.Name;

            foreach (var student in teacher.Students)
            {
                var studentInfo = new MyStudentInfoViewModel();

                studentInfo.StudentId = student.UserID;
                studentInfo.UserName  = student.UserName;

                studentInfo.Rank          = UserService.CalculateStudentRank(student.UserName);
                studentInfo.StudentPoints = UserService.CalculateStudentTotalPoints(student.UserName);
                studentInfo.TotalPoints   = UserService.CalculateStudentTotalQuizPoints(student.UserName);

                teacherViewModel.MyStudents.Add(studentInfo);
            }

            return(teacherViewModel);
        }