public ActionResult Login(LoginViewModel loginViewModel)
        {
            if (Request.IsAuthenticated)
            {
                return(RedirectHome());
            }

            var user = _repository.AsEnumerable()
                       .Where(u => u.Username == loginViewModel.Username)
                       .FirstOrDefault(u => u.Password == PasswordHasher.MD5Hash(loginViewModel.Password));

            if (null != user)
            {
                FormsAuthentication.SetAuthCookie(user.Username, loginViewModel.RememberMe);
                DoPostLogin(user);
                return(RedirectHome());
            }

            ModelState.AddModelError("", "The user name or password provided is incorrect.");
            return(View(loginViewModel));
        }
 public static IEnumerable <Wallet> RecentWallets(this IGenericRepository <Wallet> repository)
 {
     return(repository.AsEnumerable()
            .Where(w => w.CreatedAt > DateTime.Now.AddDays(-30)));
 }