#!/usr/bin/env python3
"""Cetak caption jadwal FB Yasma dari API (untuk preview ke Bos)."""
import sys
from datetime import datetime, timedelta, timezone

sys.path.insert(0, "/home/mantapman/.hermes/profiles/atun/workspace")
from repliz_client import get_client  # noqa: E402

WIB = timezone(timedelta(hours=7))
FB = "6a3b41e3c5ff4ce3a327544b"

c = get_client()
docs, page = [], 1
while True:
    r = c.get_schedules(page=page, limit=100)
    d = r.get("docs") or r.get("data") or []
    if not d:
        break
    docs.extend(d)
    if len(d) < 100:
        break
    page += 1

mine = [x for x in docs if x.get("accountId") == FB]
mine.sort(key=lambda x: x.get("scheduleAt") or "")
ingin = sys.argv[1:] or ["2026-10-07", "2026-10-06"]
for s in mine:
    sa = s.get("scheduleAt") or ""
    dt = datetime.strptime(sa[:19], "%Y-%m-%dT%H:%M:%S").replace(tzinfo=timezone.utc).astimezone(WIB)
    if dt.strftime("%Y-%m-%d") in ingin:
        print("=== %s WIB | %s | %s | %d char ===" % (dt.strftime("%d %b %H:%M"), s.get("status"),
                                                     (s.get("title") or "")[:60], len(s.get("description") or "")))
        print(s.get("description"))
        print()
