#!/usr/bin/env python3
"""Verifikasi akhir artikel 14 TSLaw: isi draft identik dengan salinan lokal, cek benturan fokus kata kunci."""
import base64, json, urllib.request

DOM, USER, PASS = "tslaw.id", "bambangbot", "EFKm EYGx VQCP Y9go ncPr uM2Y"
AUTH = base64.b64encode(f"{USER}:{PASS}".encode()).decode()
UA = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/124 Safari/537.36"}
OUT = "/home/mantapman/.hermes/profiles/atun/workspace/tslaw_listikel"
PID = 3717


def rest(path):
    r = urllib.request.Request(f"https://{DOM}{path}", headers={"Authorization": f"Basic {AUTH}", **UA})
    with urllib.request.urlopen(r, timeout=120) as x:
        return json.loads(x.read())


lokal = open(f"{OUT}/artikel14.html").read()
p = rest(f"/wp-json/wp/v2/posts/{PID}?context=edit&_fields=id,slug,status,title,content,meta,featured_media,categories,tags")
raw = p["content"]["raw"]
print(f"draft #{p['id']} status={p['status']} slug={p['slug']}")
print(f"  isi identik dengan salinan lokal : {raw.strip() == lokal.strip()} (lokal {len(lokal)} char, WP {len(raw)} char)")
print(f"  judul   : {p['title']['raw']}")
print(f"  meta    : {json.dumps(p['meta'], ensure_ascii=False)[:260]}")
print(f"  foto    : {p['featured_media']} | kategori {p['categories']} | tag {p['tags']}")

print("\n=== CEK BENTURAN FOKUS KATA KUNCI (terbaik / pengacara / memilih) ===")
q = rest("/wp-json/wp/v2/posts?per_page=100&status=any&_fields=id,slug,status,title,meta&context=edit")
for x in q:
    f = (x.get("meta") or {}).get("_yoast_wpseo_focuskw") or ""
    teks = (f + " " + x["slug"]).lower()
    if any(k in teks for k in ("terbaik", "memilih pengacara", "kantor pengacara")):
        print(f"  #{x['id']:>4} {x['status']:<8} fokus='{f}' | /{x['slug']}/")
