#!/usr/bin/env python3
"""Cari slug halaman 'layanan/practice areas' yang benar di tslaw.id + cek di mana tautan 404 itu dipakai."""
import base64, json, re, urllib.request

DOM = "tslaw.id"
AUTH = base64.b64encode(b"bambangbot:EFKm EYGx VQCP Y9go ncPr uM2Y").decode()
UA = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/124 Safari/537.36"}


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())


print("=== HALAMAN ===")
for pg in rest("/wp-json/wp/v2/pages?per_page=100&_fields=id,slug,link,title,status"):
    print(f"  {pg['status']:<9} #{pg['id']:<6} /{pg['slug']}/ | {pg['title']['rendered'][:60]}")

print("\n=== ARTIKEL YANG MEMUAT TAUTAN practice-areas ===")
for page in range(1, 3):
    b = rest(f"/wp-json/wp/v2/posts?per_page=100&page={page}&status=publish,draft,future&_fields=id,slug,status,content")
    if not b:
        break
    for p in b:
        raw = p["content"]["raw"]
        if "practice-areas" in raw:
            n = len(re.findall(r'href="[^"]*practice-areas[^"]*"', raw))
            print(f"  {p['status']:<8} #{p['id']:<6} /{p['slug']}/ -> {n} tautan")
