foxygit / infodisplay Log in
commits tags

/kiosk/addons/sleep/__init__.py · 833 B

raw
ADDON = {
    "name": "sleep",
    "label": "Sovläge",
    "version": "1.0",
    "order": 6,
    "has_overlay": False,
    "has_panel": True,
    "has_socketio": False,
    "state_prefix": "sleep_",
    "default_enabled": True,
}


def create_blueprint():
    from .routes import bp
    return bp


def is_sleep_active(start, end):
    """Returnerar True om nuvarande tid faller inom sovfönstret."""
    try:
        import datetime
        now = datetime.datetime.now()
        cur = now.hour * 60 + now.minute
        sh, sm = map(int, start.split(':'))
        eh, em = map(int, end.split(':'))
        s, e = sh * 60 + sm, eh * 60 + em
        # Hanterar fönster som sträcker sig över midnatt (t.ex. 22:00–07:00)
        return (cur >= s or cur < e) if s > e else (s <= cur < e)
    except Exception:
        return False