first commit
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
|
||||
def env(name, default=None):
|
||||
value = os.getenv(name)
|
||||
return default if value is None or value == "" else value
|
||||
|
||||
|
||||
def env_float(name, default):
|
||||
try:
|
||||
return float(env(name, default))
|
||||
except (TypeError, ValueError):
|
||||
return float(default)
|
||||
|
||||
|
||||
def env_int(name, default):
|
||||
try:
|
||||
return int(env(name, default))
|
||||
except (TypeError, ValueError):
|
||||
return int(default)
|
||||
|
||||
|
||||
def env_json(name, default):
|
||||
raw = env(name)
|
||||
if raw is None:
|
||||
return default
|
||||
try:
|
||||
return json.loads(raw)
|
||||
except json.JSONDecodeError:
|
||||
return default
|
||||
|
||||
|
||||
class Config:
|
||||
SECRET_KEY = env("SECRET_KEY", "dev-secret")
|
||||
SQLALCHEMY_DATABASE_URI = env("DATABASE_URL", "sqlite:///fueltrack.db")
|
||||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||||
|
||||
HTTP_TIMEOUT_SECONDS = env_float("HTTP_TIMEOUT_SECONDS", 30)
|
||||
ORLEN_TIMEOUT_SECONDS = env_float("ORLEN_TIMEOUT_SECONDS", 15)
|
||||
URE_TIMEOUT_SECONDS = env_float("URE_TIMEOUT_SECONDS", 45)
|
||||
|
||||
ORLEN_WHOLESALE_URL = env("ORLEN_WHOLESALE_URL", "https://tool.orlen.pl/api/wholesalefuelprices/ByProduct")
|
||||
ORLEN_LPG_URL = env("ORLEN_LPG_URL", "https://tool.orlen.pl/api/autogasprices")
|
||||
ORLEN_LPG_BY_DATE_URL = env("ORLEN_LPG_BY_DATE_URL", "https://tool.orlen.pl/api/autogasprices/ByDate")
|
||||
URE_STATIONS_URL = env("URE_STATIONS_URL", "https://api.ure.gov.pl/api/InfrastructureFuelStation")
|
||||
|
||||
BOOTSTRAP_JS_URL = env("BOOTSTRAP_JS_URL", "https://cdn.jsdelivr.net/npm/bootstrap@5.3.7/dist/js/bootstrap.bundle.min.js")
|
||||
CHOICES_CSS_URL = env("CHOICES_CSS_URL", "https://cdn.jsdelivr.net/npm/choices.js@11.1.0/public/assets/styles/choices.min.css")
|
||||
CHOICES_JS_URL = env("CHOICES_JS_URL", "https://cdn.jsdelivr.net/npm/choices.js@11.1.0/public/assets/scripts/choices.min.js")
|
||||
CHART_JS_URL = env("CHART_JS_URL", "https://cdn.jsdelivr.net/npm/chart.js@4.5.0/dist/chart.umd.min.js")
|
||||
SOCKET_IO_JS_URL = env("SOCKET_IO_JS_URL", "https://cdn.socket.io/4.8.1/socket.io.min.js")
|
||||
|
||||
THEME_BOOTSTRAP_URL = env("THEME_BOOTSTRAP_URL", "https://cdn.jsdelivr.net/npm/bootstrap@5.3.7/dist/css/bootstrap.min.css")
|
||||
THEME_FLATLY_URL = env("THEME_FLATLY_URL", "https://cdn.jsdelivr.net/npm/bootswatch@5.3.7/dist/flatly/bootstrap.min.css")
|
||||
THEME_DARKLY_URL = env("THEME_DARKLY_URL", "https://cdn.jsdelivr.net/npm/bootswatch@5.3.7/dist/darkly/bootstrap.min.css")
|
||||
THEME_PULSE_URL = env("THEME_PULSE_URL", "https://cdn.jsdelivr.net/npm/bootswatch@5.3.7/dist/pulse/bootstrap.min.css")
|
||||
|
||||
STATION_BRAND_ALIASES = env_json("STATION_BRAND_ALIASES_JSON", {
|
||||
"ORLEN": "ORLEN",
|
||||
"HIL-GAZ": "HIL-GAZ",
|
||||
"HILL-GAZ": "HIL-GAZ",
|
||||
"BP ": "BP",
|
||||
"BP EUROPA": "BP",
|
||||
"SHELL": "Shell",
|
||||
"MOL POLSKA": "MOL",
|
||||
"CIRCLE K": "Circle K",
|
||||
"ANWIM": "MOYA",
|
||||
"AMIC": "AMIC Energy",
|
||||
"LOTOS": "LOTOS",
|
||||
"AVIA": "AVIA",
|
||||
"PIEPRZYK": "Pieprzyk",
|
||||
})
|
||||
Reference in New Issue
Block a user