#!/usr/bin/env python3
"""Susun kalender pemasangan 30 caption Google Business Profile TSC (2x per pekan) + saran gambarnya."""
import re
from datetime import date, timedelta

WS = "/home/mantapman/.hermes/profiles/atun/workspace"
SUMBER = f"{WS}/drafts/tsc_gbp_30_caption.md"
KELUAR = f"{WS}/drafts/tsc_gbp_kalender.md"

teks = open(SUMBER, encoding="utf-8").read()
# ambil tiap caption: "**N. Jenis: Judul**" lalu teksnya sampai ---
blok = re.findall(r"\*\*(\d+)\.\s*([^:*]+):\s*([^*]+)\*\*\n(.*?)(?=\n\*\*\d+\.|\n---|\Z)", teks, re.S)
print(f"caption terbaca: {len(blok)}")

GAMBAR = {
    "Perkenalan lokasi": "foto depan klinik / papan nama",
    "Kapan perlu ke dokter kulit": "foto ruang konsultasi",
    "Konsultasi online": "tangkapan layar konsultasi / dokter memegang tablet",
    "klinik kecantikan yang berstandar medis": "foto alat medis klinik",
    "Dokter kulit dan kelamin": "foto ruang periksa tertutup",
    "Jerawat yang tidak sembuh": "foto wajah berjerawat (dengan izin pasien) / ilustrasi",
    "Bekas jerawat": "foto perawatan microneedling",
    "Kulit berminyak": "foto produk perawatan yang dipakai klinik",
    "Jerawat hormonal": "foto konsultasi dokter dengan pasien",
    "Jerawat pada remaja": "foto remaja konsultasi bersama orang tua",
    "Facial medis": "foto sesi facial medis",
    "Kulit kusam": "foto before-after (dengan izin)",
    "Skin barrier": "foto close-up produk pelembap",
    "Anti aging": "foto perawatan wajah",
    "Perawatan kulit pria": "foto pasien pria saat konsultasi",
    "Apakah perlu booking": "foto area resepsionis",
    "Berapa lama hasil": "foto kontrol pasien",
    "Perawatan aman atau tidak": "foto alat yang steril / kemasan sekali pakai",
    "Mitos: jerawat muncul karena wajah kotor": "foto edukasi / ilustrasi kulit",
    "Kulit sensitif": "foto dokter memeriksa kulit",
    "Layanan yang tersedia di klinik": "foto daftar layanan / ruang tindakan",
    "Melayani pasien dari": "foto peta lokasi klinik",
    "Apa yang terjadi saat konsultasi pertama": "foto dokter mencatat riwayat pasien",
    "Klinik medis dan salon kecantikan": "foto ruang perawatan medis",
    "Tanda kulit yang sebaiknya tidak ditunda": "foto pemeriksaan kulit (dermoskop)",
    "Kenapa kami menanyakan produk": "foto produk pasien dibawa ke klinik",
    "Konsultasi dulu, tindakan kemudian": "foto meja konsultasi",
    "Menjaga hasil perawatan di rumah": "foto pelindung matahari / rutinitas pagi",
    "Perawatan jerawat dan bekas jerawat": "foto promo (buat poster khusus)",
    "Kenali dokter yang menangani": "foto dr. Avril Novianto",
}

mulai = date(2026, 10, 9)      # Jumat
hari = [4, 1]                  # Jumat (4) dan Selasa (1)
jadwal = []
t = mulai
i = 0
while i < len(blok):
    if t.weekday() in hari:
        jadwal.append(t)
        i += 1
    t += timedelta(days=1)

with open(KELUAR, "w") as f:
    f.write("# TSC — kalender pemasangan 30 caption Google Business Profile\n\n")
    f.write("Dua kali per pekan, Jumat dan Selasa, jam 09:00 WIB. Tempel caption nomor sesuai daftar,\n")
    f.write("lalu pilih tombol ajakan dan unggah gambar sesuai saran. Kalau ingin lebih cepat\n")
    f.write("(mis. 3x per pekan), kalender ini bisa saya susun ulang.\n\n")
    f.write("| # | Tanggal | Caption | Jenis | Saran gambar |\n|---|---|---|---|---|\n")
    for (nomor, jenis, judul, _), tgl in zip(blok, jadwal):
        gambar = "—"
        for kunci, saran in GAMBAR.items():
            if kunci.lower() in judul.lower():
                gambar = saran
                break
        f.write(f"| {nomor} | {tgl.strftime('%d %b %Y')} | {judul.strip()[:58]} | {jenis.strip()} | {gambar} |\n")
    f.write(f"\nTotal: {len(jadwal)} pemasangan, selesai {jadwal[-1].strftime('%d %b %Y')}.\n")
print(f"kalender: {KELUAR} · {len(jadwal)} tanggal · {jadwal[0]} → {jadwal[-1]}")
