Xcronious commited on
Commit
de05dab
Β·
verified Β·
1 Parent(s): 29f9c32

oke selesaikan semua modul ini untuk di dashboard admin Role & Akses

Browse files

πŸ§‘β€πŸ’Ό Pemilik (Super Admin)
* Login sebagai Pemilik.
* Mengisi saldo awal Bank.
* Mengisi stok awal ID.
* Melakukan adjustment Bank & ID.
* Melihat semua transaksi & history.
* Bisa override data jika ada kesalahan.
* Akses penuh ke seluruh data.

πŸ‘¨β€πŸ’» Admin
* Login sebagai Admin.
* Menambahkan Bank baru (saldo awal otomatis Rp 0).
* Menambahkan ID baru (stok awal otomatis 0).
* Mengaktifkan/menonaktifkan Bank & ID.
* Melakukan Top Up, Withdraw, Transfer, Adjustment, DC BOS, Pinjaman.
* Tidak bisa mengisi saldo awal Bank atau stok awal ID.
* Semua transaksi buatan Admin status awalnya Pending.
* Admin sendiri yang melakukan Approve/Cancel.

πŸ‘€ Customer
* Tidak perlu login.
* Mengakses halaman publik: Form Top Up, Form WD, Cek Status Transaksi.
* Mengisi nominal uang (bukan jumlah chip).
* Sistem otomatis hitung jumlah chip yang diterima.
* Membayar via Payment Gateway (untuk Top Up).
* Melihat status transaksi via kode unik / invoice ID.

πŸ” Login System
* Halaman login untuk Admin & Pemilik.
* Password terenkripsi (bcrypt).
* Gagal login β†’ muncul notifikasi error.

🏦 Modul Bank
* Admin dapat menambah bank baru (saldo awal = 0).
* Pemilik dapat mengisi saldo awal.
* Setiap Bank memiliki toggle aktif/nonaktif:
* Aktif β†’ muncul di pilihan pembayaran.
* Nonaktif β†’ disembunyikan.
* Saldo bank tampil di dashboard & transaksi.

πŸ†” Modul ID (Stok Chip)
* Admin dapat menambah ID baru (stok awal = 0).
* Pemilik dapat mengisi stok awal.
* Setiap ID ada toggle aktif/nonaktif.
* Stok chip disimpan dalam decimal (misal 100.25 = 100B + 250M).

πŸ’³ Modul Top Up
πŸ”Ή Otomatis (Customer via Web)
1. Customer isi form:
* ID Game
* Nama ID
* Nomor WhatsApp
* Nominal uang (contoh: Rp 100.000)
* Pilih metode pembayaran (Bank/QRIS)
2. Sistem otomatis hitung jumlah chip yang akan diterima:
* Jika nominal β‰₯ Rp 63.000 β†’ gunakan harga grosir tier:
β—¦ β—¦ Harga/Chip β—¦ Hasil
β—¦ Rp 65.000–Rp 649.999 β—¦ Rp 65.000 β—¦ Jumlah Chip = nominal / 65.000
β—¦ Rp 650.000–Rp 1.299.999 β—¦ Rp 64.500 β—¦ Jumlah Chip = nominal / 64.500
β—¦ Rp 1.300.000+ β—¦ Rp 63.000 β—¦ Jumlah Chip = nominal / 63.000
* β—¦ Jika nominal < Rp 63.000 β†’ gunakan tabel fractional:
β—¦ β—¦ Chip Diterima
β—¦ Rp 10.000 β—¦ 0.12
β—¦ Rp 20.000 β—¦ 0.25
β—¦ Rp 30.000 β—¦ 0.37
β—¦ dst... β—¦
3. 3 Sistem generate invoice unik dan kirim ke Payment Gateway.
4. Payment Gateway β†’ callback ke sistem:
* Sukses β†’ status jadi PAID_PENDING.
* Gagal/expired β†’ status jadi FAILED.
5. Admin buka dashboard β†’ lihat transaksi PAID_PENDING.
6. Admin Approve β†’ wajib pilih:
* ID pengirim stok (stok berkurang).
* Bank tujuan (saldo bertambah).
7. Status β†’ APPROVED β†’ stok & saldo update otomatis β†’ masuk ke History & Google Sheet (opsional).

πŸ”Ή Manual (Admin Input)
* Admin isi: Nomor WA, ID, Nama ID, Nominal Uang.
* Sistem otomatis hitung jumlah chip berdasarkan tier harga.
* Admin wajib pilih:
* Bank tujuan (customer transfer ke bank admin).
* ID pengirim stok.
* Status awal: Pending.
* Saat Approve β†’ stok ID berkurang, saldo bank bertambah.

πŸ’Έ Modul Withdraw (WD)
πŸ”Ή Otomatis (Customer)
1. Customer isi form:
* ID, Nama ID, Nomor WA
* Jumlah chip yang ingin ditarik
* Pilih Bank pribadi + No. Rekening
2. Status awal: Pending.
3. Admin Approve β†’ pilih:
* Tujuan ID (stok bertambah).
* Bank Pembayar (saldo berkurang).
4. Status β†’ APPROVED, update stok & saldo otomatis.
Harga WD: Rp 60.000/chip (fix)


πŸ”Ή Manual (Admin)
* Admin input data WD secara manual (untuk pelanggan offline).
* Status awal Pending, lalu diapprove seperti biasa.

πŸ”„ Modul Transfer
* Untuk memindahkan saldo antar bank atau stok antar ID.
* Input: Asal, Tujuan, Nominal.
* Status: Pending β†’ Approve/Cancel.
* Saat Approve β†’ stok/saldo berpindah otomatis.

βš–οΈ Modul Adjustment
* Koreksi saldo Bank atau stok ID.
* Bisa dilakukan Admin atau Pemilik.
* Adjustment langsung update (tanpa Pending).

πŸ“‰ Modul DC BOS (Biaya Operasional)
* Input nominal + keterangan.
* Status: Pending β†’ Approve/Cancel.
* Saat Approve: saldo Bank berkurang.

