#!/usr/bin/env python3
"""TSC: simpan potret beranda (pembanding desain) dan siapkan teks judul/meta untuk pemasangan manual."""
import json, os, time
from playwright.sync_api import sync_playwright

OUT = "/home/mantapman/.hermes/profiles/atun/workspace/tsc_pemulihan"
os.makedirs(OUT, exist_ok=True)
URL = "https://www.theskincodeclinic.com/"

with sync_playwright() as p:
    b = p.chromium.launch(args=["--no-sandbox", "--disable-dev-shm-usage"])
    for nama, w, mob in (("desktop", 1280, False), ("ponsel", 390, True)):
        ctx = b.new_context(viewport={"width": w, "height": 1400}, is_mobile=mob, has_touch=mob)
        pg = ctx.new_page()
        pg.goto(URL, wait_until="load", timeout=120000)
        pg.wait_for_timeout(6000)
        pg.screenshot(path=f"{OUT}/sebelum_{nama}.png", full_page=False)
        d = pg.evaluate("() => ({t: document.body.scrollHeight, s: document.documentElement.scrollWidth, i: window.innerWidth})")
        print(f"   {nama}: tinggi {d['t']}px | lebar {d['s']} vs {d['i']} | screenshot sebelum_{nama}.png")
        ctx.close()
    b.close()

TEXT = """JUDUL & META BERANDA — THE SKIN CODE CLINIC (siap tempel)
Disiapkan 27 Sep 2026

Kondisi sekarang:
  Judul : Dokter Spesialis Kulit & Kelamin Krian Sidoarjo | Klinik Kulit Kelamin Krian   (76 karakter, terpotong di Google, berulang)
  Meta  : Dokter spesialis kulit & kelamin di Krian, Sidoarjo: jerawat, infeksi kulit, keluhan kelamin, sampai...   (145 karakter)
  Fokus : klinik kecantikan krian

Kenapa diubah:
  - Judul 76 karakter sehingga terpotong di hasil pencarian.
  - Tidak memuat nama merek, padahal query merek paling banyak diklik (13 klik dari 179 impresi / CTR 7,3%).
  - Query lokal besar tapi nol klik: "dokter kulit sidoarjo" 467 impresi posisi 6,9 (0 klik),
    "dokter kulit terdekat" 290 impresi posisi 3,2 (2 klik), "dokter kulit krian" 278 impresi posisi 1,2 (1 klik).

========================================================================
CARA PASANG (manual, di WordPress)
========================================================================
1. Buka halaman beranda di editor: Halaman > beranda (ID 409, slug klinik-kecantikan-dni-krian).
2. Di panel Yoast SEO (biasanya di bawah editor), isi kolom berikut:

   SEO title  (53 karakter):
   Dokter Kulit & Kelamin Krian Sidoarjo | The Skin Code

   Meta description  (157 karakter):
   Dokter spesialis kulit & kelamin di Krian, Sidoarjo: jerawat, infeksi kulit, keluhan kelamin, hingga estetika medis. Buat janji temu di The Skin Code Clinic.

   Focus keyphrase:
   dokter kulit sidoarjo

3. Simpan/Perbarui. Tidak ada perubahan pada isi halaman, blok, atau tampilan.

CATATAN TEKNIS (kenapa tidak bisa saya pasang sendiri):
  - Kunci meta Yoast TIDAK terdaftar di REST API situs ini, jadi tidak bisa ditulis lewat REST.
  - Penulisan lewat XML-RPC ditolak dengan pesan "Invalid author ID" karena penulis halaman beranda
    menunjuk ke user ID 2 yang sudah tidak ada di daftar user (yang ada: ID 1 "penulis",
    ID 20 "Bambang Assistant", ID 21 "Wati Assistant").
  - Kalau penulis halaman itu dibetulkan ke salah satu user yang ada, penulisan lewat API akan jalan lagi
    dan saya bisa mengerjakan sendiri tanpa menyentuh tampilan.

Setelah dipasang, kabari saya: saya verifikasi judul/meta yang benar-benar tayang, dan memastikan
tidak ada perubahan apa pun pada desain (sidik jari isi halaman saya catat: hash 7f1cb74ec2e37c71, 64.659 karakter).
"""
f = f"{OUT}/judul_meta_beranda_untuk_dipasang.txt"
open(f, "w").write(TEXT)
print(f"   berkas teks: {f}")
print(f"   hash isi halaman saat ini: 7f1cb74ec2e37c71 (64.659 karakter)")
