def check_protocol(): from polaris import settings from polaris.utils import getLogger from django.conf import settings as django_settings logger = getLogger(__name__) if settings.LOCAL_MODE: logger.warning( "Polaris is in local mode. This makes the SEP-24 interactive flow " "insecure and should only be used for local development.") if not (settings.LOCAL_MODE or getattr(django_settings, "SECURE_SSL_REDIRECT")): logger.warning( "SECURE_SSL_REDIRECT is required to redirect HTTP traffic to HTTPS" ) if getattr(django_settings, "SECURE_PROXY_SSL_HEADER"): logger.warning( "SECURE_PROXY_SSL_HEADER should only be set if Polaris is " "running behind an HTTPS reverse proxy.")
from django.utils.translation import gettext as _ from rest_framework.decorators import api_view, renderer_classes from rest_framework.request import Request from rest_framework.response import Response from rest_framework.renderers import JSONRenderer, BrowsableAPIRenderer from polaris.models import Asset from polaris.utils import render_error_response from polaris.integrations import ( registered_fee_func, calculate_fee, registered_info_func, ) logger = getLogger(__name__) @api_view(["GET"]) @renderer_classes([JSONRenderer, BrowsableAPIRenderer]) def info(request: Request) -> Response: info_data = { "deposit": {}, "withdraw": {}, "fee": {"enabled": True, "authentication_required": True}, "transactions": {"enabled": True, "authentication_required": True}, "transaction": {"enabled": True, "authentication_required": True}, } for asset in Asset.objects.filter(sep6_enabled=True): try: fields_and_types = registered_info_func(asset, request.GET.get("lang"))