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, ), )));