Files
2025-09-21 21:40:17 +07:00

159 lines
7.0 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
header('Content-Type: text/html; charset=UTF-8');
/**
* Generate form/page HTML berdasarkan data JSON
*/
function formPage(string $dataform): string {
$data = json_decode($dataform, true);
if (json_last_error() !== JSON_ERROR_NONE || !$data || !isset($data['page'])) {
return '<p class="text-danger">Data tidak valid.</p>';
}
$page = $data['page'];
$endpoint = $data['endpoint'] ?? '';
$apikey = $data['apikey'] ?? '';
$tokenkey = $data['tokenkey'] ?? '';
if ($page === 'flip') {
return '
<div class="form-group">
<label>ENDPOINT URL</label>
<input class="form-control" type="text" name="endpoint" value="' . htmlspecialchars($endpoint) . '">
</div>
<div class="form-group">
<label>API SECRET KEY</label>
<div class="input-group">
<input type="password" class="form-control password-input" id="password1" name="apikey" value="' . htmlspecialchars($apikey) . '">
<div class="input-group-append">
<div class="input-group-text password-toggle" data-target="password1">
<span class="fas fa-eye"></span>
</div>
</div>
</div>
</div>
<div class="form-group">
<label>TOKEN VALIDASI</label>
<div class="input-group">
<input type="password" class="form-control password-input" id="password2" name="tokenkey" value="' . htmlspecialchars($tokenkey) . '">
<div class="input-group-append">
<div class="input-group-text password-toggle" data-target="password2">
<span class="fas fa-eye"></span>
</div>
</div>
</div>
</div>
<script>
document.querySelectorAll(".password-toggle").forEach(function(toggle) {
toggle.addEventListener("click", function() {
var targetId = this.getAttribute("data-target");
var input = document.getElementById(targetId);
var icon = this.querySelector("span");
if (!input) return;
if (input.type === "password") {
input.type = "text";
icon.classList.remove("fa-eye");
icon.classList.add("fa-eye-slash");
} else {
input.type = "password";
icon.classList.remove("fa-eye-slash");
icon.classList.add("fa-eye");
}
});
});
</script>
';
}
if ($page === 'paydisini') {
return '
<div class="form-group d-none">
<label>Admin Payment Gateway</label>
<select class="form-control" name="adminpg">
<option value="2">Beban Owner</option>
<option value="1">Beban Customer</option>
</select>
</div>
<div class="text-center mb-4">
<a data-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample">
<h6><b>Aturan dan Kebijakan</b></h6>
</a>
</div>
<div class="collapse" id="collapseExample">
<div class="text-center">
<h6>Setelah mengaktifkan Paymnent Gateway ini kami anggap sudah menyetujui ketentuan di bawah ini</h6>
</div>
<div class="card-body text-justify">
<h6>Umum</h6>
<ul>
<li>ManjaPro didukung oleh Paydisini Payment Gateway Indonesia untuk proses pembayaran.</li>
<li>Semua transaksi harus dilakukan melalui sistem resmi ManjaPro untuk keamanan dan validasi.</li>
<li>Pelanggan bertanggung jawab atas keamanan akun dan informasi pembayaran masing-masing.</li>
</ul>
<h6>Alur Kerja Pembayaran</h6>
<ul>
<li>Pelanggan akan diberikan <strong>link pembayaran unik</strong> untuk setiap transaksi (ONE LINK ONE TRANSACTION).</li>
<li>Pembayaran dapat dilakukan melalui metode yang tersedia: BRI VA, BNI VA, Mandiri VA, atau QRIS.</li>
<li>Setelah pembayaran diterima, dana akan ditahan selama 1x24 jam di rekening ManjaPro untuk proses pengecekan dan penyesuaian (check & balance).</li>
<li>Saldo dapat digunakan atau ditarik (withdraw) setelah status pembayaran berhasil diverifikasi.</li>
<li>Pelanggan wajib memastikan data pembayaran dan nominal yang dikirim sesuai dengan instruksi.</li>
</ul>
<h6>Biaya Admin</h6>
<ul>
<li>Untuk biaya admin Payment Gateway bisa di bebankan ke pelanggan atau ke pemilik</li>
<li>BRI VA : Rp. 2.950</li>
<li>BNI VA : Rp. 4.500</li>
<li>Mandiri VA : Rp. 2.950</li>
<li>QRIS : 1%</li>
</ul>
<h6>Withdraw / Penarikan Saldo</h6>
<ul>
<li>Withdraw hanya dapat dilakukan pada hari kerja. Permintaan pada hari libur akan diproses pada hari kerja berikutnya.</li>
<li>Withdraw hanya dapat dilakukan ke rekening yang telah diverifikasi oleh sistem ManjaPro.</li>
<li>Verifikasi rekening dapat dilakukan melalui menu <strong>Profil</strong> di akun pelanggan.</li>
<li>Minimal saldo untuk melakukan withdraw adalah sesuai ketentuan yang berlaku di akun pelanggan.</li>
<li>ManjaPro berhak menunda atau menolak transaksi withdraw jika ditemukan indikasi penipuan atau kesalahan data.</li>
</ul>
<h6>Pemecahan Masalah / Komplain</h6>
<ul>
<li>Jika terjadi kesalahan pada transaksi atau masalah lainnya, pelanggan wajib menghubungi layanan pelanggan ManjaPro untuk perundingan.</li>
<li>Setiap komplain akan diproses sesuai dengan data transaksi yang tercatat di sistem.</li>
<li>Keputusan akhir akan diambil oleh ManjaPro setelah proses pengecekan dan verifikasi.</li>
</ul>
<h6>Ketentuan Tambahan</h6>
<ul>
<li>ManjaPro berhak mengubah aturan dan kebijakan ini sewaktu-waktu tanpa pemberitahuan terlebih dahulu.</li>
<li>Pelanggan dianggap menyetujui aturan ini saat melakukan transaksi melalui ManjaPro.</li>
<li>Segala tindakan yang melanggar ketentuan dapat menyebabkan akun diblokir atau transaksi dibatalkan.</li>
</ul>
</div>
</div>
';
}
return '<p class="text-danger">Page tidak dikenali.</p>';
}
// Terima JSON dari fetch()
$inputJSON = file_get_contents('php://input');
if (!$inputJSON) {
echo "<p class='text-danger'>Data tidak diterima.</p>";
exit;
}
// Tampilkan hasil formPage
echo formPage($inputJSON);