customer.php PHP
<?php
session_start();
error_reporting(0);

if (empty($_SESSION['loginku'])) {
  header("Location: login");
}

require 'koneksi.php';
require 'function.php';
include 'header.php';
include 'navbar.php';


//pengeturan isi email
if (isset($_POST['btnconfig'])) {
  $isiwa = pilter($kon, $_POST['isiwa']);

  #persiapan statement
  $stmt = mysqli_prepare($kon, "INSERT INTO template_wa (resto,isiwa) VALUES (?,?)");

  #bind param
  mysqli_stmt_bind_param($stmt, "ss", $_SESSION['resto'], $isiwa);

  #ekseskusi statament 
  mysqli_stmt_execute($stmt);
}


//pengaturan potongan  
if (isset($_POST['btncfgcut'])) {
  $potongan = pilter($kon, $_POST['potongan']);
  $tipe     = pilter($kon, $_POST['tipe']);

  #persiapkan statement 
  $stmt = mysqli_prepare($kon, "INSERT INTO set_potongan (resto,potongan,tipe) VALUES (?,?,?) ");

  #bind param 
  mysqli_stmt_bind_param($stmt, "sss", $_SESSION['resto'], $potongan, $tipe);

  #eksekusi statement 
  mysqli_stmt_execute($stmt);
}

//pengaturan email pengirim
if (isset($_POST['tokenku'])) {
  $token = $_POST['token'];

  #persiapkan statemnt 
  $stmt = mysqli_prepare($kon, "INSERT INTO set_token (resto,token) VALUES (?,?) ");

  #bind param 
  mysqli_stmt_bind_param($stmt, "ss", $_SESSION['resto'], $token);

  #eksekusi statement 
  mysqli_stmt_execute($stmt);
}


//ubah data customer
if (isset($_POST['btnubah'])) {
  $id  = pilter($kon, $_POST['id']);
  $nama = pilter($kon, $_POST['nama']);
  $wa = pilter($kon, $_POST['wa']);
  $email = piltermail($kon, $_POST['email']);

  #persiapkan statemnt 
  $stmt = mysqli_prepare($kon, "UPDATE customer SET nama = ?, wa = ?, email = ?  WHERE id = ?  ");

  #bind param 
  mysqli_stmt_bind_param($stmt, "sssi", $nama, $wa, $email, $id);

  #eksekusi statement 
  mysqli_stmt_execute($stmt);
}


//hapus data customer
if (isset($_POST['btnhapus'])) {
  $id = pilter($kon, $_POST['id']);

  #persiapkan statemt
  $stmt = mysqli_prepare($kon, "DELETE from customer WHERE id= ?");

  #bind param 
  mysqli_stmt_bind_param($stmt, 'i', $id);

  #ekseskusi statement 
  mysqli_stmt_execute($stmt);
}

?>

<!-- mengeluarkan data potongan -->
<?php
$d_setpot =  mysqli_query($kon, "SELECT * FROM set_potongan WHERE resto = '$_SESSION[resto]' ");
while ($l_setpot = mysqli_fetch_array($d_setpot)) {
  #$lastData dibuat untuk menghasilkan array terakhir variable nya bisa apa saja yang pasti variable tersebut menyimpan data perulangan dari while
  $lastsetpot = $l_setpot;
}
?>

<!-- mengeluarkan data setinggan isi email -->
<?php
$d_config =  mysqli_query($kon, "SELECT * FROM template_wa WHERE resto = '$_SESSION[resto]' ");
while ($l_config = mysqli_fetch_array($d_config)) {
  #$lastData dibuat untuk menghasilkan array terakhir variable nya bisa apa saja yang pasti variable tersebut menyimpan data perulangan dari while
  $lastData = $l_config;
}
?>

<!-- mengeluarkan data setinggan email pengirim -->
<?php
$d_settoken =  mysqli_query($kon, "SELECT * FROM set_token WHERE resto = '$_SESSION[resto]' ");
while ($l_settoken = mysqli_fetch_array($d_settoken)) {
  #$lastData dibuat untuk menghasilkan array terakhir variable nya bisa apa saja yang pasti variable tersebut menyimpan data perulangan dari while
  $lastsettoken = $l_settoken;
}
?>

