Add consultation module assets and libraries

This commit is contained in:
Power BI Dev
2026-05-02 10:11:07 +07:00
parent a52c2a8462
commit 5fb1151fea
1239 changed files with 392281 additions and 0 deletions

View File

@@ -0,0 +1,158 @@
<?php
session_start();
include '../../conf/koneksiPDO.php';
include '../../conf/function.php';
header('Content-Type: application/json');
$conn = new createCon();
$dbh = $conn->connect();
checkKey('POST', 'token');
checkKey('POST', 'id');
checkKey('POST', 'tipe');
$token = trim($_POST['token']);
$tipe = strtolower(trim($_POST['tipe']));
$idTugasAkhir = intval($_POST['id']);
$mahasiswa = false;
$dosen = false;
switch ($tipe) {
case 'mahasiswa': $tabel = 'mahasiswa'; $mahasiswa = true; break;
case 'dosen': $tabel = 'dosen'; $dosen = true; break;
default: echo getUnknownTypeMessage(); exit();
}
$sql = "SELECT * FROM $tabel WHERE token = :token";
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':token', $token);
$stmt->execute();
$nim = '';
$nip = '';
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
if ($mahasiswa) {
$nim = $row['nim'];
}
if ($dosen) {
$nip = $row['nip'];
}
}
$authorized = false;
$sql = 'SELECT * FROM tugas_akhir WHERE idTugasAkhir = :id';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':id', $idTugasAkhir);
$stmt->execute();
if ($stmt->rowCount() == 0) {
echo getKonsultasiNotFoundMessage();
exit();
}
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
if ($mahasiswa) {
$nimTA = $row['nim'];
if ($nim == $nimTA) {
$authorized = true;
}
}
if ($dosen) {
$pemb1 = $row['pemb1'];
$pemb2 = $row['pemb2'];
if (($pemb1 == $nip) || ($pemb2 == $nip)) {
$authorized = true;
}
}
$judul = $row['judul'];
$nimDb = $row['nim'];
$pemb1 = $row['pemb1'];
$pemb2 = $row['pemb2'];
$peng1 = $row['peng1'];
$peng2 = $row['peng2'];
$semester = $row['semester'];
$tahunAjaran = $row['tahunAjaran'];
$tanggalKeputusan = $row['tanggalKeputusan'];
$waktuKeputusan = $row['waktuKeputusan'];
$selesai = $row['selesai'];
}
if (!$authorized) {
echo getUnauthorizedMessage();
exit();
}
$sql = 'SELECT * FROM dosen WHERE nip IN (:pemb1, :pemb2, :peng1, :peng2)';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':pemb1', $pemb1);
$stmt->bindParam(':pemb2', $pemb2);
$stmt->bindParam(':peng1', $peng1);
$stmt->bindParam(':peng2', $peng2);
$stmt->execute();
$namaPemb1 = '-';
$namaPemb2 = '-';
$namaPeng1 = '-';
$namaPeng2 = '-';
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$nipDosenDb = $row['nip'];
$namaDosenDb = $row['namaDosen'];
if ($pemb1 == $nipDosenDb) {
$namaPemb1 = $namaDosenDb;
}
if ($pemb2 == $nipDosenDb) {
$namaPemb2 = $namaDosenDb;
}
if ($peng1 == $nipDosenDb) {
$namaPeng1 = $namaDosenDb;
}
if ($peng2 == $nipDosenDb) {
$namaPeng2 = $namaDosenDb;
}
}
$sql = 'SELECT * FROM mahasiswa WHERE nim = :nim';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':nim', $nimDb);
$stmt->execute();
$namaMahasiswaDb = '-';
$hp = '';
$email = '';
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$namaMahasiswaDb = $row['nama'];
$hp = $row['hp'];
$email = $row['email'];
}
$tanggalKeputusanText = convertToDmy($tanggalKeputusan);
echo json_encode(utf8ize(array(
'status' => 1,
'tugasAkhir' => array(
'judul' => $judul,
'mahasiswa' => $namaMahasiswaDb,
'nim' => $nimDb,
'hp' => $hp,
'email' => $email,
'pembimbing1' => $namaPemb1,
'pembimbing2' => $namaPemb2,
'penguji1' => $namaPeng1,
'penguji2' => $namaPeng2,
'semester' => $semester,
'tahun' => $tahunAjaran,
'tanggalKeputusan' => $tanggalKeputusanText,
),
)));