diff --git a/assets/css/base.css b/assets/css/base.css index 6916ad1..6bb4bc4 100644 --- a/assets/css/base.css +++ b/assets/css/base.css @@ -99,6 +99,25 @@ h5 { border-bottom: 1px solid #e0e0e0; } +.alert-warning { + background-color: #fff3cd; + border-color: #ffeeba; + color: #856404; + padding: 15px; + margin-bottom: 20px; + border-radius: 4px; +} + +.alert-warning .alert-link { + color: #856404; + font-weight: bold; + text-decoration: underline; +} + +.alert-warning .alert-link:hover { + color: #604c2e; +} + /* Responsive Styles */ @media (max-width: 768px) { .navbar .container { diff --git a/main.py b/main.py index f42bc36..221227b 100644 --- a/main.py +++ b/main.py @@ -3,6 +3,7 @@ from jinja2 import TemplateNotFound import json import pathlib +import os from argparse import ArgumentParser @@ -21,15 +22,32 @@ def catch_all(path): services = json.loads( (pathlib.Path(__file__).parent / "services.json").read_text() ) - return render_template(f"{path}.html", services=services) + + warning = None + + if app.development_mode: + warning = render_template("prod-warning.html") + + return render_template( + f"{path}.html", services=services, warning=warning + ) except TemplateNotFound: return "404 Not Found", 404 +app.development_mode = False + +if os.environ.get("PRIVATECOFFEE_DEV"): + app.development_mode = True + + if __name__ == "__main__": parser = ArgumentParser(description="Run the private.coffee web server.") parser.add_argument("--port", type=int, default=9810) parser.add_argument("--debug", action="store_true") + parser.add_argument("--dev", action="store_true") args = parser.parse_args() + app.development_mode = args.dev or app.development_mode + app.run(port=args.port, debug=args.debug) diff --git a/templates/base.html b/templates/base.html index d759727..13593f7 100644 --- a/templates/base.html +++ b/templates/base.html @@ -51,6 +51,7 @@ JOIN & REBEL + {% if warning %}{{ warning|safe }}{% endif %} {% block content %}{% endblock %}