__init__.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import logging
  2. from os import environ, path
  3. from dotenv import load_dotenv
  4. env = load_dotenv()
  5. APP_ROOT = path.dirname(path.realpath(__file__))
  6. """
  7. SMTP server for sending email. For a dummy server that just echoes the
  8. messages, run: `python -m smtpd -n -c DebuggingServer localhost:1025`
  9. and set SMTP_HOST to "localhost".
  10. The default is None in which causes the feedback form to be disabled.
  11. """
  12. SMTP_HOST = environ.get("TXL_SMTP_HOST")
  13. logging.basicConfig(
  14. # filename=environ.get("TXL_LOGFILE", "/dev/stdout"),
  15. level=environ.get("TXL_LOGLEVEL", logging.WARN))
  16. logger = logging.getLogger(__name__)
  17. if not env:
  18. logger.warn("No .env file found. Assuming env was passed externally.")
  19. if SMTP_HOST:
  20. try:
  21. SMTP_PORT = int(environ.get("TXL_SMTP_PORT", "1025"))
  22. except ValueError:
  23. raise SystemError("TXL_SMTP_PORT env var is not an integer.")
  24. EMAIL_FROM = environ["TXL_EMAIL_FROM"]
  25. EMAIL_TO = environ["TXL_EMAIL_TO"]
  26. else:
  27. logger.warn("No SMTP host defined. Feedback form won't be available.")
  28. SMTP_PORT = EMAIL_FROM = EMAIL_TO = None