Exemplo n.º 1
0
        //
        // Summary:
        //     Returns true if provider can be used for this user, i.e. could require a user
        //     to have an email
        //
        // Parameters:
        //   manager:
        //
        //   user:
        Task <bool> IUserTokenProvider <BackOfficeIdentityUser, int> .IsValidProviderForUserAsync(UserManager <BackOfficeIdentityUser, int> manager, BackOfficeIdentityUser user)
        {
            var db = new FortressDatabase();

            if (!db.GetSettingsFromDatabase().GoogleAuthenticator_Enabled)
            {
                return(Task.FromResult(false));
            }

            var details = db.GetUserDetails(user.Id);

            if (details == null || !details.IsValidated || details.Provider == "GoogleAuthenticator")
            {
                return(Task.FromResult(true));
            }
            return(Task.FromResult(false));
        }
Exemplo n.º 2
0
        Task IUserTokenProvider <BackOfficeIdentityUser, int> .NotifyAsync(string token, UserManager <BackOfficeIdentityUser, int> manager, BackOfficeIdentityUser user)
        {
            var db      = new FortressDatabase();
            var details = db.GetUserDetails(user.Id);

            var settings = db.GetSettingsFromDatabase();

            if (details == null || !details.IsValidated || details.Provider == "SMS")
            {
                details.CurrentCode          = token;
                details.CurrentCodeGenerated = DateTime.UtcNow;
                db.Update(details);
            }
            var SmsProvider = FortressContext.GetCurrentSmsProvider();

            SmsProvider.SendSms(details.Configuration, string.Format(settings.SMS_MessageFormat, token));
            return(Task.FromResult(true));
        }
Exemplo n.º 3
0
        private static FortressSettings getFresh()
        {
            var db = new FortressDatabase();

            return(db.GetSettingsFromDatabase());
        }