Skip to content

y #127

Description

@aali7068709-max
<title>Digital Emas - Beranda</title> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> <style> * { margin: 0; padding: 0; box-sizing: border-box; font-family: Arial, sans-serif; } body { background: #fff; color: #000; } .container { max-width: 480px; margin: 0 auto; background: #fff; padding: 20px; min-height: 100vh; padding-bottom: 90px; } /* Header */ .header-top { text-align: left; margin-bottom: 10px; } .tagline-top { color: #d4a017; font-size: 18px; font-weight: 600; letter-spacing: 1px; } .logo-title { font-size: 42px; font-weight: bold; } .text-blue { color: #0b3d91; } .text-gold { color: #e6b800; } .subtitle { font-size: 14px; color: #555; margin-top: 4px; } .gold-bars { text-align: right; margin-top: -90px; } .gold-bars span { font-size: 80px; } /* Indikator Halaman Aktif */ .page-indicator { background: linear-gradient(90deg, #e8f0fe, #fef8e7); border-radius: 20px; padding: 8px 16px; margin: 12px 0 20px; display: inline-flex; align-items: center; gap: 8px; } .page-indicator span { font-size: 14px; font-weight: 600; color: #0b3d91; } .page-indicator .home-icon { font-size: 18px; } /* Saldo Card */ .balance-card { background: linear-gradient(135deg, #0b4896, #1565c0); border-radius: 16px; padding: 24px 20px; margin: 10px 0 20px; color: white; position: relative; box-shadow: 0 4px 12px rgba(11, 72, 150, 0.15); } .balance-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; } .balance-title { font-size: 18px; font-weight: 600; } .eye-icon { font-size: 20px; } .balance-buttons { display: flex; flex-direction: column; gap: 8px; } .btn { padding: 10px 24px; border-radius: 8px; border: none; font-size: 16px; font-weight: 600; cursor: pointer; transition: opacity 0.2s; } .btn:hover { opacity: 0.9; } .btn-white { background: white; color: #0b4896; } .btn-blue { background: #1976d2; color: white; } .balance-amount { font-size: 42px; font-weight: bold; margin: 8px 0; } .active-status { font-size: 14px; opacity: 0.8; display: flex; align-items: center; gap: 6px; } .dot { width: 8px; height: 8px; background: #4caf50; border-radius: 50%; } .balance-row { display: flex; justify-content: space-between; margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,0.2); } .balance-col label { font-size: 14px; opacity: 0.75; display: block; margin-bottom: 4px; } .balance-col span { font-size: 18px; font-weight: 600; } /* GRAFIK HARGA EMAS */ .chart-section { background: #f8fafc; border-radius: 16px; padding: 24px 20px; margin-bottom: 24px; } .chart-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; } .chart-title { font-size: 20px; font-weight: 600; color: #0b3d91; } .current-price { text-align: right; } .price-value { font-size: 22px; font-weight: bold; color: #000; } .price-change { font-size: 14px; font-weight: 600; margin-top: 2px; } .price-change.up { color: #10b981; } .price-change.down { color: #ef4444; } .time-tabs { display: flex; gap: 8px; margin-bottom: 20px; overflow-x: auto; padding-bottom: 4px; } .time-tab { padding: 6px 14px; border-radius: 16px; font-size: 13px; border: none; background: #eee; color: #666; cursor: pointer; transition: all 0.2s; white-space: nowrap; } .time-tab.active { background: #0b4896; color: white; } .chart-container { position: relative; height: 250px; margin-bottom: 20px; } .stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } .stat-card { background: white; border-radius: 10px; padding: 14px; box-shadow: 0 1px 3px rgba(0,0,0,0.05); } .stat-label { font-size: 12px; color: #777; margin-bottom: 4px; } .stat-value { font-size: 16px; font-weight: 600; } .stat-value.up { color: #10b981; } .stat-value.down { color: #ef4444; } /* Menu Icons */ .menu-grid { display: flex; justify-content: space-between; margin: 30px 0; flex-wrap: wrap; } .menu-item { text-align: center; cursor: pointer; transition: transform 0.2s; } .menu-item:hover { transform: scale(1.05); } .menu-icon { width: 60px; height: 60px; background: linear-gradient(135deg, #d4a017, #f0c808); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; margin-bottom: 8px; } .menu-label { font-size: 14px; color: #333; } /* Testimoni Section */ .testimoni-section { background: #f8fafc; border-radius: 16px; padding: 24px 20px; margin-bottom: 24px; } .testimoni-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; } .testimoni-title { font-size: 20px; font-weight: 600; color: #0b3d91; } .testimoni-grid { display: flex; flex-direction: column; gap: 16px; } .testimoni-card { background: white; border-radius: 12px; padding: 16px; box-shadow: 0 2px 6px rgba(0,0,0,0.05); border-left: 4px solid #4caf50; } .testimoni-header-card { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 10px; } .testimoni-user { display: flex; align-items: center; gap: 10px; } .user-avatar { width: 40px; height: 40px; background: linear-gradient(135deg, #0b4896, #1565c0); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; font-size: 18px; font-weight: bold; } .user-info h4 { font-size: 15px; font-weight: 600; color: #333; } .user-info p { font-size: 12px; color: #888; } .testimoni-stars { color: #f59e0b; font-size: 14px; } .testimoni-text { font-size: 14px; color: #444; line-height: 1.6; margin-bottom: 8px; } .testimoni-badge { display: inline-block; background: #e8f5e9; color: #2e7d32; font-size: 11px; padding: 2px 8px; border-radius: 10px; font-weight: 600; } .help-center { display: flex; align-items: center; gap: 10px; margin: 20px 0; font-size: 18px; font-weight: 600; color: #333; } /* Bottom Nav */ .bottom-nav { display: flex; justify-content: space-around; padding-top: 12px; border-top: 1px solid #eee; margin-top: 10px; position: fixed; bottom: 0; left: 50%; transform: translateX(-50%); width: 100%; max-width: 480px; background: white; padding-bottom: 15px; box-shadow: 0 -2px 10px rgba(0,0,0,0.05); } .nav-item { text-align: center; font-size: 12px; color: #888; padding: 4px 12px; border-radius: 8px; transition: all 0.2s; cursor: pointer; } .nav-item.active { color: #0b3d91; font-weight: 600; } .nav-item.active .nav-icon { transform: scale(1.1); } .nav-icon { font-size: 22px; margin-bottom: 4px; transition: transform 0.2s; } .nav-center { width: 56px; height: 56px; background: linear-gradient(135deg, #d4a017, #f0c808); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 26px; margin-top: -16px; box-shadow: 0 3px 8px rgba(212, 160, 23, 0.3); } /* OVERLAY & POPUP */ .overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); z-index: 99; justify-content: center; align-items: center; } .overlay.active { display: flex; } .popup { background: white; border-radius: 16px; width: 90%; max-width: 420px; padding: 24px; animation: popupFade 0.3s ease; max-height: 90vh; overflow-y: auto; } @Keyframes popupFade { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } .popup-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; } .popup-title { font-size: 20px; font-weight: 600; color: #0b3d91; } .close-btn { font-size: 24px; cursor: pointer; color: #888; } .form-group { margin-bottom: 16px; } .form-label { display: block; font-size: 14px; color: #555; margin-bottom: 6px; } .form-input, .form-select { width: 100%; padding: 12px; border: 1px solid #ddd; border-radius: 8px; font-size: 16px; } .form-input:focus, .form-select:focus { outline: none; border-color: #0b4896; } .submit-btn { width: 100%; padding: 14px; background: linear-gradient(135deg, #0b4896, #1565c0); color: white; border: none; border-radius: 8px; font-size: 16px; font-weight: 600; cursor: pointer; transition: opacity 0.2s; } .submit-btn:hover { opacity: 0.95; } .note-text { font-size: 12px; color: #888; margin-top: 12px; text-align: center; } .success-message { display: none; text-align: center; padding: 20px 0; animation: fadeIn 0.4s ease; } @Keyframes fadeIn { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } } .success-icon { font-size: 60px; color: #4caf50; margin-bottom: 16px; } .success-title { font-size: 22px; font-weight: bold; color: #2e7d32; margin-bottom: 8px; } .success-text { font-size: 15px; color: #555; margin-bottom: 20px; } .close-success-btn { background: #4caf50; color: white; border: none; padding: 10px 24px; border-radius: 6px; font-size: 15px; cursor: pointer; } .form-content { transition: opacity 0.3s ease; } .form-content.hidden { display: none; } .info-box { background: #e8f0fe; border-radius: 8px; padding: 12px; margin-bottom: 16px; font-size: 13px; color: #0b3d91; } .withdraw-nominal { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; } .withdraw-nominal button { padding: 8px 12px; border: 1px solid #ddd; background: white; border-radius: 6px; cursor: pointer; font-size: 14px; } .withdraw-nominal button:hover { border-color: #0b4896; background: #e8f0fe; } </style>
Emas · Logam Mulia

Digital Emas

Investasi Emas Dengan Mudah, Aman, Menguntungkan

🥇🥈
    <!-- ✅ INDIKATOR SEDANG DI BERANDA -->
    <div class="page-indicator">
        <span class="home-icon">🏠</span>
        <span>Anda sedang di Beranda</span>
    </div>

    <!-- Saldo Card -->
    <div class="balance-card">
        <div class="balance-header">
            <div>
                <span class="balance-title">Ringkasan Saldo</span>
                <span class="eye-icon">👁️</span>
                <div class="balance-amount">Rp 0</div>
                <div class="active-status"><span class="dot"></span> Akun aktif</div>
            </div>
            <div class="balance-buttons">
                <button class="btn btn-white" id="btnIsiSaldo">Isi Saldo</button>
                <button class="btn btn-blue" id="btnTarikSaldo">Tarik Saldo</button>
            </div>
        </div>
        <div class="balance-row">
            <div class="balance-col">
                <label>Saldo utama</label>
                <span>Rp 0</span>
            </div>
            <div class="balance-col">
                <label>Saldo penarikan</label>
                <span>Rp 0</span>
            </div>
        </div>
    </div>

    <!-- GRAFIK HARGA EMAS -->
    <div class="chart-section" id="chartSection">
        <div class="chart-header">
            <div>
                <h3 class="chart-title">📈 Grafik Harga Emas</h3>
            </div>
            <div class="current-price">
                <div class="price-value" id="currentPrice">Rp 2.385.871</div>
                <div class="price-change up" id="priceChange">▲ +0.07%</div>
            </div>
        </div>

        <div class="time-tabs">
            <button class="time-tab" data-period="1H">1 Jam</button>
            <button class="time-tab active" data-period="24H">24 Jam</button>
            <button class="time-tab" data-period="7H">7 Hari</button>
            <button class="time-tab" data-period="1B">1 Bulan</button>
            <button class="time-tab" data-period="1T">1 Tahun</button>
        </div>

        <div class="chart-container">
            <canvas id="goldChart"></canvas>
        </div>

        <div class="stats-grid">
            <div class="stat-card">
                <div class="stat-label">Harga Terendah</div>
                <div class="stat-value" id="lowPrice">Rp 2.381.500</div>
            </div>
            <div class="stat-card">
                <div class="stat-label">Harga Tertinggi</div>
                <div class="stat-value up" id="highPrice">Rp 2.385.871</div>
            </div>
            <div class="stat-card">
                <div class="stat-label">Rata-rata</div>
                <div class="stat-value" id="avgPrice">Rp 2.383.739</div>
            </div>
            <div class="stat-card">
                <div class="stat-label">Perubahan</div>
                <div class="stat-value up" id="changeValue">+Rp 3.871</div>
            </div>
        </div>
    </div>

    <!-- Menu -->
    <div class="menu-grid">
        <div class="menu-item" id="menuIsiSaldo">
            <div class="menu-icon">✉️</div>
            <div class="menu-label">Isi Saldo</div>
        </div>
        <div class="menu-item" id="menuChart">
            <div class="menu-icon">📊</div>
            <div class="menu-label">Grafik Emas</div>
        </div>
        <div class="menu-item">
            <div class="menu-icon">✅</div>
            <div class="menu-label">Check-in</div>
        </div>
        <div class="menu-item">
            <div class="menu-icon">⬇️</div>
            <div class="menu-label">Unduh</div>
        </div>
        <div class="menu-item" id="menuTestimoni">
            <div class="menu-icon">💬</div>
            <div class="menu-label">Testimoni</div>
        </div>
    </div>

    <!-- Testimoni Section -->
    <div class="testimoni-section" id="testimoniSection">
        <div class="testimoni-header">
            <h3 class="testimoni-title">💬 Testimoni Pengguna</h3>
        </div>
        <div class="testimoni-grid">
            <div class="testimoni-card">
                <div class="testimoni-header-card">
                    <div class="testimoni-user">
                        <div class="user-avatar">S</div>
                        <div class="user-info">
                            <h4>Siti Aminah</h4>
                            <p>✅ Pengguna Terverifikasi</p>
                        </div>
                    </div>
                    <div class="testimoni-stars">⭐⭐⭐⭐⭐</div>
                </div>
                <p class="testimoni-text">Alhamdulillah penarikan pertama saya sukses! Dana masuk ke rekening BRI hanya dalam waktu 3 jam saja. Sangat terpercaya dan aman. Terima kasih Digital Emas! 🙏</p>
                <span class="testimoni-badge">✅ Penarikan Berhasil</span>
            </div>
            <div class="testimoni-card">
                <div class="testimoni-header-card">
                    <div class="testimoni-user">
                        <div class="user-avatar">B</div>
                        <div class="user-info">
                            <h4>Budi Santoso</h4>
                            <p>✅ Pengguna Terverifikasi</p>
                        </div>
                    </div>
                    <div class="testimoni-stars">⭐⭐⭐⭐⭐</div>
                </div>
                <p class="testimoni-text">Saya sudah tarik saldo ke DANA sebanyak 3 kali, semuanya berhasil dan cepat sekali prosesnya. Tidak ada kendala, aplikasinya sangat membantu. Semoga makin maju! 🔥</p>
                <span class="testimoni-badge">✅ Penarikan Berhasil</span>
            </div>
            <div class="testimoni-card">
                <div class="testimoni-header-card">
                    <div class="testimoni-user">
                        <div class="user-avatar">R</div>
                        <div class="user-info">
                            <h4>Rina Kartika</h4>
                            <p>✅ Pengguna Terverifikasi</p>
                        </div>
                    </div>
                    <div class="testimoni-stars">⭐⭐⭐⭐⭐</div>
                </div>
                <p class="testimoni-text">Awalnya ragu, tapi setelah coba tarik ke BCA dan uangnya masuk tepat waktu, saya jadi yakin. Proses penarikannya sangat mudah dan cepat. Sangat direkomendasikan! 👍</p>
                <span class="testimoni-badge">✅ Penarikan Berhasil</span>
            </div>
        </div>
    </div>

    <!-- Pusat Bantuan -->
    <div class="help-center">
        <span>🔧</span>
        <span>Pusat Bantuan</span>
    </div>
</div>

<!-- Bottom Navigation Bar -->
<div class="bottom-nav">
    <div class="nav-item active" id="navBeranda">
        <div class="nav-icon">🏠</div>
        <span>Beranda</span>
    </div>
    <div class="nav-item" id="navMenu">
        <div class="nav-icon">📊</div>
        <span>Menu</span>
    </div>
    <div class="nav-item">
        <div class="nav-center">💎</div>
    </div>
    <div class="nav-item">
        <div class="nav-icon">👥</div>
        <span>Tim</span>
    </div>
    <div class="nav-item">
        <div class="nav-icon">👤</div>
        <span>Saya</span>
    </div>
</div>

<!-- ============== POPUP: ISI SALDO ============== -->
<div class="overlay" id="isiSaldoOverlay">
    <div class="popup">
        <div class="popup-header">
            <h3 class="popup-title">Isi Saldo</h3>
            <span class="close-btn" id="closeIsiSaldo">&times;</span>
        </div>
        <div class="form-content" id="isiSaldoContent">
            <div class="form-group">
                <label class="form-label">Pilih Nominal Top Up</label>
                <div class="withdraw-nominal">
                    <button data-value="50000">Rp 50.000</button>
                    <button data-value="100000">Rp 100.000</button>
                    <button data-value="250000">Rp 250.000</button>
                    <button data-value="500000">Rp 500.000</button>
                    <button data-value="1000000">Rp 1.000.000</button>
                    <button data-value="2000000">Rp 2.000.000</button>
                </div>
            </div>
            <div class="form-group">
                <label class="form-label">Atau Masukkan Nominal Lain</label>
                <input type="number" class="form-input" id="isiNominalInput" placeholder="Contoh: 150000">
            </div>
            <div class="form-group">
                <label class="form-label">Pilih Metode Pembayaran</label>
                <select class="form-select" id="paymentMethod">
                    <option value="">-- Pilih Metode --</option>
                    <option value="dana">💵 DANA</option>
                    <option value="bank">🏦 Transfer Bank</option>
                    <option value="ewallet">📱 E-Wallet Lainnya</option>
                </select>
            </div>
            <div class="info-box" id="danaInfo" style="display: none;">
                <strong>📱 DANA</strong><br>
                Nomor: 083162619048<br>
                a.n. RR IDA KURNIAWATI
            </div>
            <button class="submit-btn" id="isiSubmitBtn">Saya Sudah Membayar</button>
            <p class="note-text">Pastikan pembayaran sudah berhasil sebelum menekan tombol di atas</p>
        </div>
        <div class="success-message" id="isiSuccessMessage">
            <div class="success-icon">✅</div>
            <h3 class="success-title">Terima Kasih!</h3>
            <p class="success-text">Deposit sedang di proses. Saldo akan segera bertambah setelah pembayaran terverifikasi.</p>
            <button class="close-success-btn" id="isiCloseSuccess">Tutup</button>
        </div>
    </div>
</div>

<!-- ============== POPUP: TARIK SALDO ============== -->
<div class="overlay" id="tarikSaldoOverlay">
    <div class="popup">
        <div class="popup-header">
            <h3 class="popup-title">Tarik Saldo</h3>
            <span class="close-btn" id="closeTarikSaldo">&times;</span>
        </div>
        <div class="form-content" id="tarikSaldoContent">
            <div class="info-box">
                💡 Minimal penarikan: Rp 10.000. Penarikan akan diproses dalam 1x24 jam kerja.
            </div>
            <div class="form-group">
                <label class="form-label">Masukkan Nominal Penarikan</label>
                <input type="number" class="form-input" id="tarikNominalInput" placeholder="Contoh: 100000">
            </div>
            <div class="form-group">
                <label class="form-label">Tujuan Penarikan</label>
                <select class="form-select" id="jenisTujuan">
                    <option value="">-- Pilih Tujuan Penarikan --</option>
                    <option value="bank">🏦 Rekening Bank</option>
                    <option value="dana">💵 DANA</option>
                    <option value="ovo">💳 OVO</option>
                    <option value="gopay">💰 GoPay</option>
                    <option value="shopeepay">🛒 ShopeePay</option>
                    <option value="linkaja">📲 LinkAja</option>
                </select>
            </div>
            <div class="form-group" id="bankGroup" style="display: none;">
                <label class="form-label">Nama Bank</label>
                <select class="form-select" id="namaBank">
                    <option value="">-- Pilih Bank --</option>
                    <option value="bca">Bank BCA</option>
                    <option value="mandiri">Bank Mandiri</option>
                    <option value="bri">Bank BRI</option>
                    <option value="bni">Bank BNI</option>
                    <option value="btn">Bank BTN</option>
                    <option value="bsi">Bank Syariah Indonesia (BSI)</option>
                    <option value="cimb">CIMB Niaga</option>
                    <option value="danamon">Bank Danamon</option>
                    <option value="permata">Bank Permata</option>
                    <option value="maybank">Maybank Indonesia</option>
                    <option value="bukopin">Bank Bukopin</option>
                    <option value="mega">Bank Mega</option>
                    <option value="other">Bank Lainnya</option>
                </select>
            </div>
            <div class="form-group" id="bankLainGroup" style="display: none;">
                <label class="form-label">Nama Bank Lainnya</label>
                <input type="text" class="form-input" id="bankLainInput" placeholder="Masukkan nama bank">
            </div>
            <div class="form-group">
                <label class="form-label" id="labelNoRek">Nomor Rekening</label>
                <input type="text" class="form-input" id="noRekInput" placeholder="Masukkan nomor">
            </div>
            <div class="form-group">
                <label class="form-label">Atas Nama</label>
                <input type="text" class="form-input" id="anInput" placeholder="Nama pemilik rekening">
            </div>
            <div class="form-group" id="keteranganGroup" style="display: none;">
                <label class="form-label">Nomor Telepon Terdaftar</label>
                <input type="text" class="form-input" id="noHpEwallet" placeholder="08xx-xxxx-xxxx">
            </div>
            <button class="submit-btn" id="tarikSubmitBtn">Ajukan Penarikan</button>
            <p class="note-text">Pastikan data yang dimasukkan sudah benar</p>
        </div>
        <div class="success-message" id="tarikSuccessMessage">
            <div class="success-icon">⏳</div>
            <h3 class="success-title">Penarikan Sedang Diproses!</h3>
            <p class="success-text">Terima kasih. Penarikan dana Anda sedang kami proses. Dana akan dikirim ke rekening tujuan dalam 1x24 jam kerja.</p>
            <button class="close-success-btn" id="tarikCloseSuccess">Tutup</button>
        </div>
    </div>
</div>

<script>
    // ============== DATA GRAFIK ==============
    const chartData = {
        "1H": {
            labels: ["09:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00"],
            values: [2384500, 2384200, 2385000, 2384800, 2385500, 2385200, 2385871],
            low: "Rp 2.384.200",
            high: "Rp 2.385.871",
            avg: "Rp 2.385.000",
            change: "+Rp 1.370",
            changePercent: "+0.06%"
        },
        "24H": {
            labels: ["00:00", "04:00", "08:00", "12:00", "16:00", "20:00", "Sekarang"],
            values: [2382000, 2381500, 2383000, 2384000, 2385000, 2384800, 2385871],
            low: "Rp 2.381.500",
            high: "Rp 2.385.871",
            avg: "Rp 2.383.739",
            change: "+Rp 3.871",
            changePercent: "+0.16%"
        },
        "7H": {
            labels: ["Sen", "Sel", "Rab", "Kam", "Jum", "Sab", "Min"],
            values: [2360000, 2365000, 2370500, 2372000, 2378000, 2382000, 2385871],
            low: "Rp 2.355.931",
            high: "Rp 2.385.871",
            avg: "Rp 2.373.267",
            change: "+Rp 29.940",
            changePercent: "+1.27%"
        },
        "1B": {
            labels: ["1", "5", "10", "15", "20", "25", "30"],
            values: [2350000, 2355000, 2362000, 2368000, 2375000, 2380000, 2385871],
            low: "Rp 2.350.000",
            high: "Rp 2.385.871",
            avg: "Rp 2.368.000",
            change: "+Rp 35.871",
            changePercent: "+1.53%"
        },
        "1T": {
            labels: ["Okt", "Nov", "Des", "Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep"],
            values: [2150000, 2180000, 2200000, 2230000, 2250000, 2280000, 2300000, 2320000, 2340000, 2355000, 2370000, 2385871],
            low: "Rp 2.150.000",
            high: "Rp 2.385.871",
            avg: "Rp 2.287.000",
            change: "+Rp 235.871",
            changePercent: "+10.97%"
        }
    };

    // Inisialisasi Chart
    const ctx = document.getElementById('goldChart').getContext('2d');
    let goldChart = new Chart(ctx, {
        type: 'line',
        data: {
            labels: chartData["24H"].labels,
            datasets: [{
                label: 'Harga Emas',
                data: chartData["24H"].values,
                borderColor: '#0b4896',
                backgroundColor: 'rgba(11, 72, 150, 0.05)',
                fill: true,
                tension: 0.4,
                pointRadius: 4,
                pointBackgroundColor: '#0b4896',
                pointBorderColor: '#fff',
                pointBorderWidth: 2,
                borderWidth: 3
            }]
        },
        options: {
            responsive: true,
            maintainAspectRatio: false,
            plugins: {
                legend: { display: false },
                tooltip: {
                    backgroundColor: '#000',
                    titleFont: { size: 13 },
                    bodyFont: { size: 14 },
                    padding: 12,
                    cornerRadius: 8,
                    callbacks: {
                        label: function(context) {
                            return 'Rp ' + context.raw.toLocaleString('id-ID');
                        }
                    }
                }
            },
            scales: {
                x: {
                    grid: { display: false },
                    ticks: { font: { size: 11 }, color: '#888' }
                },
                y: {
                    grid: { color: '#f0f0f0' },
                    ticks: {
                        font: { size: 10 },
                        color: '#888',
                        callback: function(value) {
                            return (value / 1000000).toFixed(2) + 'jt';
                        }
                    }
                }
            },
            interaction: {
                mode: 'index',
                intersect: false
            }
        }
    });

    // Update Chart saat ganti periode
    document.querySelectorAll('.time-tab').forEach(tab => {
        tab.addEventListener('click', function() {
            document.querySelectorAll('.time-tab').forEach(t => t.classList.remove('active'));
            this.classList.add('active');
            
            const period = this.dataset.period;
            const data = chartData[period];
            
            goldChart.data.labels = data.labels;
            goldChart.data.datasets[0].data = data.values;
            goldChart.update();
            
            document.getElementById('lowPrice').textContent = data.low;
            document.getElementById('highPrice').textContent = data.high;
            document.getElementById('avgPrice').textContent = data.avg;
            document.getElementById('changeValue').textContent = data.change;
            document.getElementById('priceChange').textContent = '▲ ' + data.changePercent;
        });
    });

    // Klik Menu Grafik Emas -> Scroll ke Grafik
    document.getElementById('menuChart').addEventListener('click', () => {
        document.getElementById('chartSection').scrollIntoView({ behavior: 'smooth' });
    });

    // ============== FUNGSI UMUM ==============
    function showFormContent(overlay) {
        overlay.querySelector('.form-content').classList.remove('hidden');
        overlay.querySelector('.success-message').style.display = 'none';
    }
    function showSuccess(overlay) {
        overlay.querySelector('.form-content').classList.add('hidden');
        overlay.querySelector('.success-message').style.display = 'block';
    }

    // ============== ISI SALDO ==============
    const btnIsiSaldo = document.getElementById('btnIsiSaldo');
    const menuIsiSaldo = document.getElementById('menuIsiSaldo');
    const isiSaldoOverlay = document.getElementById('isiSaldoOverlay');
    const closeIsiSaldo = document.getElementById('closeIsiSaldo');
    const isiSubmitBtn = document.getElementById('isiSubmitBtn');
    const isiCloseSuccess = document.getElementById('isiCloseSuccess');
    const paymentMethod = document.getElementById('paymentMethod');
    const danaInfo = document.getElementById('danaInfo');
    const isiNominalInput = document.getElementById('isiNominalInput');

    btnIsiSaldo.addEventListener('click', () => {
        isiSaldoOverlay.classList.add('active');
        showFormContent(isiSaldoOverlay);
        isiNominalInput.value = '';
        paymentMethod.value = '';
        danaInfo.style.display = 'none';
    });
    menuIsiSaldo.addEventListener('click', () => btnIsiSaldo.click());
    closeIsiSaldo.addEventListener('click', () => isiSaldoOverlay.classList.remove('active'));
    isiSaldoOverlay.addEventListener('click', e => {
        if (e.target === isiSaldoOverlay) isiSaldoOverlay.classList.remove('active');
    });
    paymentMethod.addEventListener('change', () => {
        danaInfo.style.display = paymentMethod.value === 'dana' ? 'block' : 'none';
    });
    document.querySelectorAll('#isiSaldoOverlay .withdraw-nominal button').forEach(btn => {
        btn.addEventListener('click', function() {
            isiNominalInput.value = this.dataset.value;
        });
    });
    isiSubmitBtn.addEventListener('click', () => showSuccess(isiSaldoOverlay));
    isiCloseSuccess.addEventListener('click', () => isiSaldoOverlay.classList.remove('active'));

    // ============== TARIK SALDO ==============
    const btnTarikSaldo = document.getElementById('btnTarikSaldo');
    const tarikSaldoOverlay = document.getElementById('tarikSaldoOverlay');
    const closeTarikSaldo = document.getElementById('closeTarikSaldo');
    const tarikSubmitBtn = document.getElementById('tarikSubmitBtn');
    const tarikCloseSuccess = document.getElementById('tarikCloseSuccess');
    const jenisTujuan = document.getElementById('jenisTujuan');
    const bankGroup = document.getElementById('bankGroup');
    const bankLainGroup = document.getElementById('bankLainGroup');
    const namaBank = document.getElementById('namaBank');
    const labelNoRek = document.getElementById('labelNoRek');
    const keteranganGroup = document.getElementById('keteranganGroup');

    btnTarikSaldo.addEventListener('click', () => {
        tarikSaldoOverlay.classList.add('active');
        document.getElementById('tarikNominalInput').value = '';
        jenisTujuan.value = '';
        namaBank.value = '';
        document.getElementById('bankLainInput').value = '';
        document.getElementById('noRekInput').value = '';
        document.getElementById('anInput').value = '';
        document.getElementById('noHpEwallet').value = '';
        bankGroup.style.display = 'none';
        bankLainGroup.style.display = 'none';
        keteranganGroup.style.display = 'none';
        labelNoRek.textContent = 'Nomor Rekening';
    });
    closeTarikSaldo.addEventListener('click', () => tarikSaldoOverlay.classList.remove('active'));
    tarikSaldoOverlay.addEventListener('click', e => {
        if (e.target === tarikSaldoOverlay) tarikSaldoOverlay.classList.remove('active');
    });
    jenisTujuan.addEventListener('change', () => {
        const val = jenisTujuan.value;
        bankGroup.style.display = 'none';
        bankLainGroup.style.display = 'none';
        keteranganGroup.style.display = 'none';
        if (val === 'bank') {
            bankGroup.style.display = 'block';
            labelNoRek.textContent = 'Nomor Rekening';
        } else if (val === 'dana' || val === 'ovo' || val === 'gopay' || val === 'shopeepay' || val === 'linkaja') {
            labelNoRek.textContent = 'Nomor Akun / No HP';
            keteranganGroup.style.display = 'block';
        }
    });
    namaBank.addEventListener('change', () => {
        bankLainGroup.style.display = namaBank.value === 'other' ? 'block' : 'none';
    });
    tarikSubmitBtn.addEventListener('click', () => {
        tarikSaldoOverlay.querySelector('.form-content').classList.add('hidden');
        tarikSaldoOverlay.querySelector('.success-message').style.display = 'block';
    });
    tarikCloseSuccess.addEventListener('click', () => tarikSaldoOverlay.classList.remove('active'));

    // ============== TESTIMONI ==============
    document.getElementById('menuTestimoni').addEventListener('click', () => {
        document.getElementById('testimoniSection').scrollIntoView({ behavior: 'smooth' });
    });
</script>

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions