public async Task <IActionResult> SetPassword([FromBody] SetPasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(InvalidModelStateResult(ModelState));
            }

            var result = await _userRepo.SetPasswordAsync(model);

            switch (result.Key)
            {
            case 0:
                return(OtherResult(HttpStatusCode.BadRequest, "User not found for provided email."));

            case 1:
                return(OKResult(1, "Password successfully changed. Login successful.", result.Value));

            case 2:
                return(OKResult(2, "Link exipred."));
            }

            //Will never come to this
            throw new AppException("Something went wrong.");
        }