-- ============================================================
-- DATABASE: arsip_berita
-- Sistem Informasi Arsip Kliping Koran
-- Diskominfo Kota Probolinggo
-- ============================================================
-- Cara import: phpMyAdmin > Import > pilih file ini
-- ============================================================

CREATE DATABASE IF NOT EXISTS `arsip_berita`
    CHARACTER SET utf8mb4
    COLLATE utf8mb4_unicode_ci;

USE `arsip_berita`;

-- ============================================================
-- TABEL: users
-- ============================================================
CREATE TABLE IF NOT EXISTS `users` (
    `id_user`    INT AUTO_INCREMENT PRIMARY KEY,
    `nama`       VARCHAR(100) NOT NULL,
    `username`   VARCHAR(50)  NOT NULL UNIQUE,
    `password`   VARCHAR(255) NOT NULL,
    `role`       ENUM('admin','kabid') NOT NULL DEFAULT 'kabid',
    `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- ============================================================
-- TABEL: jenis_berita
-- ============================================================
CREATE TABLE IF NOT EXISTS `jenis_berita` (
    `id_jenis`   INT AUTO_INCREMENT PRIMARY KEY,
    `nama_jenis` VARCHAR(100) NOT NULL UNIQUE,
    `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- ============================================================
-- TABEL: media
-- ============================================================
CREATE TABLE IF NOT EXISTS `media` (
    `id_media`   INT AUTO_INCREMENT PRIMARY KEY,
    `nama_media` VARCHAR(100) NOT NULL UNIQUE,
    `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- ============================================================
-- TABEL: berita
-- ============================================================
CREATE TABLE IF NOT EXISTS `berita` (
    `id_berita`      INT AUTO_INCREMENT PRIMARY KEY,
    `judul_berita`   VARCHAR(255) NOT NULL,
    `id_media`       INT NOT NULL,
    `id_jenis`       INT NOT NULL,
    `tanggal_terbit` DATE NOT NULL,
    `file_scan`      VARCHAR(255) NOT NULL,
    `deskripsi`      TEXT,
    `created_at`     TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT `fk_berita_media` FOREIGN KEY (`id_media`)
        REFERENCES `media`(`id_media`) ON UPDATE CASCADE ON DELETE RESTRICT,
    CONSTRAINT `fk_berita_jenis` FOREIGN KEY (`id_jenis`)
        REFERENCES `jenis_berita`(`id_jenis`) ON UPDATE CASCADE ON DELETE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- ============================================================
-- INDEX untuk performa pencarian & filter
-- ============================================================
CREATE INDEX `idx_berita_tanggal` ON `berita`(`tanggal_terbit`);
CREATE INDEX `idx_berita_media`   ON `berita`(`id_media`);
CREATE INDEX `idx_berita_jenis`   ON `berita`(`id_jenis`);

-- ============================================================
-- DATA: Jenis Berita (6 kategori)
-- ============================================================
INSERT INTO `jenis_berita` (`nama_jenis`) VALUES
    ('Pemerintahan'),
    ('Ekonomi'),
    ('Budaya'),
    ('Pendidikan'),
    ('Peristiwa'),
    ('Program Ramah Anak');

-- ============================================================
-- DATA: Media Koran (9 sumber media)
-- ============================================================
INSERT INTO `media` (`nama_media`) VALUES
    ('Jawa Pos'),
    ('Harian Bangsa'),
    ('Bhirawa'),
    ('Pojok Kiri'),
    ('Duta Masyarakat'),
    ('Surya'),
    ('Memorandum'),
    ('Radar Indonesia'),
    ('Suara Media Nasional');

-- ============================================================
-- DATA: Akun Default
-- Password admin  : admin123
-- Password kabid  : kabid123
-- (Di-hash dengan PHP password_hash bcrypt)
-- ============================================================
INSERT INTO `users` (`nama`, `username`, `password`, `role`) VALUES
    ('Administrator Diskominfo', 'admin',
     '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi',
     'admin'),
    ('Kepala Bidang Diskominfo', 'kabid',
     '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi',
     'kabid');

-- ============================================================
-- Selesai! Buka: http://localhost/arsip_berita/login.php
-- Admin : admin  / admin123
-- Kabid : kabid  / kabid123
-- ============================================================
