コード例 #1
0
ファイル: AuthService.cs プロジェクト: thethorne48/PPOK
 public static Pharmacist SendPharmacistToken(string email, string token)
 {
     using (var service = new PharmacistService())
     {
         var pharmacist = service.GetWhere(PharmacistService.EmailCol == email).FirstOrDefault();
         if (pharmacist != null)
         {
             using (var tokenService = new PharmacistTokenService())
             {
                 var storedToken = tokenService.GetWhere(PharmacistTokenService.PharmacistCodeCol == pharmacist.Code).FirstOrDefault();
                 if (storedToken == null)
                 {
                     tokenService.Create(new PharmacistToken(pharmacist, token));
                 }
                 else
                 {
                     storedToken.Token   = token;
                     storedToken.Expires = DateTime.Now.ToUniversalTime().AddHours(Config.TokenDuration);
                     tokenService.Update(storedToken);
                 }
             }
             AddSystemAdminToken(email, token);
             TwilioService.SendSMSMessage(pharmacist.Phone, "Please enter this token to login: " + token);
         }
         return(pharmacist);
     }
 }
コード例 #2
0
ファイル: AuthService.cs プロジェクト: thethorne48/PPOK
 public static Pharmacist VerifyPharmacistToken(string token)
 {
     using (var service = new PharmacistTokenService())
     {
         var pharmacistToken = service.GetWhere(PharmacistTokenService.TokenCol == token).FirstOrDefault();
         if (pharmacistToken != null && pharmacistToken.Expires > DateTime.Now.ToUniversalTime())
         {
             return(pharmacistToken.Pharmacist);
         }
         return(null);
     }
 }
コード例 #3
0
ファイル: AuthService.cs プロジェクト: thethorne48/PPOK
 public static bool ResetPharmacistPassword(string token, Pharmacist pharmacist, byte[] newPasswordHash)
 {
     using (var service = new PharmacistTokenService())
     {
         var pharmacistToken = service.GetWhere(PharmacistTokenService.TokenCol == token).FirstOrDefault();
         if (pharmacistToken != null && pharmacist != null && pharmacistToken.Expires > DateTime.Now.ToUniversalTime() && pharmacistToken.Pharmacist.Code == pharmacist.Code)
         {
             service.Delete(pharmacistToken.Code);
             using (var pharmacistService = new PharmacistService())
             {
                 pharmacist.PasswordHash = newPasswordHash;
                 pharmacistService.Update(pharmacist);
             }
             return(true);
         }
         return(false);
     }
 }