🀝 Modul Pinjaman
* Catatan pinjaman antar toko (chip atau uang).
* Status: Pending β†’ Approve/Cancel.
* Saat Approve: stok ID atau saldo Bank berkurang.
* Ada tabel cicilan untuk pembayaran bertahap.

πŸ“œ Modul History (Audit Log)
Semua aktivitas tercatat otomatis:
* Modul (Top Up, WD, Transfer, dll)
* Aksi (create, approve, cancel, update, delete)
* Data lama & baru (JSON)
* User yang melakukan
* Tanggal & jam
* Tidak dapat dihapus.

πŸ“Š Dashboard
Menampilkan:
* Total saldo seluruh Bank aktif
* Total stok seluruh ID aktif (decimal)
* Rekap transaksi harian/mingguan/bulanan
* Daftar transaksi Pending
* Grafik penjualan per periode

⚑ Aturan Sistem Inti
* Semua transaksi butuh approval Admin (kecuali Adjustment).
* Harga chip otomatis β€” tidak bisa diinput manual.
* Stok ID & saldo Bank update otomatis setelah Approve.
* Payment Gateway hanya untuk Top Up otomatis.
* Semua aksi tercatat di History.
* Data bisa disinkronkan ke Google Sheets (opsional).

✨ Interface
🧍 Customer Page (Publik)
* Form Top Up (input nominal β†’ sistem hitung chip otomatis).
* Form Withdraw.
* Cek status transaksi via kode unik.
πŸ§‘β€πŸ’» Admin Page
* Top Up (manual & approve otomatis).
* Withdraw, Transfer, Adjustment, DC BOS, Pinjaman.
* Dashboard + History.
πŸ‘‘ Super Admin Page
* Semua fitur admin.
* Input saldo/stok awal.
* Override data.
* Full History access.

Files changed (4) hide show
  1. admin_dashboard.html +160 -202
  2. customer_topup.html +26 -52
  3. transactions.html +47 -121
  4. withdraw.html +29 -69
admin_dashboard.html CHANGED
@@ -5,141 +5,176 @@
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>ChipFlow Commander - Admin Dashboard</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
- <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
9
  <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
10
  </head>
11
  <body class="bg-gray-100">
12
  <div class="flex h-screen">
13
  <!-- Sidebar -->
14
- <div class="w-64 bg-gray-800 text-white">
15
- <div class="p-4 border-b border-gray-700">
16
- <h1 class="text-xl font-bold">ChipFlow Commander</h1>
17
- <p class="text-sm text-gray-400">Admin Dashboard</p>
18
  </div>
19
- <nav class="mt-4">
20
- <a href="admin_dashboard.html" class="block py-2 px-4 bg-gray-700 text-white">Dashboard</a>
21
- <a href="bank_management.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">Bank Management</a>
22
- <a href="id_management.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">ID Management</a>
23
- <a href="transactions.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">Transactions</a>
24
- <a href="history.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">History Log</a>
25
- <a href="/index.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700 mt-8">Logout</a>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
  </nav>
27
- </div>
28
 
29
  <!-- Main Content -->
30
  <div class="flex-1 overflow-auto">
31
- <header class="bg-white shadow-sm p-4">
32
- <div class="flex justify-between items-center">
33
- <h2 class="text-xl font-semibold text-gray-800">Dashboard Overview</h2>
34
- <div class="flex items-center space-x-4">
35
- <span class="text-gray-600">Admin</span>
36
- <div class="w-8 h-8 bg-blue-500 rounded-full"></div>
 
 
 
 
 
 
 
 
37
  </div>
38
  </div>
39
  </header>
40
 
 
41
  <main class="p-6">
42
- <!-- Stats Cards -->
43
- <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-6">
44
- <div class="bg-white rounded-lg shadow p-6">
45
- <div class="flex items-center">
46
- <div class="p-3 rounded-full bg-blue-100 text-blue-600">
47
- <i data-feather="dollar-sign"></i>
48
- </div>
49
- <div class="ml-4">
50
- <p class="text-sm font-medium text-gray-500">Total Bank Balance</p>
51
- <p class="text-2xl font-semibold text-gray-800">Rp 125,450,000</p>
52
- </div>
53
- </div>
54
- </div>
55
- <div class="bg-white rounded-lg shadow p-6">
56
- <div class="flex items-center">
57
- <div class="p-3 rounded-full bg-green-100 text-green-600">
58
- <i data-feather="credit-card"></i>
59
- </div>
60
- <div class="ml-4">
61
- <p class="text-sm font-medium text-gray-500">Total Chips Stock</p>
62
- <p class="text-2xl font-semibold text-gray-800">1,845.75</p>
63
- </div>
64
- </div>
65
- </div>
66
- <div class="bg-white rounded-lg shadow p-6">
67
- <div class="flex items-center">
68
- <div class="p-3 rounded-full bg-purple-100 text-purple-600">
69
- <i data-feather="clock"></i>
70
- </div>
71
- <div class="ml-4">
72
- <p class="text-sm font-medium text-gray-500">Pending Transactions</p>
73
- <p class="text-2xl font-semibold text-gray-800">14</p>
74
- </div>
75
- </div>
76
- </div>
77
  <div class="bg-white rounded-lg shadow p-6">
78
- <div class="flex items-center">
79
- <div class="p-3 rounded-full bg-yellow-100 text-yellow-600">
80
- <i data-feather="trending-up"></i>
81
- </div>
82
- <div class="ml-4">
83
- <p class="text-sm font-medium text-gray-500">Today's Profit</p>
84
- <p class="text-2xl font-semibold text-gray-800">Rp 8,250,000</p>
85
- </div>
86
- </div>
87
  </div>
88
- </div>
89
- <!-- Charts -->
90
- <div class="grid grid-cols-1 lg:grid-cols-2 gap-6">
91
  <div class="bg-white rounded-lg shadow p-6">
92
- <h3 class="text-lg font-medium text-gray-800 mb-4">Revenue Overview</h3>
93
- <canvas id="revenueChart" height="250"></canvas>
 
94
  </div>
95
  <div class="bg-white rounded-lg shadow p-6">
96
- <h3 class="text-lg font-medium text-gray-800 mb-4">User Activity</h3>
97
- <canvas id="activityChart" height="250"></canvas>
 
