Skip to content
Snippets Groups Projects
Select Git revision
  • eb836dfb1acf61ad71133ee7ae835e74cbcb0f34
  • master default protected
  • jw
3 results

production.py

Blame
  • Forked from Institut π / pi-cms
    Source project has a limited visibility.
    utils.py 711 B
    import logging
    import os.path
    
    import requests
    from django.conf import settings
    
    logger = logging.getLogger(__name__)
    
    
    def get_donated_amount_from_api(portal_project_id):
        url = os.path.join(
            settings.DONATE_PORTAL_API_URL, "donate/bar", str(portal_project_id)
        )
    
        try:
            response = requests.get(url, timeout=settings.DONATE_PORTAL_API_TIMEOUT)
            response.raise_for_status()
            _, amount = response.json()
            return amount
    
        except requests.exceptions.Timeout:
            logger.warning("Donate portal API call timed out for %s", url)
    
        except requests.exceptions.RequestException:
            logger.warning("Donate portal API call failed for %s", url)
    
        return None