Add SPOTA core PHP application

Add the main admin, dosen, mahasiswa, API, and service code needed to run the core legacy application with configurable upload storage.
This commit is contained in:
Power BI Dev
2026-05-02 10:08:52 +07:00
parent 874dbbe8e8
commit efdb11db3f
221 changed files with 43273 additions and 0 deletions

View File

@@ -0,0 +1,77 @@
<?php
session_start();
if ($_SESSION['login-mhs']) {
if ($_POST) {
include '../../../inc/helper.php';
include '../../../inc/gcm_helper.php';
include '../../../inc/konfigurasi.php';
include '../../../inc/db.pdo.class.php';
$db = new dB($dbsetting);
$db2 = new dB($dbsetting);
switch ($_POST['act']) {
case 'ambil':
$idData = $_POST['idpenawaran'];
$idMahasiswa = $_SESSION['login-mhs']['id'];
$query = "SELECT * FROM tb_ambil_judul WHERE idMhs = '$idMahasiswa' ORDER BY waktuPengambilan DESC LIMIT 1";
$db->runQuery($query);
while ($r = $db->dbFetch()) {
$statusPengambilan = $r['statusPengambilan'];
if($statusPengambilan == "0"){
echo json_encode(array("result"=>false,"msg"=>"Tidak dapat membooking judul ini, anda telah membooking judul lain sebelumnya, tunggu hingga dosen tersebut menolak permohonan penawaran judul untuk dapat membooking lagi"));
exit;
}
if($statusPengambilan == "1"){
$timestampPengambilan = strtotime($r['waktuPengambilan']);
$now = time();
$diff = $now - $timestampPengambilan;
if($diff <= 2592000){
echo json_encode(array("result"=>false,"msg"=>"Tidak dapat membooking judul ini, anda telah membooking judul lain sebelumnya dan telah disetujui oleh dosen yang menawarkan judul"));
exit;
}
}
}
$query = "SELECT * FROM tb_ambil_judul WHERE idPenawaranAmbil = '$idData' ORDER BY waktuPengambilan DESC LIMIT 1";
$db->runQuery($query);
while ($r = $db->dbFetch()) {
if($r['statusPengambilan'] != "2"){
echo json_encode(array("result"=>false,"msg"=>"Tidak dapat membooking judul ini, judul ini telah di booking orang lain sebelumnya"));
exit;
}
}
/**
$query = "SHOW TABLE STATUS LIKE 'tb_ambil_judul'";
$db->runQuery($query);
$data = $db->dbFetch();
$newID = $data['Auto_increment'];
$query = "INSERT INTO tb_ambil_judul SET
idAmbil='$newID',
idPenawaranAmbil='$idData',
idMhs='$idMahasiswa',
statusPengambilan='0'
";
*/
$query = "INSERT INTO tb_ambil_judul(idPenawaranAmbil, idMhs, statusPengambilan) VALUES('$idData', '$idMahasiswa', '0')";
if($db->runQuery($query)){
echo json_encode(array("result"=>true,"msg"=> "Berhasil Membooking Judul ini"));
}else{
echo json_encode(array("result"=>false,"msg"=>"Aksi Gagal DbError"));
}
break;
}
}
}
?>

View File

