from core.models import OTPUser from core.modules.otp import providers def get_user_otps(user): try: all_otps = OTPUser.objects.filter(user=user) except: return {} user_providers = [otp.provider for otp in all_otps] active_providers = {} for name, provider in providers.items(): if name in user_providers: active_providers[name] = provider return active_providers def get_otp_by_name(name): for pname, provider in providers.items(): if pname == name: return provider def get_otp_choices(user): return [(name, provider) for name, provider in get_user_otps(user).items()]