98
  </div>
99
  </div>
100
- <!-- Pending Transactions -->
101
- <div class="bg-white rounded-lg shadow mt-6">
102
- <div class="p-6 border-b border-gray-200 flex justify-between items-center">
103
- <h3 class="text-lg font-medium text-gray-800">Pending Transactions</h3>
104
- <div class="flex space-x-2">
105
- <button class="px-3 py-1 bg-blue-100 text-blue-600 rounded-lg text-sm">Top Ups</button>
106
- <button class="px-3 py-1 bg-gray-100 text-gray-600 rounded-lg text-sm">Withdrawals</button>
107
- <button class="px-3 py-1 bg-gray-100 text-gray-600 rounded-lg text-sm">Transfers</button>
108
- </div>
109
  </div>
110
  <div class="overflow-x-auto">
111
- <table class="min-w-full divide-y divide-gray-200">
112
- <thead class="bg-gray-50">
113
- <tr>
114
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Transaction ID</th>
115
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Customer</th>
116
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Type</th>
117
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Amount</th>
118
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Date</th>
119
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Actions</th>
120
  </tr>
121
  </thead>
122
- <tbody class="bg-white divide-y divide-gray-200">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  <tr>
124
- <td class="px-6 py-4 whitespace-nowrap">#TOP-20230815-001</td>
125
- <td class="px-6 py-4 whitespace-nowrap">John Doe (08123456789)</td>
126
- <td class="px-6 py-4 whitespace-nowrap">Top Up</td>
127
- <td class="px-6 py-4 whitespace-nowrap">Rp 650,000</td>
128
- <td class="px-6 py-4 whitespace-nowrap">15 Aug 2023, 10:30</td>
129
- <td class="px-6 py-4 whitespace-nowrap">
130
- <button class="px-3 py-1 bg-green-100 text-green-600 rounded-lg text-sm mr-2">Approve</button>
131
- <button class="px-3 py-1 bg-red-100 text-red-600 rounded-lg text-sm">Reject</button>
 
 
 
 
132
  </td>
133
  </tr>
134
  <tr>
135
- <td class="px-6 py-4 whitespace-nowrap">#WD-20230815-002</td>
136
- <td class="px-6 py-4 whitespace-nowrap">Jane Smith (08198765432)</td>
137
- <td class="px-6 py-4 whitespace-nowrap">Withdrawal</td>
138
- <td class="px-6 py-4 whitespace-nowrap">2.5 Chips</td>
139
- <td class="px-6 py-4 whitespace-nowrap">15 Aug 2023, 11:45</td>
140
- <td class="px-6 py-4 whitespace-nowrap">
141
- <button class="px-3 py-1 bg-green-100 text-green-600 rounded-lg text-sm mr-2">Approve</button>
142
- <button class="px-3 py-1 bg-red-100 text-red-600 rounded-lg text-sm">Reject</button>
 
143
  </td>
144
  </tr>
145
  </tbody>
@@ -147,112 +182,35 @@
147
  </div>
148
  </div>
149
 
150
- <!-- Quick Actions -->
151
- <div class="grid grid-cols-1 md:grid-cols-3 gap-6 mt-6">
152
- <a href="customer_topup.html" class="bg-white rounded-lg shadow p-6 hover:shadow-md transition cursor-pointer">
153
- <div class="flex items-center">
154
- <div class="p-3 rounded-full bg-blue-100 text-blue-600">
155
- <i data-feather="plus-circle"></i>
156
- </div>
157
- <div class="ml-4">
158
- <h3 class="text-lg font-medium text-gray-800">Quick Top Up</h3>
159
- <p class="text-sm text-gray-500">Add new top up transaction</p>
160
- </div>
161
- </div>
162
- </a>
163
- <a href="#" class="bg-white rounded-lg shadow p-6 hover:shadow-md transition cursor-pointer">
164
- <div class="flex items-center">
165
- <div class="p-3 rounded-full bg-green-100 text-green-600">
166
- <i data-feather="minus-circle"></i>
167
- </div>
168
- <div class="ml-4">
169
- <h3 class="text-lg font-medium text-gray-800">Quick Withdrawal</h3>
170
- <p class="text-sm text-gray-500">Process chip withdrawal</p>
171
- </div>
172
  </div>
173
- </a>
174
- <a href="#" class="bg-white rounded-lg shadow p-6 hover:shadow-md transition cursor-pointer">
175
- <div class="flex items-center">
176
- <div class="p-3 rounded-full bg-purple-100 text-purple-600">
177
- <i data-feather="refresh-cw"></i>
178
- </div>
179
- <div class="ml-4">
180
- <h3 class="text-lg font-medium text-gray-800">Transfer</h3>
181
- <p class="text-sm text-gray-500">Transfer between banks/IDs</p>
182
- </div>
183
  </div>
184
- </a>
185
  </div>
186
- </main>
187
  </div>
188
  </div>
189
 
190
  <script>
191
- // Initialize feather icons
192
  feather.replace();
193
 
194
- // Charts initialization
195
- document.addEventListener('DOMContentLoaded', function() {
196
- // Revenue Chart
197
- const revenueCtx = document.getElementById('revenueChart').getContext('2d');
198
- new Chart(revenueCtx, {
199
- type: 'line',
200
- data: {
201
- labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul'],
202
- datasets: [{
203
- label: 'Revenue',
204
- data: [12000, 19000, 3000, 5000, 2000, 3000, 45000],
205
- backgroundColor: 'rgba(59, 130, 246, 0.1)',
206
- borderColor: 'rgba(59, 130, 246, 1)',
207
- borderWidth: 2,
208
- tension: 0.4,
209
- fill: true
210
- }]
211
- },
212
- options: {
213
- responsive: true,
214
- plugins: {
215
- legend: {
216
- display: false
217
- }
218
- },
219
- scales: {
220
- y: {
221
- beginAtZero: true
222
- }
223
- }
224
- }
225
- });
226
-
227
- // Activity Chart
228
- const activityCtx = document.getElementById('activityChart').getContext('2d');
229
- new Chart(activityCtx, {
230
- type: 'bar',
231
- data: {
232
- labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
233
- datasets: [{
234
- label: 'Active Users',
235
- data: [320, 150, 280, 400, 350, 420, 380],
236
- backgroundColor: 'rgba(124, 58, 237, 0.7)',
237
- borderColor: 'rgba(124, 58, 237, 1)',
238
- borderWidth: 1
239
- }]
240
- },
241
- options: {
242
- responsive: true,
243
- plugins: {
244
- legend: {
245
- display: false
246
- }
247
- },
248
- scales: {
249
- y: {
250
- beginAtZero: true
251
- }
252
- }
253
- }
254
- });
255
- });
256
  </script>