@@ -0,0 +1,187 @@
<?php $db = new dB($dbsetting);
$query = "SELECT * FROM tb_kelompok_keahlian WHERE idKK != '8' ORDER BY namaKK";
$db->runQuery($query);
$listKK = [];
while ($r = $db->dbFetch()) {
array_push($listKK, [
'id' => $r['idKK'],
'nama' => $r['namaKK'],
]);
}
if (!$_GET['prid']) {
?>
<div class="row">
<div class="col-sm-12">
<ol class="breadcrumb">
<li>
<i class="clip-home-3"></i>
<a href="<?php echo MHS_PAGE; ?>">
Home
</a>
</li>
<?php
switch ($_GET['act']) {
case 'ambil':
$title="Booking Penawaran Judul Ini";
echo '
<li>
<a href="'.MHS_PAGE.'dashboard.php?page=penawaran">
Penawaran Judul
</a>
</li>
<li class="active">
Booking Penawaran Judul Ini
</li>';
break;
case 'lihat':
$title="Lihat Detail Penawaran Judul Ini";
echo '
<li>
<a href="'.MHS_PAGE.'dashboard.php?page=penawaran">
Penawaran Judul
</a>
</li>
<li class="active">
Lihat Detail Penawaran Judul Ini
</li>';
break;
default:
$title="Penawaran Judul";
echo '
<li class="active">
Penawaran Judul
</li>';
break;
}
?>
<li class="search-box">
<label><?php echo tanggalIndo(date('Y-m-d H:i:s'), 'j F Y, H:i'); ?></label>
</li>
</ol>
<div class="page-header">
<h1><?php echo $title; ?><!-- <small>overview &amp; stats </small> --></h1>
</div>
</div>
</div>
<?php
switch($_GET['act']){
default:
?>
<div class="row">
<div class="col-md-12">
<div style="margin-bottom:1rem">
Status Judul : <select id="statusPenawaranJudul">
<option value="0">Belum Diambil</option>
<option value="1">Sudah Diambil</option>
</select>
</div>
<div style="margin-bottom:1rem">
Tampilkan : <select id="kkPenawaranJudul">
<option value="Semua">Semua Kelompok Keahlian</option>
<?php
foreach($listKK as $key => $val){
echo '<option value="'.$val['id'].'">'.$val['nama'].'</option>';
}
?>
</select>
</div>
<div style="margin-bottom:2rem"><button class="btn btn-primary" onClick="refreshTabelPenawaranJudul()">Filter</button></div>
<div id="contentTabel"></div>
<!-- end: DYNAMIC TABLE PANEL -->
</div>
</div>
<?php
break;
case 'ambil':
$id=$_GET['id'];
if(ctype_digit($id)){
$e="SELECT * FROM tb_penawaran_judul WHERE idPenawaran='$id' LIMIT 1";
$db->runQuery($e);
if($db->dbRows()>0){
$edit=$db->dbFetch();
?>
<form id="ambil_penawaran" method="POST" enctype="multipart/form-data" action="page/penawaran/act.data-penawaran.php" style="margin:1rem 1rem">
<input type="hidden" name="act" value="ambil" />
<input type="hidden" name="idpenawaran" value="<?php echo $id;?>" />
<div class="row">
<div class="form-group">
<label class="control-label">
<b>Judul</b>
</label>
<div><?php echo $edit['judul']; ?></div>
</div>
</div>
<div class="row">
<div class="form-group">
<label class="control-label">
<b>Keterangan</b>
</label>
<div><?php echo $edit['deskripsi']; ?></div>
</div>
</div>
<div class="row">
<div class="col-md-2">
<button class="btn btn-teal btn-block" type="submit">
Booking
</button>
</div>
</div>
</form>
<?php
}else{
}
}else{
//notfound page
}
break;
case 'lihat':
$id=$_GET['id'];
if(ctype_digit($id)){
$e="SELECT * FROM tb_penawaran_judul WHERE idPenawaran='$id' LIMIT 1";
$db->runQuery($e);
if($db->dbRows()>0){
$edit=$db->dbFetch();
?>
<form id="ambil_penawaran" method="POST" enctype="multipart/form-data" action="page/penawaran/act.data-penawaran.php" style="margin:1rem 1rem">
<input type="hidden" name="act" value="ambil" />
<input type="hidden" name="idpenawaran" value="<?php echo $id;?>" />
<div class="row">
<div class="form-group">
<label class="control-label">
<b>Judul</b>
</label>
<div><?php echo $edit['judul']; ?></div>
</div>
</div>
<div class="row">
<div class="form-group">
<label class="control-label">
<b>Keterangan</b>
</label>
<div><?php echo $edit['deskripsi']; ?></div>
</div>
</div>
</form>
<?php
}else{
}
}else{
//notfound page
}
break;
}
}
?>