<?php
#buat random id (untuk id_invoice & id_trx)
// Acak 8 digit text dan angka
$random = "";
for ($i = 0; $i < 10; $i++) {
  $randomChar = chr(rand(49, 122)); // acak karakter ASCII antara 49 (1) dan 122 (z)
  if (is_numeric($randomChar) || preg_match("/[a-z]/", $randomChar)) {
    $random .= $randomChar;
  } else {
    $i--;
  }
}
?>

<body style="background-color: #f7f7f7">
  <div class="container-fluid">
    <div class="alert alert-warning mt-3">
      <i class="fa fa-info-circle" aria-hidden="true"></i> Pelihara customer anda dengan sering mengirimkan mereka kode kupon . agar hubungan antara merchant dan customer tetap terjaga
    </div>

    <div>
      <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#starMOD">
        <img src="gambar/play.png" alt="" width="25px"> Mulai menggunakan fitur WA (Atur token)
      </button>

      <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#custsendMOD">
        <img src="gambar/play.png" alt="" width="25px"> Kirim kupon ke customer
      </button>

      <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#reconMOD">
        <img src="gambar/play.png" alt="" width="25px"> Pesan tidak terkirim (reconnect device)
      </button>
    </div>

    <div class="modal fade" id="starMOD" tabindex="-1">
      <div class="modal-dialog modal-lg">
        <div class="modal-content">
          <div class="modal-header">
            <h5 class="modal-title">Mulai menggunakan fitur WA (Atur token)</h5>
            <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
          </div>
          <div class="modal-body">
            <center>
              <iframe width="660" height="315" src="https://www.youtube.com/embed/l7RUMuXrXvE?si=s65L2ubM7QTNP3I3" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
            </center>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Tutup</button>
          </div>
        </div>
      </div>
    </div>

    <div class="modal fade" id="reconMOD" tabindex="-1">
      <div class="modal-dialog modal-lg">
        <div class="modal-content">
          <div class="modal-header">
            <h5 class="modal-title">Pesan tidak terkirim (reconnect device)</h5>
            <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
          </div>
          <div class="modal-body">
            <div class="alert alert-warning">
              Ini tutorial jika sebelumnya anda sudah pernah berhasil mengirim WA. Namun tiba-tiba pesan tidak bisa terkirim.
              maka yang harus di lakukan adalah reconnect device di fonnte.com
            </div>
            <center>
              <iframe width="660" height="315" src="https://www.youtube.com/embed/qnFmbORbp7o?si=V6ochRjzgMQqfYvr" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
            </center>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Tutup</button>
          </div>
        </div>
      </div>
    </div>

    <div class="modal fade" id="custsendMOD" tabindex="-1" aria-labelledby="custsendMODLabel" aria-hidden="true">
      <div class="modal-dialog modal-lg">
        <div class="modal-content">
          <div class="modal-header">
            <h5 class="modal-title" id="custsendMODLabel">Kirim kupon ke customer</h5>
            <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
          </div>
          <div class="modal-body">
            <center>
              <iframe width="660" height="315" src="https://www.youtube.com/embed/iY69riBLvZQ?si=VEQ2HwZAQ0v_RM02" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
            </center>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Tutup</button>
          </div>
        </div>
      </div>
    </div>


    <div class="row">
      <div class="col-lg-7">
        <div class="card card-body card-round mt-3 mb-3">
          <button class="btn btn-outline-danger float-right mb-3 mr-3" data-toggle="modal" data-target="#modaltest"><i class="fa-solid fa-paper-plane"></i> Test kirim WA</button>

          <table class="table" id="datatable">
            <thead class="thead-light">
              <tr>
                <th>No</th>
                <th>Nama</th>
                <th>Whatsapp</th>
                <th>Berikan kupon</th>
                <th>aksi</th>
              </tr>
            </thead>
            <tbody>
              <?php
              $no = 0;
              $d_cust =  mysqli_query($kon, "SELECT * FROM customer WHERE resto = '$_SESSION[resto]' ");
              while ($l_cust = mysqli_fetch_array($d_cust)) {
                $no++;
              ?>
                <tr>
                  <td><span class="badge badge-primary"><?= $no ?></span></td>
                  <td><?= $l_cust['nama'] ?></td>
                  <td>
                    <?php
                    if (empty($l_cust['wa'])) {
                      echo '';
                    } else { ?>
                      <a href="https://wa.me/<?= $l_cust['wa'] ?>" target="_blank" rel="noopener noreferrer">
                        <?= $l_cust['wa'] ?> <i class="fa fa-solid fa-up-right-from-square"></i>
                      </a>
                    <?php } ?>
                  </td>
                  <td>
                    <form action="kirim-kupon-singel" method="POST">
                      <input type="hidden" name="token" value="<?= $lastsettoken['token'] ?>" class="form-control-noregex mb-3">
                      <input type="hidden" name="watujuan" value="<?= $l_cust['wa'] ?>" class="form-control mb-3">
                      <input type="hidden" name="isiwa" value="<?= $lastData['isiwa'] ?>" class="form-control mb-3">
                      <input type="hidden" name="potongan" value="<?= $lastsetpot['potongan'] ?>">
                      <input type="hidden" name="tipe" value="<?= $lastsetpot['tipe'] ?>">
                      <button type="submit" name="btnsingelmail" class="btn btn-outline-success">Kirim kupon <i class="fa-solid fa-ticket"></i></button>
                    </form>
                  </td>
                  <td>
                    <button class="btn btn-danger" data-toggle="modal" data-target="#modalubah<?= $l_cust['id'] ?>">Ubah</button>
                    <button class="btn btn-danger" data-toggle="modal" data-target="#modalhapus<?= $l_cust['id'] ?>">Hapus</button>
                  </td>
                </tr>

                <!-- Modal ubah -->
                <div class="modal fade" id="modalubah<?= $l_cust['id'] ?>" tabindex="-1" role="dialog" aria-hidden="true">
                  <div class="modal-dialog" role="document">
                    <div class="modal-content">
                      <div class="modal-header">
                        <h5 class="modal-title">Ubah customer</h5>
                        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                          <span aria-hidden="true">&times;</span>
                        </button>
                      </div>
                      <div class="modal-body">
                        <form action="" method="POST">
                          <input type="hidden" class="form-control mb-3" name="id" value="<?= $l_cust['id'] ?>">
                          <label>Nama</label>
                          <input type="text" class="form-control mb-3" name="nama" value="<?= $l_cust['nama'] ?>">
                          <label>Whatsapp</label>
                          <input type="text" class="form-control mb-3" name="wa" value="<?= $l_cust['wa'] ?>">
                          <label>Email</label>
                          <input type="email" class="form-control-noregex mb-3" name="email" value="<?= $l_cust['email'] ?>">
                      </div>
                      <div class="modal-footer">
                        <button type="submit" class="btn btn-primary" name="btnubah">Ubah</button>
                        </form>
                      </div>
                    </div>
                  </div>
                </div>

                <!-- Modal hapus -->
                <div class="modal fade" id="modalhapus<?= $l_cust['id'] ?>" tabindex="-1" role="dialog" aria-hidden="true">
                  <div class="modal-dialog" role="document">
                    <div class="modal-content">
                      <div class="modal-header">
                        <h5 class="modal-title">Yakin hapus?</h5>
                        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                          <span aria-hidden="true">&times;</span>
                        </button>
                      </div>
                      <div class="modal-body">
                        <form action="" method="POST">
                          <input type="hidden" value="<?= $l_cust['id'] ?>" name="id">
                          <center><img src="gambar/garbage.png" width="25%"></center>
                          <button type="submit" name="btnhapus" class="btn btn-block btn-primary mt-3">Hapus!</button>
                        </form>
                      </div>
                    </div>
                  </div>
                </div>
              <?php  } ?>
            </tbody>
          </table>
        </div>
      </div>


      <div class="col-lg-5">
        <div class="modal-header  text-white toppercart mt-3"><i class="fa-solid fa-gears"></i> Pengaturan kupon & jumlah potongan</div>
        <div class="card card-body mb-3" style="display: block; padding-bottom: 50px;">
          <div class="alert alert-danger">Semua kode kupon yang dikirim ke email customer akan menghasilkan portongan sesuai jumlah yang anda input.</div>
          <form action=" " method="POST">
            <label>Jumlah potongan (nominal)</label>
            <input type="number" name="potongan" value="<?= $lastsetpot['potongan'] ?>" class="form-control mb-3">
            <label>Tipe</label>
            <select name="tipe" class="form-control selectize mb-3" readonly>
              <option value="<?= $lastsetpot['tipe'] ?>"><?= $lastsetpot['tipe'] ?></option>
              <option value="nominal">Nominal</option>
            </select>
            <button type="submit" name="btncfgcut" class="btn btn-primary float-right">Simpan</button>
          </form>
        </div>

        <div class="modal-header  text-white toppercart"><i class="fa-solid fa-gears"></i> Pengaturan WA pengirim</div>
        <div class="card card-body mb-3" style="display: block; padding-bottom: 50px;">
          <div class="alert alert-danger">
            Token didapatkan dari server <a href="https://Fonnte.com">Fonnte</a>
            <b class="text-danger"><a href="#" data-toggle="modal" data-target="#pelajari">Cara dapat token</a></b>
            <br>
            Jika token sudah di atur SEMUA FITUR kirim WA bisa digunakan
            <br>
            termasuk fitur Blast (kirim pesan masal) di halaman buat promo.
          </div>
          <form action="" method="POST">
            <label>Token</label>
            <input type="text" value="<?= $lastsettoken['token'] ?>" name="token" class="form-control mb-3">
            <button name="tokenku" class="btn btn-primary" type="submit">Atur</button>
          </form>
        </div>


      </div>

      <!-- Modal -->
      <div class="modal fade" id="pelajari" tabindex="-1" aria-labelledby="pelajari" aria-hidden="true">
        <div class="modal-dialog modal-lg">
          <div class="modal-content">
            <div class="modal-header">
              <h5 class="modal-title" id="pelajari">Cara dapat token fonnte untuk Whatsapp</h5>
              <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                <span aria-hidden="true">&times;</span>
              </button>
            </div>
            <div class="modal-body">
              <center><iframe width="660" height="315" src="https://www.youtube.com/embed/l7RUMuXrXvE?si=s65L2ubM7QTNP3I3" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></center>
            </div>
          </div>
        </div>
      </div>

      <!-- Modal -->
      <div class="modal fade" id="modaltest" tabindex="-1" role="dialog" aria-hidden="true">
        <div class="modal-dialog" role="document">
          <div class="modal-content">
            <div class="modal-header">
              <h5 class="modal-title">Masukan WA tujuan</h5>
              <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                <span aria-hidden="true">&times;</span>
              </button>
            </div>
            <div class="modal-body">
              <form action="kirim-test-wa" method="POST">
                <input type="hidden" name="token" value="<?= $lastsettoken['token'] ?>" class="form-control mb-3">
                <input type="hidden" name="potongan" value="<?= $lastsetpot['potongan'] ?>">
                <input type="hidden" name="tipe" value="<?= $lastsetpot['tipe'] ?>">
                <input type="hidden" name="isiwa" value="<?= $lastData['isiwa'] ?>">
                <label>Kode Kupon</label>
                <input type="text" name="kupon" value="<?= pilter($kon, $random) ?>" class="form-control  mb-3" readonly>
                <label>No WA tujuan (awali dengan 62)</label>
                <input type="text" name="watujuan" class="form-control" required>
            </div>
            <div class="modal-footer">
              <?php
              if (!isset($lastsettoken) || empty($lastsettoken)) {
                echo "<button type='submit' name='btntestmail' class='btn btn-danger' disabled>Kirim wa test</button>";
              } else {
                echo "<button type='submit' name='btntestmail' class='btn btn-danger'>Kirim wa test</button>";
              }
              ?>
              </form>
            </div>
          </div>
        </div>
      </div>

    </div>

    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
    <?php include 'footer.php' ?>


    <!-- singel email sweat alert! -->
    <?php
    if (isset($_SESSION['kirimwa'])) {
      if ($_SESSION['kirimwa'] === 'terkirim') {
        echo '<script>swal("GOOD!", "Pesan terkirim via wa!", "success");</script>';
      } elseif ($_SESSION['kirimwa'] === 'gagal') {
        echo '<script>swal("BAD!", "Pesan gagal terkirim via wa!", "error");</script>';
      }

      unset($_SESSION['kirimwa']);
    }
    ?>
</body>