public async Task <IActionResult> ChangePassword(TeacherChangePasswordViewModel model)
        {
            if (this.ModelState.IsValid)
            {
                var user = await this.userService.GetTeacherAsync(model.Id);

                await this.userManager.RemovePasswordAsync(user);

                await this.userService.SaveChangesAsync();

                var addPasswordResult = await this.userManager.AddPasswordAsync(user, model.Password);

                if (addPasswordResult.Succeeded)
                {
                    await this.signInManager.SignOutAsync();

                    this.TempData["SuccessMsg"] = "Паролата е записана успешно";
                    return(this.Redirect("/Home/Success"));
                }
                else
                {
                    this.ModelState.AddModelError(string.Empty, addPasswordResult.Errors
                                                  .FirstOrDefault()
                                                  .ToString());
                }

                return(this.View(model));
            }

            return(this.View("Error"));
        }
        public async Task <IActionResult> PanelAsync()
        {
            var userId = this.User.FindFirst(ClaimTypes.NameIdentifier);
            var user   = await this.userService.GetUserAsync(userId.Value);

            var model = new TeacherChangePasswordViewModel
            {
                Id = user.Id,
            };

            return(this.View(model));
        }