public async Task <ActionResult> Login(LoginViewModel model, string returnUrl)
        {
            if (!ModelState.IsValid)
            {
                this.ModelState.AddModelError("Password", "Campi errati");
                return(View(model));
            }

            if (model.Email == null || model.Password == null)
            {
                this.ModelState.AddModelError("Password", "Campi errati");
                return(View("Login", "Account"));
            }

            userDto = await accountHelper.CheckUser(model.Email, model.Password);

            Account account = await accountHelper.GetByEmailAsync(model.Email);

            AccountController.accountId = account.Id;
            if (userDto == null)
            {
                ModelState.AddModelError("", "Errore");
                return(View(model));
            }


            if (returnUrl != "/" && !string.IsNullOrWhiteSpace(returnUrl) && !(returnUrl.ToLower().StartsWith("http://") || returnUrl.ToLower().StartsWith("https://")))
            {
                return(Redirect(returnUrl));
            }
            else
            {
                TempData["Id"]           = userDto.Id;
                AccountController.userId = userDto.Id;
                return(RedirectToAction("All", "User"));
            }
        }