257
  </body>
258
  </html>
 
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>ChipFlow Commander - Admin Dashboard</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
+ <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
9
  <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
10
  </head>
11
  <body class="bg-gray-100">
12
  <div class="flex h-screen">
13
  <!-- Sidebar -->
14
+ <div class="w-64 bg-blue-800 text-white p-4">
15
+ <div class="flex items-center mb-8 p-2 border-b border-blue-700">
16
+ <img src="http://static.photos/finance/200x200/1" alt="Logo" class="w-10 h-10 rounded-full mr-3">
17
+ <h1 class="text-xl font-bold">ChipFlow</h1>
18
  </div>
19
+
20
+ <nav>
21
+ <div class="mb-4">
22
+ <h3 class="text-xs uppercase text-blue-300 mb-2 px-2">Main</h3>
23
+ <a href="#" class="flex items-center px-3 py-2 bg-blue-700 rounded-lg">
24
+ <i data-feather="home" class="mr-2"></i>
25
+ Dashboard
26
+ </a>
27
+ </div>
28
+
29
+ <div class="mb-4">
30
+ <h3 class="text-xs uppercase text-blue-300 mb-2 px-2">Transaksi</h3>
31
+ <a href="customer_topup.html" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg">
32
+ <i data-feather="plus-circle" class="mr-2"></i>
33
+ Top Up
34
+ </a>
35
+ <a href="customer_topup.html" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg mt-1">
36
+ <i data-feather="dollar-sign" class="mr-2"></i>
37
+ Withdraw
38
+ </a>
39
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg mt-1">
40
+ <i data-feather="repeat" class="mr-2"></i>
41
+ Transfer
42
+ </a>
43
+ </div>
44
+
45
+ <div class="mb-4">
46
+ <h3 class="text-xs uppercase text-blue-300 mb-2 px-2">Management</h3>
47
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg">
48
+ <i data-feather="database" class="mr-2"></i>
49
+ Bank Accounts
50
+ </a>
51
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg mt-1">
52
+ <i data-feather="credit-card" class="mr-2"></i>
53
+ ID Stock
54
+ </a>
55
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg mt-1">
56
+ <i data-feather="users" class="mr-2"></i>
57
+ Admin Users
58
+ </a>
59
+ </div>
60
+
61
+ <div class="mb-4">
62
+ <h3 class="text-xs uppercase text-blue-300 mb-2 px-2">Reports</h3>
63
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg">
64
+ <i data-feather="activity" class="mr-2"></i>
65
+ Transactions
66
+ </a>
67
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg mt-1">
68
+ <i data-feather="file-text" class="mr-2"></i>
69
+ Audit Log
70
+ </a>
71
+ <a href="#" class="flex items-center px-3 py-2 hover:bg-blue-700 rounded-lg mt-1">
72
+ <i data-feather="pie-chart" class="mr-2"></i>
73
+ Analytics
74
+ </a>
75
+ </div>
76
  </nav>
77
+ </div>
78
 
79
  <!-- Main Content -->
80
  <div class="flex-1 overflow-auto">
81
+ <!-- Header -->
82
+ <header class="bg-white shadow-sm p-4 flex justify-between items-center">
83
+ <div>
84
+ <h1 class="text-2xl font-bold text-gray-800">Dashboard</h1>
85
+ <p class="text-gray-600">Welcome back, Admin</p>
86
+ </div>
87
+ <div class="flex items-center">
88
+ <div class="relative mr-4">
89
+ <i data-feather="bell" class="text-gray-500"></i>
90
+ <span class="absolute -top-1 -right-1 bg-red-500 text-white text-xs rounded-full h-4 w-4 flex items-center justify-center">3</span>
91
+ </div>
92
+ <div class="flex items-center">
93
+ <img src="http://static.photos/people/200x200/2" alt="User" class="w-8 h-8 rounded-full mr-2">
94
+ <span class="font-medium">Admin User</span>
95
  </div>
96
  </div>
97
  </header>
98
 
99
+ <!-- Dashboard Content -->
100
  <main class="p-6">
101
+ <!-- Summary Cards -->
102
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6 mb-6">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
103
  <div class="bg-white rounded-lg shadow p-6">
104
+ <h3 class="text-lg font-medium text-gray-700 mb-2">Total Balance</h3>
105
+ <p class="text-2xl font-bold text-blue-600">Rp 125,450,000</p>
106
+ <p class="text-sm text-gray-500">Across all banks</p>
 
 
 
 
 
 
107
  </div>
 
 
 
108
  <div class="bg-white rounded-lg shadow p-6">
109
+ <h3 class="text-lg font-medium text-gray-700 mb-2">Total Chips</h3>
110
+ <p class="text-2xl font-bold text-green-600">1,845.75</p>
111
+ <p class="text-sm text-gray-500">Across all IDs</p>
112
  </div>
113
  <div class="bg-white rounded-lg shadow p-6">
114
+ <h3 class="text-lg font-medium text-gray-700 mb-2">Pending Transactions</h3>
115
+ <p class="text-2xl font-bold text-yellow-600">12</p>
116
+ <p class="text-sm text-gray-500">Need approval</p>
117
  </div>
118
  </div>
119
+
120
+ <!-- Recent Transactions -->
121
+ <div class="bg-white rounded-lg shadow mb-6">
122
+ <div class="p-4 border-b">
123
+ <h3 class="text-lg font-medium">Recent Transactions</h3>
 
 
 
 
124
  </div>
125
  <div class="overflow-x-auto">
126
+ <table class="min-w-full">
127
+ <thead>
128
+ <tr class="bg-gray-50 text-left text-xs text-gray-500 uppercase">
129
+ <th class="px-6 py-3">ID</th>
130
+ <th class="px-6 py-3">Type</th>
131
+ <th class="px-6 py-3">Amount</th>
132
+ <th class="px-6 py-3">Status</th>
133
+ <th class="px-6 py-3">Date</th>
134
+ <th class="px-6 py-3">Action</th>
135
  </tr>
136
  </thead>
137
+ <tbody class="divide-y divide-gray-200">
138
+ <tr>
139
+ <td class="px-6 py-4">#CF-1001</td>
140
+ <td class="px-6 py-4">Top Up</td>
141
+ <td class="px-6 py-4">Rp 650,000</td>
142
+ <td class="px-6 py-4"><span class="px-2 py-1 bg-yellow-100 text-yellow-800 rounded-full text-xs">Pending</span></td>
143
+ <td class="px-6 py-4">20 Jun 2023</td>
144
+ <td class="px-6 py-4">
145
+ <button class="text-green-600 hover:text-green-800 mr-2">
146
+ <i data-feather="check"></i>
147
+ </button>
148
+ <button class="text-red-600 hover:text-red-800">
149
+ <i data-feather="x"></i>
150
+ </button>
151
+ </td>
152
+ </tr>
153
  <tr>
154
+ <td class="px-6 py-4">#CF-1000</td>
155
+ <td class="px-6 py-4">Withdraw</td>
156
+ <td class="px-6 py-4">2.50 Chips</td>
157
+ <td class="px-6 py-4"><span class="px-2 py-1 bg-yellow-100 text-yellow-800 rounded-full text-xs">Pending</span></td>
158
+ <td class="px-6 py-4">20 Jun 2023</td>
159
+ <td class="px-6 py-4">
160
+ <button class="text-green-600 hover:text-green-800 mr-2">
161
+ <i data-feather="check"></i>
162
+ </button>
163
+ <button class="text-red-600 hover:text-red-800">
164
+ <i data-feather="x"></i>
165
+ </button>
166
  </td>
167
  </tr>
168
  <tr>
169
+ <td class="px-6 py-4">#CF-0999</td>
170
+ <td class="px-6 py-4">Top Up</td>
171
+ <td class="px-6 py-4">Rp 1,300,000</td>
172
+ <td class="px-6 py-4"><span class="px-2 py-1 bg-green-100 text-green-800 rounded-full text-xs">Approved</span></td>
173
+ <td class="px-6 py-4">19 Jun 2023</td>
174
+ <td class="px-6 py-4">
175
+ <button class="text-blue-600 hover:text-blue-800">
176
+ <i data-feather="eye"></i>
177
+ </button>
178
  </td>
179
  </tr>
180
  </tbody>
 
182
  </div>
183
  </div>
184
 
185
+ <!-- Charts Section -->
186
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
187
+ <div class="bg-white rounded-lg shadow p-6">
188
+ <h3 class="text-lg font-medium mb-4">Daily Transactions</h3>
189
+ <div class="h-64 bg-gray-100 rounded flex items-center justify-center">
190
+ [Chart Placeholder]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
191
  </div>
192
+ </div>
193
+ <div class="bg-white rounded-lg shadow p-6">
194
+ <h3 class="text-lg font-medium mb-4">Chip Distribution</h3>
195
+ <div class="h-64 bg-gray-100 rounded flex items-center justify-center">
196
+ [Pie Chart Placeholder]
 
 
 
 
 
197
  </div>
198
+ </div>
199
  </div>
200
+ </main>
201
  </div>
202
  </div>
203
 
204
  <script>
 
205
  feather.replace();
206
 
