-- Jalur posting lewat Tebar (tebar.app) sebagai alternatif API Meta langsung.
-- Jalankan SEKALI, setelah migrasi_posting.sql dan migrasi_hasil.sql (cadangkan database dulu).
-- Tidak mengubah tugas yang sudah ada: tugas lama tetap dianggap lewat jalur Meta.

-- Satu kunci API Tebar untuk seluruh kantor (disimpan terenkripsi, bukan teks asli).
CREATE TABLE tebar_kunci (
  id TINYINT UNSIGNED NOT NULL PRIMARY KEY,     -- selalu 1
  kunci_enc TEXT NOT NULL,
  kunci_akhir VARCHAR(4) NOT NULL,              -- 4 karakter terakhir, untuk ditampilkan
  izin VARCHAR(40) NULL,                        -- hasil uji terakhir, mis. "read,write"
  diperbarui_pada DATETIME NULL,
  dicek_pada DATETIME NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

-- Pemetaan: akun klien di kantor ini -> akun yang sudah dihubungkan di dashboard Tebar.
-- Bila baris ini ada dan aktif, posting klien itu memakai Tebar. Bila tidak ada, memakai akun_sosial (Meta langsung).
CREATE TABLE akun_tebar (
  id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  klien_id INT UNSIGNED NOT NULL,
  platform ENUM('instagram','threads') NOT NULL,
  tebar_akun_id VARCHAR(64) NOT NULL,           -- id akun di Tebar (GET /v1/accounts)
  username VARCHAR(100) NULL,
  aktif TINYINT(1) NOT NULL DEFAULT 1,
  dibuat TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  UNIQUE KEY uq_tebar_klien_platform (klien_id, platform),
  CONSTRAINT fk_tebar_klien FOREIGN KEY (klien_id) REFERENCES klien(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

ALTER TABLE tugas
  ADD COLUMN tayang_jalur VARCHAR(8)   NULL,    -- NULL atau 'meta' = API Meta langsung, 'tebar' = lewat Tebar
  ADD COLUMN tayang_url   VARCHAR(300) NULL;    -- tautan posting (dari Tebar bila tersedia)
