Add local settings management
Add cellular-first ntfy delivery with WiFi fallback and safe SIM868 HTTP header framing. Co-authored-by: Copilot <[email protected]>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from flask import Flask, render_template, make_response, json, jsonify, request, send_file
|
||||
from modules import app_gps, app_events, app_car, app_account, app_gps,app_obd, app_sql, app_dash, app_upload, app_video, app_health, app_alerts
|
||||
from modules import app_gps, app_events, app_car, app_account, app_gps,app_obd, app_sql, app_dash, app_upload, app_video, app_health, app_alerts, app_settings
|
||||
import os, time
|
||||
from gevent.pywsgi import WSGIServer
|
||||
|
||||
@@ -33,6 +33,19 @@ def dash():
|
||||
def history():
|
||||
return render_template('history.html', account=account, car=car)
|
||||
|
||||
@app.route('/settings')
|
||||
def settings():
|
||||
return render_template('settings.html', account=account, car=car)
|
||||
|
||||
@app.route('/api/settings', methods=['GET', 'POST'])
|
||||
def api_settings():
|
||||
if request.method == 'GET':
|
||||
return jsonify(app_settings.get_settings())
|
||||
errors = app_settings.update_settings(request.get_json(silent=True))
|
||||
if errors:
|
||||
return jsonify(error="Invalid settings.", fields=errors), 400
|
||||
return jsonify(app_settings.get_settings())
|
||||
|
||||
@app.route('/api/trips')
|
||||
def trips():
|
||||
return jsonify({"trips": app_sql.list_trips()})
|
||||
@@ -152,9 +165,9 @@ def alert_status():
|
||||
@app.route('/api/upload/dashcam_toggle', methods=['POST'])
|
||||
def upload_dashcam_toggle():
|
||||
body = request.get_json(silent=True) or {}
|
||||
if "enabled" not in body:
|
||||
if not isinstance(body.get("enabled"), bool):
|
||||
return jsonify(error="expected JSON body {'enabled': true|false}"), 400
|
||||
app_upload.set_dashcam_upload_enabled(bool(body["enabled"]))
|
||||
app_upload.set_dashcam_upload_enabled(body["enabled"])
|
||||
return jsonify(app_upload.get_status())
|
||||
|
||||
# not sure if im gonna use this
|
||||
|
||||
Reference in New Issue
Block a user