"""
Combined server: Temps, MoistureMeeter, FillDrainPump, SolarMon, OTA on port 5000.
Run: python app.py  or  flask --app app run --host 0.0.0.0 --port 5000
"""
import os
from flask import Flask, render_template

from blueprints.temps import bp as temps_bp
from blueprints.moisture import bp as moisture_bp
from blueprints.filldrain import bp as filldrain_bp
from blueprints.pump import bp as pump_bp
from blueprints.solarmon import bp as solarmon_bp
from blueprints.ota import bp as ota_bp
from blueprints.wifiswitch import bp as wifiswitch_bp

app = Flask(__name__)
app.secret_key = os.environ.get("SECRET_KEY", "dev-secret-ota-flash")

app.register_blueprint(temps_bp, url_prefix="/temps")
app.register_blueprint(moisture_bp, url_prefix="/moisture")
app.register_blueprint(filldrain_bp, url_prefix="/filldrain")
app.register_blueprint(pump_bp, url_prefix="/pump")
app.register_blueprint(solarmon_bp, url_prefix="/solarmon")
app.register_blueprint(wifiswitch_bp, url_prefix="/wifiswitch")
app.register_blueprint(ota_bp, url_prefix="/ota")


@app.route("/")
def index():
    """Hub: links to each app."""
    return render_template("index.html")


if __name__ == "__main__":
    app.run(host="0.0.0.0", port=5000, debug=True)
