#!/usr/bin/env python3
"""
Schedule Threads Harian — Semua Akun
Format nested: Post → Reply 1 → Reply 2 (min 5 kalimat/2 paragraf)
Link artikel dari website masing-masing
"""
import json, sys, os
from datetime import datetime, timezone, timedelta
sys.path.insert(0, "/home/mantapman/.hermes/profiles/atun/workspace")
from repliz_client import get_client, ACC

client = get_client()

LOG_FILE = "/home/mantapman/.hermes/profiles/atun/workspace/log_threads_harian.json"

def load_log():
    if os.path.exists(LOG_FILE):
        with open(LOG_FILE) as f:
            return json.load(f)
    return {"last_date": "", "posts": []}

def save_log(log):
    with open(LOG_FILE, "w") as f:
        json.dump(log, f, indent=2, ensure_ascii=False)

def wib_today(hour, minute=0):
    now_wib = datetime.now(timezone.utc) + timedelta(hours=7)
    return client.make_schedule(now_wib.year, now_wib.month, now_wib.day, hour, minute, wib=True)

def schedule_nested(acc, posts, hour_wib, title_prefix):
    """Schedule 1 post + 2 reply nested. posts = [main, reply1, reply2]"""
    main, r1, r2 = posts[0], posts[1], posts[2]
    r = client.create_schedule(
        acc, main, wib_today(hour_wib),
        title=title_prefix,
        replies=[
            {"text": r1, "username": ""},
            {"text": r2, "username": ""},
        ],
    )
    sid = r.get("scheduleId", "?")
    print(f"  ✅ {title_prefix}: {sid}")
    return sid

# =============================================================================
# KONTEN HARI INI — 29 JULI 2026
# =============================================================================

# ── LEIT — 20:00 WIB ──
leit_posts = [
    # Post utama — minimal 5 kalimat/2 paragraf
    "Les Bahasa Inggris itu investasi jangka panjang buat masa depan.\n\n"
    "Banyak orang tua nanya: kapan waktu terbaik mulai? "
    "Jawabannya: sedini mungkin. Anak-anak punya kemampuan "
    "menyerap bahasa jauh lebih cepat daripada orang dewasa.\n\n"
    "Di LEIT, metode belajar pake pendekatan leadership-based learning, "
    "bukan cuma vocab & grammar. Anak belajar percaya diri, "
    "public speaking, dan karakter — semua lewat Bahasa Inggris.\n\n"
    "Program dari playgroup sampai profesional, "
    "dengan kurikulum CEFR internasional. "
    "Ada 2 cabang di Surabaya Timur & Barat.\n\n"
    "https://www.leitsurabaya.com/kursus-bahasa-inggris-surabaya-timur/",

    # Reply 1
    "Yang bikin LEIT beda?\n\n"
    "ICISD values: Integrity, Compassion, Innovation, Synergy, Dedication.\n"
    "Ini bukan sekadar nilai — ini daily practice di setiap kelas.\n\n"
    "Setiap siswa dikembangin kemampuan komunikasinya, "
    "tapi juga karakternya. Jadi bukan cuma pinter ngomong Inggris, "
    "tapi juga jadi pribadi yang lebih baik.\n\n"
    "Dan semua itu dibungkus dalam suasana belajar yang fun & interaktif. "
    "Gak heran siswa LEIT antusias tiap datang kelas.\n"
    "https://www.leitsurabaya.com/",

    # Reply 2
    "Mulai dari Rp620rb/bln — harga yang sangat terjangkau "
    "untuk quality learning yang international standard.\n\n"
    "Yang perlu disiapkan: semangat belajar dan konsistensi.\n"
    "Yang bakal didapet: skill Bahasa Inggris, leadership, "
    "public speaking, dan rasa percaya diri.\n\n"
    "Timur: 0811-331-700 (Pakuwon Town Square)\n"
    "Barat: 0811-396-488 (Waterplace Residence)\n\n"
    "One step closer to being a global leader! "
    "https://www.leitsurabaya.com/",
]

# ── TSC / DNI Clinic Krian — 23:00 WIB ──
tsc_posts = [
    # Post utama
    "Kulit berminyak dan berjerawat sering bikin insecure. "
    "Tapi tau gak sih, jerawat itu bukan cuma masalah permukaan?\n\n"
    "Banyak faktor: hormon, bakteri, produksi minyak berlebih, "
    "sampai produk skincare yang salah. "
    "Makanya penanganannya harus tepat sasaran.\n\n"
    "Jangan asal cuci muka berkali-kali — itu malah bikin "
    "skin barrier rusak dan produksi minyak makin liar.\n\n"
    "Konsultasi dengan dokter kulit adalah langkah paling bijak. "
    "Diagnosis tepat, treatment personalisasi, hasil optimal.\n\n"
    "Di The Skin Code Clinic, ada dr. Avril Novianto, Sp.DVE "
    "yang siap bantu dengan pendekatan evidence-based medicine.\n"
    "https://www.theskincodeclinic.com/5-tips-memilih-dokter-kulit-krian-untuk-kulit-berminyak-dan-berjerawat/",

    # Reply 1
    "Treatment apa aja yang cocok untuk kulit berminyak & jerawat?\n\n"
    "• Facial medis — deep cleansing tanpa iritasi\n"
    "• Chemical peeling — eksfoliasi & kontrol minyak\n"
    "• Microneedling — bekas jerawat\n"
    "• Laser — reduksi produksi minyak\n\n"
    "Tapi ingat: treatment tanpa perawatan di rumah gak maksimal. "
    "Dokter pasti kasih panduan skincare rutin yang sesuai.\n\n"
    "Yang penting: sabar. Hasil gak instan, "
    "tapi konsisten itu kuncinya.\n"
    "https://www.theskincodeclinic.com/",

    # Reply 2
    "5 tips sederhana jaga kulit:\n\n"
    "1. Pake sunscreen setiap hari — bahkan di rumah\n"
    "2. Jangan pegang-pegang jerawat — infeksi makin parah\n"
    "3. Pilih produk non-comedogenic\n"
    "4. Makan sehat, kurangi gula & susu\n"
    "5. Cukup tidur — hormone cortisol pengaruh ke jerawat\n\n"
    "Mulai dari perubahan kecil. Hasil besar datang "
    "dari konsistensi.\n"
    "https://www.theskincodeclinic.com/",
]

# =============================================================================
# SCHEDULE
# =============================================================================
log = load_log()
today_str = (datetime.now(timezone.utc) + timedelta(hours=7)).strftime("%Y-%m-%d")

print(f"📅 THREADS HARIAN — {today_str}")
print("=" * 50)

# LEIT — 20:00 WIB
print(f"\n📝 LEIT (20:00 WIB)...")
schedule_nested(ACC.LEIT_THREADS, leit_posts, 20, "LEIT - English & Leadership")

# TSC — 23:00 WIB
print(f"\n📝 TSC @dniclinic_krian (23:00 WIB)...")
schedule_nested(ACC.TSC_THREADS, tsc_posts, 23, "TSC - Kulit & Estetika")

# ── UPDATE LOG ──
log["last_date"] = today_str
log["posts"].append({
    "date": today_str,
    "leit": True,
    "tsc": True,
})
save_log(log)

print("\n" + "=" * 50)
print("✅ SELESAI!")
print("  📝 LEIT • 20:00 WIB • Post + 2 reply")
print("  🏥 TSC • 23:00 WIB • Post + 2 reply")
print("=" * 50)
