Add consultation module assets and libraries
This commit is contained in:
296
konsultasi/print/cetak_konsultasi_ta.php
Normal file
296
konsultasi/print/cetak_konsultasi_ta.php
Normal 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; "> 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');
|
||||
Reference in New Issue
Block a user