207
+ // Role-based access control simulation
208
+ const userRole = 'admin'; // Can be 'owner' or 'admin'
209
+
210
+ if(userRole === 'admin') {
211
+ // Hide owner-only features
212
+ document.querySelectorAll('.owner-only').forEach(el => el.style.display = 'none');
213
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
214
  </script>
215
  </body>
216
  </html>
customer_topup.html CHANGED
@@ -3,95 +3,69 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>ChipFlow Commander - Top Up</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
- <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
9
  </head>
10
  <body class="bg-gray-100">
11
  <div class="container py-8">
12
  <div class="max-w-md mx-auto bg-white rounded-xl shadow-md overflow-hidden p-6">
13
  <div class="text-center mb-6">
14
- <h1 class="text-2xl font-bold text-gray-800">πŸ”‹ Chip Top Up</h1>
15
- <p class="text-gray-600">Fill the form below to recharge your chips</p>
16
  </div>
17
 
18
- <form id="topupForm">
19
  <div class="mb-4">
20
  <label class="block text-gray-700 mb-2">Game ID</label>
21
  <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter your game ID" required>
22
  </div>
23
 
24
  <div class="mb-4">
25
- <label class="block text-gray-700 mb-2">Player Name</label>
26
- <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Your in-game name" required>
 
27
  </div>
28
 
29
  <div class="mb-4">
30
- <label class="block text-gray-700 mb-2">WhatsApp Number</label>
31
- <input type="tel" class="w-full px-3 py-2 border rounded-lg" placeholder="+62..." required>
32
  </div>
33
 
34
  <div class="mb-4">
35
- <label class="block text-gray-700 mb-2">Amount (Rp)</label>
36
- <input type="number" id="amountInput" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter amount" min="10000" required>
37
- <p class="text-xs text-gray-500 mt-1">Minimum Rp10,000</p>
38
  </div>
39
 
40
- <div class="mb-6">
41
- <label class="block text-gray-700 mb-2">Payment Method</label>
42
- <select class="w-full px-3 py-2 border rounded-lg" required>
43
- <option value="">Select payment</option>
44
- <option>Bank Transfer</option>
45
- <option>QRIS</option>
46
- <option>E-Wallet</option>
47
- </select>
48
  </div>
49
 
50
- <div class="bg-blue-50 p-4 rounded-lg mb-6">
51
- <h3 class="text-lg font-semibold text-blue-800 mb-2">You will receive:</h3>
52
  <div class="flex justify-between items-center">
53
- <span class="text-gray-700">Chips:</span>
54
- <span id="chipResult" class="text-2xl font-bold text-blue-600">0.00</span>
55
  </div>
56
- <div class="text-xs text-gray-500 mt-2" id="rateInfo"></div>
57
  </div>
58
 
59
- <button type="submit" class="w-full bg-blue-600 hover:bg-blue-700 text-white py-3 px-4 rounded-lg font-bold transition">
60
- Proceed to Payment
61
  </button>
62
  </form>
63
 
64
  <div class="mt-6 text-center text-sm text-gray-500">
65
- <p>Need help? <a href="#" class="text-blue-600">Contact Support</a></p>
66
  </div>
67
  </div>
68
  </div>
69
 
70
  <script>
71
- document.getElementById('amountInput').addEventListener('input', function() {
72
- const amount = parseFloat(this.value) || 0;
73
- let chips = 0;
74
- let rateText = '';
75
-
76
- if (amount >= 1300000) {
77
- chips = amount / 63000;
78
- rateText = 'Wholesale rate: Rp63,000/chip';
79
- } else if (amount >= 650000) {
80
- chips = amount / 64500;
81
- rateText = 'Wholesale rate: Rp64,500/chip';
82
- } else if (amount >= 65000) {
83
- chips = amount / 65000;
84
- rateText = 'Wholesale rate: Rp65,000/chip';
85
- } else {
86
- // Fractional calculation
87
- if (amount >= 10000) {
88
- chips = amount * 0.000012; // Example fractional rate
89
- rateText = 'Fractional chip rate applied';
90
- }
91
- }
92
-
93
- document.getElementById('chipResult').textContent = chips.toFixed(2);
94
- document.getElementById('rateInfo').textContent = rateText;
95
  });
96
  </script>
97
  </body>
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>ChipFlow Commander - Withdraw</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
 
8
  </head>
9
  <body class="bg-gray-100">
10
  <div class="container py-8">
11
  <div class="max-w-md mx-auto bg-white rounded-xl shadow-md overflow-hidden p-6">
12
  <div class="text-center mb-6">
13
+ <h1 class="text-2xl font-bold text-gray-800">🏧 Chip Withdrawal</h1>
14
+ <p class="text-gray-600">Convert your chips to real money</p>
15
  </div>
16
 
17
+ <form id="withdrawForm">
18
  <div class="mb-4">
19
  <label class="block text-gray-700 mb-2">Game ID</label>
20
  <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter your game ID" required>
21
  </div>
22
 
23
  <div class="mb-4">
24
+ <label class="block text-gray-700 mb-2">Chip Amount</label>
25
+ <input type="number" id="chipInput" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter chip amount" min="100" required>
26
+ <p class="text-xs text-gray-500 mt-1">Minimum 100 chips</p>
27
  </div>
28
 
29
  <div class="mb-4">
30
+ <label class="block text-gray-700 mb-2">Bank Account</label>
31
+ <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Account number" required>
32
  </div>
33
 
34
  <div class="mb-4">
35
+ <label class="block text-gray-700 mb-2">Bank Name</label>
36
+ <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Bank name" required>
 
37
  </div>
38
 
39
+ <div class="mb-4">
40
+ <label class="block text-gray-700 mb-2">Account Holder Name</label>
41
+ <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Name on bank account" required>
 
 
 
 
 
42
  </div>
43
 
44
+ <div class="bg-green-50 p-4 rounded-lg mb-6">
45
+ <h3 class="text-lg font-semibold text-green-800 mb-2">You will receive:</h3>
46
  <div class="flex justify-between items-center">
47
+ <span class="text-gray-700">Amount (Rp):</span>
48
+ <span id="cashResult" class="text-2xl font-bold text-green-600">0</span>
49
  </div>
50
+ <div class="text-xs text-gray-500 mt-2">Rate: Rp65,000 per chip</div>
51
  </div>
52
 
53
+ <button type="submit" class="w-full bg-green-600 hover:bg-green-700 text-white py-3 px-4 rounded-lg font-bold transition">
54
+ Request Withdrawal
55
  </button>
56
  </form>
57
 
58
  <div class="mt-6 text-center text-sm text-gray-500">
59
+ <p>Processing time: 1-3 business days</p>
60
  </div>
61
  </div>
62
  </div>
63
 
64
  <script>
65
+ document.getElementById('chipInput').addEventListener('input', function() {
66
+ const chips = parseInt(this.value) || 0;
67
+ const cash = chips * 65000;
68
+ document.getElementById('cashResult').textContent = cash.toLocaleString();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  });
70
  </script>
71
  </body>
transactions.html CHANGED
@@ -3,140 +3,66 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Transactions - ChipFlow Commander</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
- <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
9
  </head>
10
  <body class="bg-gray-100">
11
- <div class="flex h-screen">
12
- <!-- Sidebar -->
13
- <div class="w-64 bg-gray-800 text-white">
14
- <div class="p-4 border-b border-gray-700">
15
- <h1 class="text-xl font-bold">ChipFlow Commander</h1>
16
- <p class="text-sm text-gray-400">Transactions</p>
17
  </div>
18
- <nav class="mt-4">
19
- <a href="admin_dashboard.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">Dashboard</a>
20
- <a href="bank_management.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">Bank Management</a>
21
- <a href="id_management.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">ID Management</a>
22
- <a href="transactions.html" class="block py-2 px-4 bg-gray-700 text-white">Transactions</a>
23
- <a href="history.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700">History Log</a>
24
- <a href="/index.html" class="block py-2 px-4 text-gray-300 hover:bg-gray-700 mt-8">Logout</a>
25
- </nav>
26
- </div>
27
 
28
- <!-- Main Content -->
29
- <div class="flex-1 overflow-auto">
30
- <header class="bg-white shadow-sm p-4">
31
- <div class="flex justify-between items-center">
32
- <h2 class="text-xl font-semibold text-gray-800">Transaction Management</h2>
33
- <div class="flex space-x-2">
34
- <button class="px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white rounded-lg">
35
- New Top Up
36
- </button>
37
- <button class="px-4 py-2 bg-green-600 hover:bg-green-700 text-white rounded-lg">
38
- New Withdrawal
39
- </button>
 
 
 
 
 
 
 
40
  </div>
41
  </div>
42
- </header>
43
 
44
- <main class="p-6">
45
- <div class="bg-white rounded-lg shadow overflow-hidden">
46
- <div class="p-4 border-b border-gray-200 flex justify-between items-center">
47
- <h3 class="text-lg font-medium text-gray-800">All Transactions</h3>
48
- <div class="flex space-x-4">
49
- <div class="relative">
50
- <select class="appearance-none pl-3 pr-8 py-2 border rounded-lg bg-white">
51
- <option>All Types</option>
52
- <option>Top Up</option>
53
- <option>Withdrawal</option>
54
- <option>Transfer</option>
55
- <option>Adjustment</option>
56
- </select>
57
- <i data-feather="chevron-down" class="absolute right-3 top-2.5 text-gray-400 pointer-events-none"></i>
58
- </div>
59
- <div class="relative">
60
- <select class="appearance-none pl-3 pr-8 py-2 border rounded-lg bg-white">
61
- <option>All Status</option>
62
- <option>Pending</option>
63
- <option>Approved</option>
64
- <option>Rejected</option>
65
- <option>Failed</option>
66
- </select>
67
- <i data-feather="chevron-down" class="absolute right-3 top-2.5 text-gray-400 pointer-events-none"></i>
68
- </div>
69
- <div class="relative">
70
- <input type="text" placeholder="Search..." class="pl-8 pr-4 py-2 border rounded-lg w-64">
71
- <i data-feather="search" class="absolute left-3 top-2.5 text-gray-400"></i>
72
- </div>
73
- </div>
74
  </div>
75
-
76
- <div class="overflow-x-auto">
77
- <table class="min-w-full divide-y divide-gray-200">
78
- <thead class="bg-gray-50">
79
- <tr>
80
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Transaction ID</th>
81
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Type</th>
82
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Customer</th>
83
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Amount</th>
84
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Date</th>
85
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Status</th>
86
- <th class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Actions</th>
87
- </tr>
88
- </thead>
89
- <tbody class="bg-white divide-y divide-gray-200">
90
- <tr>
91
- <td class="px-6 py-4 whitespace-nowrap">#TOP-20230815-001</td>
92
- <td class="px-6 py-4 whitespace-nowrap">Top Up</td>
93
- <td class="px-6 py-4 whitespace-nowrap">John Doe (08123456789)</td>
94
- <td class="px-6 py-4 whitespace-nowrap">Rp 650,000</td>
95
- <td class="px-6 py-4 whitespace-nowrap">15 Aug 2023, 10:30</td>
96
- <td class="px-6 py-4 whitespace-nowrap">
97
- <span class="px-2 py-1 text-xs rounded-full bg-yellow-100 text-yellow-800">Pending</span>
98
- </td>
99
- <td class="px-6 py-4 whitespace-nowrap">
100
- <button class="text-blue-600 hover:text-blue-800">View</button>
101
- </td>
102
- </tr>
103
- <tr>
104
- <td class="px-6 py-4 whitespace-nowrap">#WD-20230814-005</td>
105
- <td class="px-6 py-4 whitespace-nowrap">Withdrawal</td>
106
- <td class="px-6 py-4 whitespace-nowrap">Jane Smith (08198765432)</td>
107
- <td class="px-6 py-4 whitespace-nowrap">1.5 Chips</td>
108
- <td class="px-6 py-4 whitespace-nowrap">14 Aug 2023, 16:45</td>
109
- <td class="px-6 py-4 whitespace-nowrap">
110
- <span class="px-2 py-1 text-xs rounded-full bg-green-100 text-green-800">Approved</span>
111
- </td>
112
- <td class="px-6 py-4 whitespace-nowrap">
113
- <button class="text-blue-600 hover:text-blue-800">View</button>
114
- </td>
115
- </tr>
116
- <!-- More rows would be dynamically inserted here -->
117
- </tbody>
118
- </table>
119
  </div>
120
-
121
- <div class="px-6 py-4 border-t border-gray-200 flex justify-between items-center">
122
- <div class="text-sm text-gray-500">
123
- Showing <span class="font-medium">1</span> to <span class="font-medium">10</span> of <span class="font-medium">24</span> results
124
- </div>
125
- <div class="flex space-x-2">
126
- <button class="px-3 py-1 border rounded-lg text-gray-700">Previous</button>
127
- <button class="px-3 py-1 border rounded-lg bg-blue-600 text-white">1</button>
128
- <button class="px-3 py-1 border rounded-lg text-gray-700">2</button>
129
- <button class="px-3 py-1 border rounded-lg text-gray-700">3</button>
130
- <button class="px-3 py-1 border rounded-lg text-gray-700">Next</button>
131
- </div>
132
  </div>
133
  </div>
134
- </main>
 
 
 
 
135
  </div>
136
  </div>
137
-
138
- <script>
139
- feather.replace();
140
- </script>
141
  </body>
142
  </html>
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>ChipFlow Commander - Transactions</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
 
8
  </head>
9
  <body class="bg-gray-100">
10
+ <div class="container py-8">
11
+ <div class="max-w-md mx-auto bg-white rounded-xl shadow-md overflow-hidden p-6">
12
+ <div class="text-center mb-6">
13
+ <h1 class="text-2xl font-bold text-gray-800">πŸ” Transaction History</h1>
14
+ <p class="text-gray-600">Check your recent transactions</p>
 
15
  </div>
 
 
 
 
 
 
 
 
 
16
 
17
+ <form class="mb-6">
18
+ <div class="mb-4">
19
+ <label class="block text-gray-700 mb-2">Game ID</label>
20
+ <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter your game ID" required>
21
+ </div>
22
+ <button type="submit" class="w-full bg-purple-600 hover:bg-purple-700 text-white py-3 px-4 rounded-lg font-bold transition">
23
+ Search Transactions
24
+ </button>
25
+ </form>
26
+
27
+ <div class="space-y-4">
28
+ <div class="border-b pb-4">
29
+ <div class="flex justify-between items-center mb-2">
30
+ <span class="font-semibold">Top Up</span>
31
+ <span class="text-blue-600">+Rp500,000</span>
32
+ </div>
33
+ <div class="flex justify-between text-sm text-gray-500">
34
+ <span>2023-11-15 14:30</span>
35
+ <span>Completed</span>
36
  </div>
37
  </div>
 
38
 
39
+ <div class="border-b pb-4">
40
+ <div class="flex justify-between items-center mb-2">
41
+ <span class="font-semibold">Withdrawal</span>
42
+ <span class="text-red-600">-Rp1,300,000</span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  </div>
44
+ <div class="flex justify-between text-sm text-gray-500">
45
+ <span>2023-11-10 09:15</span>
46
+ <span>Processing</span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
47
  </div>
48
+ </div>
49
+
50
+ <div class="border-b pb-4">
51
+ <div class="flex justify-between items-center mb-2">
52
+ <span class="font-semibold">Top Up</span>
53
+ <span class="text-blue-600">+Rp250,000</span>
54
+ </div>
55
+ <div class="flex justify-between text-sm text-gray-500">
56
+ <span>2023-11-05 18:45</span>
57
+ <span>Completed</span>
 
 
58
  </div>
59
  </div>
60
+ </div>
61
+
62
+ <div class="mt-6 text-center text-sm text-gray-500">
63
+ <p>Showing last 3 transactions</p>
64
+ </div>
65
  </div>
66
  </div>
 
 
 
 
67
  </body>
68
  </html>
withdraw.html CHANGED
@@ -1,72 +1,32 @@
1
  <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>ChipFlow Commander - Withdraw</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
- </head>
9
- <body class="bg-gray-100">
10
- <div class="container py-8">
11
- <div class="max-w-md mx-auto bg-white rounded-xl shadow-md overflow-hidden p-6">
12
- <div class="text-center mb-6">
13
- <h1 class="text-2xl font-bold text-gray-800">🏧 Chip Withdrawal</h1>
14
- <p class="text-gray-600">Convert your chips to real money</p>
15
- </div>
16
-
17
- <form id="withdrawForm">
18
- <div class="mb-4">
19
- <label class="block text-gray-700 mb-2">Game ID</label>
20
- <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter your game ID" required>
21
- </div>
22
-
23
- <div class="mb-4">
24
- <label class="block text-gray-700 mb-2">Chip Amount</label>
25
- <input type="number" id="chipInput" class="w-full px-3 py-2 border rounded-lg" placeholder="Enter chip amount" min="100" required>
26
- <p class="text-xs text-gray-500 mt-1">Minimum 100 chips</p>
27
- </div>
28
-
29
- <div class="mb-4">
30
- <label class="block text-gray-700 mb-2">Bank Account</label>
31
- <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Account number" required>
32
- </div>
33
-
34
- <div class="mb-4">
35
- <label class="block text-gray-700 mb-2">Bank Name</label>
36
- <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Bank name" required>
37
- </div>
38
-
39
- <div class="mb-4">
40
- <label class="block text-gray-700 mb-2">Account Holder Name</label>
41
- <input type="text" class="w-full px-3 py-2 border rounded-lg" placeholder="Name on bank account" required>
42
- </div>
43
-
44
- <div class="bg-green-50 p-4 rounded-lg mb-6">
45
- <h3 class="text-lg font-semibold text-green-800 mb-2">You will receive:</h3>
46
- <div class="flex justify-between items-center">
47
- <span class="text-gray-700">Amount (Rp):</span>
48
- <span id="cashResult" class="text-2xl font-bold text-green-600">0</span>
49
- </div>
50
- <div class="text-xs text-gray-500 mt-2">Rate: Rp65,000 per chip</div>
51
- </div>
52
-
53
- <button type="submit" class="w-full bg-green-600 hover:bg-green-700 text-white py-3 px-4 rounded-lg font-bold transition">
54
- Request Withdrawal
55
- </button>
56
- </form>
57
-
58
- <div class="mt-6 text-center text-sm text-gray-500">
59
- <p>Processing time: 1-3 business days</p>
60
- </div>
61
- </div>
62
  </div>
63
-
64
- <script>
65
- document.getElementById('chipInput').addEventListener('input', function() {
66
- const chips = parseInt(this.value) || 0;
67
- const cash = chips * 65000;
68
- document.getElementById('cashResult').textContent = cash.toLocaleString();
69
- });
70
- </script>
71
- </body>
72
- </html>
 
1
  <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>My app</title>
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <meta charset="utf-8">
7
  <script src="https://cdn.tailwindcss.com"></script>
8
+ </head>
9
+ <body class="flex justify-center items-center h-screen overflow-hidden bg-white font-sans text-center px-6">
10
+ <div class="w-full max-w-md mx-auto bg-white rounded-xl shadow-md p-8">
11
+ <h1 class="text-3xl font-bold text-center text-gray-800 mb-6">ChipFlow Commander</h1>
12
+
13
+ <div class="space-y-4">
14
+ <a href="/customer_topup.html" class="block w-full bg-blue-600 hover:bg-blue-700 text-white text-center py-3 px-6 rounded-lg font-bold transition">
15
+ πŸ’° Top Up Chips
16
+ </a>
17
+ <a href="/withdraw.html" class="block w-full bg-green-600 hover:bg-green-700 text-white text-center py-3 px-6 rounded-lg font-bold transition">
18
+ 🏧 Withdraw Chips
19
+ </a>
20
+ <a href="/transactions.html" class="block w-full bg-purple-600 hover:bg-purple-700 text-white text-center py-3 px-6 rounded-lg font-bold transition">
21
+ πŸ” Check Transaction
22
+ </a>
23
+ <div class="pt-4 border-t border-gray-200">
24
+ <a href="/admin_login.html" class="block w-full bg-gray-800 hover:bg-gray-900 text-white text-center py-3 px-6 rounded-lg font-bold transition">
25
+ πŸ‘‘ Admin Login
26
+ </a>
27
+ </div>
28
+ </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  </div>
30
+ <script></script>
31
+ </body>
32
+ </html>