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,296 @@
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
session_start();
require_once '../libs/mpdf/autoload.php';
include '../conf/koneksiPDO.php';
include '../conf/function.php';
setlocale(LC_ALL, 'IND');
if (!((isset($_SESSION['konsulMahasiswa']) || isset($_SESSION['konsulDosen']) || isset($_GET['dosen'])))) {
echo '<h1>403 Forbidden</h1>';
exit();
}
if (!(isset($_GET['id']))) {
echo '<h1>403 Forbidden</h1>';
exit();
}
$conn = new createCon();
$dbh = $conn->connect();
$idTA = $_GET['id'];
if (isset($_GET['dosen'])) {
$sql = 'SELECT * FROM tugas_akhir WHERE idTugasAkhir = :id';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':id', $idTA);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$nimMahasiswa = $row['nim'];
}
} else {
$nimMahasiswa = $_SESSION['konsulMahasiswa']['nim'];
}
$sql = 'SELECT * FROM dosen';
$stmt = $dbh->prepare($sql);
$stmt->execute();
$listDosen = [];
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$idDosen = $row['idDosen'];
$nipDosen = $row['nip'];
$namaDosen = $row['namaDosen'];
$listDosen[$nipDosen] = $namaDosen;
}
$sql = 'SELECT * FROM mahasiswa WHERE nim = :nim';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':nim', $nimMahasiswa);
$stmt->execute();
$namaMahasiswa = '-';
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$namaMahasiswa = $row['nama'];
}
$sql = 'SELECT * FROM tugas_akhir WHERE idTugasAkhir = :id AND nim = :nim';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':id', $idTA);
$stmt->bindParam(':nim', $nimMahasiswa);
$stmt->execute();
if ($stmt->rowCount() === 0) {
echo '<h1>403 Forbidden</h1>';
exit();
}
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$judul = $row['judul'];
$pemb1 = $row['pemb1'];
$pemb2 = $row['pemb2'];
$peng1 = $row['peng1'];
$peng2 = $row['peng2'];
$semester = $row['semester'];
}
$namaPemb1 = '-';
$nipPemb1 = '-';
$namaPemb2 = '-';
$nipPemb2 = '-';
$namaPeng1 = '-';
$nipPeng1 = '-';
$namaPeng2 = '-';
$nipPeng2 = '-';
if (isset($listDosen[$pemb1])) {
$namaPemb1 = $listDosen[$pemb1];
$nipPemb1 = $pemb1;
}
if (isset($listDosen[$pemb2])) {
$namaPemb2 = $listDosen[$pemb2];
$nipPemb2 = $pemb2;
}
if (isset($listDosen[$peng1])) {
$namaPeng1 = $listDosen[$peng1];
$nipPeng1 = $peng1;
}
if (isset($listDosen[$pemb2])) {
$namaPemb2 = $listDosen[$pemb2];
$nipPemb2 = $pemb2;
}
$sql = "SELECT * FROM konsultasi WHERE idTugasAkhir = :id ORDER BY str_to_date(`tanggal`, '%d-%m-%Y') ASC";
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':id', $idTA);
$stmt->execute();
$listKonsultasi = [];
$tanggalAwal = null;
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$tanggalKonsultasi = $row['tanggal'];
if($tanggalAwal == null){
$tanggalAwal = $tanggalKonsultasi;
}
$topik = $row['topik'];
$catatanDosen1 = $row['catatanDosen1'];
$catatanDosen2 = $row['catatanDosen2'];
$timestampDosen1 = intval($row['timestampDosen1']);
$timestampDosen2 = intval($row['timestampDosen2']);
array_push($listKonsultasi, [
$tanggalKonsultasi,
$topik,
$catatanDosen1,
$catatanDosen2,
]
);
}
$outputName = "Lembar Konsultasi Tugas Akhir $namaMahasiswa ($nimMahasiswa)";
$htmlHalamanDepan = '
<img src="kop surat teknik.jpg">
<table style="margin-top:10px">
<tr>
<td style="width: 90px; border: 1px solid black;"><div style="font-size:14px; ">&nbsp;&nbsp;Format B4</div></td>
<td style="width:110px"></td>
<td style="text-align:center"><div style="font-weight:bold;font-size:18px"><u>KARTU KEMAJUAN PENULISAN SKRIPSI</u></div><div style="font-size:12px"></div></td>
</tr>
</table>
<table style="margin-left:50px;margin-top:30px">
<tr>
<td style="width:200px;vertical-align:top">Nama</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">'.$namaMahasiswa.'</td>
</tr>
<tr>
<td style="vertical-align:top">NIM</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">'.$nimMahasiswa.'</td>
</tr>
<tr>
<td style="vertical-align:top">Semester</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top"></td>
</tr>
<tr>
<td style="vertical-align:top">Jurusan</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">Informatika</td>
</tr>
<tr>
<td style="vertical-align:top">Program Studi</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">Informatika</td>
</tr>
<tr>
<td style="vertical-align:top">Judul Skripsi</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">'.$judul.'</td>
</tr>
<tr>
<td style="vertical-align:top">Pembimbing Utama</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">'.$namaPemb1.'</td>
</tr>
<tr>
<td style="vertical-align:top">Pembimbing Pembantu</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">'.$namaPemb2.'</td>
</tr>
<tr>
<td style="vertical-align:top">Mulai Tanggal</td>
<td style="vertical-align:top">:</td>
<td style="vertical-align:top">'.$tanggalAwal.'</td>
</tr>
</table>
<table style="margin-left:100px;margin-top:60px">
<tr>
<td style="width:350px">
Pembimbing Utama
<br><br><br><br><br><br>
'.$namaPemb1.'<br>NIP. '.$nipPemb1.'
</td>
<td>
Pembimbing Pembantu
<br><br><br><br><br><br>
'.$namaPemb2.'<br>NIP. '.$nipPemb2.'
</td>
</tr>
</table>
<div style="margin-top:50px;text-align:center">
Mengetahui : <br>Jurusan Informatika<br>Ketua
<br><br><br><br><br>
Dr. Yus Sholva, S.T., M.T.<br>NIP. 197410192003121002
</div>
';
$html = '
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>'.$outputName.'</title>
<style>
body {
font-family: "Times New Roman";
font-size:12px;
}
table {overflow:wrap }
</style>
</head>
<body>
<div style="text-align:center"><h3>Lembar Konsultasi Online
<br>Skripsi/Tugas Akhir Mahasiswa
<br>Jurusan Informatika</h3><div style="font-size:10px">visit: http://informatika.untan.ac.id/konsultasi</div></div>
<div style="margin-top:20px;">
<table>
<tr><td><b>Nama Mahasiswa</b></td><td>:</td><td>'.$namaMahasiswa.'</td></tr>
<tr><td><b>NIM Mahasiswa</b></td><td>:</td><td>'.$nimMahasiswa.'</td></tr>
<tr><td><b>Judul Tugas Akhir</b></td><td>:</td><td>'.$judul.'</td></tr>
<tr><td><b>Pembimbing 1</b></td><td>:</td><td>'.$namaPemb1.' ('.$nipPemb1.')</td></tr>
<tr><td><b>Pembimbing 2</b></td><td>:</td><td>'.$namaPemb2.' ('.$nipPemb2.')</td></tr>
</table>
</div>
<table style="margin-top:30px; border-collapse:collapse; width:100%; font-size:12px !important" border="1">
<thead>
<tr>
<th width="30px">No</th>
<th width="120px">Tanggal Konsultasi</th>
<th width="180px">Uraian</th>
<th>Pemb 1</th>
<th>Pemb 2</th>
</tr>
</thead>
<tbody>
';
if (sizeof($listKonsultasi) === 0) {
$html .= '<tr><td style="text-align:center" colspan="5">Tidak ada data.</td></tr>';
} else {
for ($i = 0; $i < sizeof($listKonsultasi); ++$i) {
$no = $i + 1;
$html .= ' <tr>
<td style="padding:5px 5px;text-align:center;vertical-align:top">'.$no.'</td>
<td style="padding:5px 5px;text-align:center;vertical-align:top">'.$listKonsultasi[$i][0].'</td>
<td style="padding:5px 5px;vertical-align:top">'.$listKonsultasi[$i][1].'</td>
<td style="padding:5px 5px;width:150px;vertical-align:top">'.$listKonsultasi[$i][2].'</td>
<td style="padding:5px 5px;width:150px;vertical-align:top">'.$listKonsultasi[$i][3].'</td>
</tr>';
}
}
$html .= '
</tbody>
</table>
</body>
</html>
';
$mpdf = new \Mpdf\Mpdf(['mode' => 'utf-8', 'format' => 'A4', 'margin_header' => 0, 'margin_top' => 10, 'margin_bottom' => 3, 'margin_left' => 10, 'margin_right' => 10, 'margin_footer' => 0], ['defaultPageNumStyle' => '1']);
$mpdf->WriteHTML($htmlHalamanDepan);
$mpdf->addPage();
$mpdf->WriteHTML($html);
$namafile = $outputName.'.pdf';
$mpdf->Output($namafile, 'I');