#!/usr/bin/env python3
"""DAS: lihat konteks nomor asing di #6836 + daftar halaman yang benar."""
import base64, json, re, time, urllib.request, importlib.util

WS = "/home/mantapman/.hermes/profiles/atun/workspace"
spec = importlib.util.spec_from_file_location("cfg_das", f"{WS}/cfg_das.py")
m = importlib.util.module_from_spec(spec); spec.loader.exec_module(m)
CFG = m.CFG
DOM, AUTH = CFG["domain"], base64.b64encode(f'{CFG["user"]}:{CFG["pass"]}'.encode()).decode()
UA = {"User-Agent": "Mozilla/5.0"}


def rest(p):
    r = urllib.request.Request(f"https://{DOM}{p}", headers={"Authorization": f"Basic {AUTH}", **UA})
    for _ in range(3):
        try:
            with urllib.request.urlopen(r, timeout=180) as x:
                return json.loads(x.read())
        except Exception:
            time.sleep(4)
    return []


p = rest("/wp-json/wp/v2/posts/6836?context=edit&_fields=id,slug,title,link,content")
raw = p["content"]["raw"]
print(f"#{p['id']}  {p['link']}")
print(f"judul: {p['title']['raw']}\n")
print(f"panjang isi: {len(raw)} karakter\n")
print("=== konteks 0812-3456-7890 ===")
for mm in re.finditer(r"0812[\s\-]?3456[\s\-]?7890", raw):
    potong = raw[max(0, mm.start() - 700):mm.end() + 500]
    bersih = re.sub(r"<[^>]+>", " ", potong)
    print("   " + re.sub(r"\s+", " ", bersih).strip()[:900] + "\n")

print("=== semua tautan di #6836 ===")
for t in sorted(set(re.findall(r'href="([^"]+)"', raw))):
    print("   " + t[:110])

print("\n=== daftar halaman (page) DAS ===")
for pg in rest("/wp-json/wp/v2/pages?per_page=50&context=edit&_fields=id,slug,link,title"):
    print(f"   #{pg['id']:>4} {pg['link']}")
