#!/usr/bin/env python3
"""Cek jam tayang sebenarnya (date vs date_gmt) untuk jadwal StudioSoft."""
import base64, json, urllib.request
from datetime import datetime, timedelta, timezone

S = "https://studiosoft.id"
AUTH = base64.b64encode(b"bambangbot:q26r RePo BVy6 pwU2 F3z7 ouyl").decode()
UA = {"User-Agent": "Mozilla/5.0"}
h = {"Authorization": f"Basic {AUTH}", **UA}
r = urllib.request.Request(f"{S}/wp-json/wp/v2/posts?status=future&per_page=5&orderby=date&order=asc"
                           f"&_fields=id,slug,date,date_gmt,modified,status", headers=h)
with urllib.request.urlopen(r, timeout=120) as x:
    d = json.loads(x.read())
print("jadwal menunggu (5 terdekat):")
for p in d:
    local = datetime.fromisoformat(p["date"])
    gmt = datetime.fromisoformat(p["date_gmt"])
    print(f"  #{p['id']:>5} date={p['date']} (naif) · date_gmt={p['date_gmt']} · selisih {int((local-gmt).total_seconds()/3600)} jam")
    print(f"          → jam tayang menurut zona situs: {local.strftime('%H:%M')} · kalau GMT: {gmt.strftime('%H:%M')}")
r2 = urllib.request.Request(f"{S}/wp-json/wp/v2/posts?status=publish&per_page=3&orderby=date&order=desc"
                            f"&_fields=id,slug,date,date_gmt", headers=h)
with urllib.request.urlopen(r2, timeout=120) as x:
    d2 = json.loads(x.read())
print("\n3 terbit terakhir:")
for p in d2:
    print(f"  #{p['id']:>5} date={p['date']} · date_gmt={p['date_gmt']} · {p['slug'][:50]}")
