__init__.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. """
  2. Website for Supremacy-stats
  3. """
  4. import os
  5. from flask import Flask
  6. from flask_sqlalchemy import SQLAlchemy
  7. from flask_migrate import Migrate
  8. from flask_login import LoginManager
  9. from flask_compress import Compress
  10. from flask_argon2 import Argon2
  11. from flask_menu import Menu
  12. class Config(object):
  13. SQLALCHEMY_DATABASE_URI = os.environ.get("DATABASE_URI", default=None)
  14. SECRET_KEY = 'g6DGM5y2bVhb0mxdCRELI5m7fnzzoJ2y'
  15. SQLALCHEMY_TRACK_MODIFICATIONS = False
  16. SEND_FILE_MAX_AGE_DEFAULT = 1296000
  17. app = Flask(__name__)
  18. app.config.from_object(Config())
  19. app.jinja_env.lstrip_blocks = True
  20. app.jinja_env.trim_blocks = True
  21. # Compress settings
  22. COMPRESS_MIMETYPES = [
  23. 'text/html',
  24. 'text/css',
  25. 'text/xml',
  26. 'application/json',
  27. 'application/javascript'
  28. ]
  29. COMPRESS_LEVEL = 6
  30. COMPRESS_MIN_SIZE = 500
  31. Compress(app)
  32. Menu(app=app)
  33. db = SQLAlchemy(app)
  34. migrate = Migrate(app, db)
  35. argon2 = Argon2(app)
  36. # Login
  37. login_manager = LoginManager()
  38. login_manager.init_app(app)
  39. login_manager.login_view = "login"
  40. login_manager.login_message_category = "warning"