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,143 @@
<?php
session_start();
include '../../conf/koneksiPDO.php';
include '../../conf/function.php';
header('Content-Type: application/json');
checkKey('POST', 'token');
checkKey('POST', 'id');
checkKey('POST', 'verif');
checkKey('POST', 'catatan');
$token = $_POST['token'];
$id = $_POST['id'];
$verif = $_POST['verif'];
$catatan = $_POST['catatan'];
$conn = new createCon();
$dbh = $conn->connect();
$connBio = new createCon();
$dbhBio = $connBio->connectDbBio();
$connDosen = new createCon();
$dbhDosen = $connDosen->connectDbDosen();
$sql = 'SELECT * FROM dosen WHERE token = :token';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':token', $token);
$stmt->execute();
if ($stmt->rowCount() === 0) {
echo getUnauthorizedMessage();
exit();
}
$sql = 'SELECT * FROM kerja_praktek WHERE idKerjaPraktek = :idKP';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':idKP', $id);
$stmt->execute();
$lanjutan = false;
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
$lanjutanDari = intval($row['lanjutanDari']);
if($lanjutanDari > 0){
$lanjutan = true;
}
}
if($lanjutan){
$sql = 'SELECT * FROM kerja_praktek WHERE idKerjaPraktek = :idKP';
$stmt = $dbh->prepare($sql);
$stmt->bindParam(':idKP', $lanjutanDari);
$stmt->execute();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
$sql = 'UPDATE kerja_praktek SET setujuAdmin = :setuju, timestampSetujuAdmin = :timestamp, catatanKajur = :catatan WHERE idKerjaPraktek = :id';
$stmt1 = $dbhBio->prepare($sql);
$stmt1->bindParam(':setuju', $row['setujuAdmin']);
$stmt1->bindParam(':timestamp', $row['timestampSetujuAdmin']);
$stmt1->bindParam(':catatan', row['catatanKajur']);
$stmt1->bindParam(':id', $id);
$stmt1->execute();
}
}
$time = time();
$sql = 'UPDATE kerja_praktek SET setuju = :setuju, timestampSetuju = :timestamp, catatanPA = :catatan WHERE idKerjaPraktek = :id';
$stmt = $dbhBio->prepare($sql);
$stmt->bindParam(':setuju', $verif);
$stmt->bindParam(':timestamp', $time);
$stmt->bindParam(':catatan', $catatan);
$stmt->bindParam(':id', $id);
$stmt->execute();
$error = $stmt->errorInfo();
$isError = true;
if ($error[0] == '00000') {
$isError = false;
}
if ($isError) {
echo json_encode(
[
'status' => 0,
'msg' => 'Terjadi kesalahan teknis!!!',
]
);
} else {
if(!$lanjutan){
$sql = 'SELECT kerja_praktek.nim, nama_lengkap, topik, instansi FROM kerja_praktek LEFT JOIN bio_mahasiswa ON kerja_praktek.nim = bio_mahasiswa.nim WHERE idKerjaPraktek = :id';
$stmt = $dbhBio->prepare($sql);
$stmt->bindParam(':id', $id);
$stmt->execute();
if ($stmt->rowCount() > 0) {
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$nimMahasiswa = $row['nim'];
$namaMahasiswa = $row['nama_lengkap'];
$topik = $row['topik'];
$namaInstansi = $row['instansi'];
}
$emailTo = [];
array_push($emailTo, 'tu@informatika.untan.ac.id');
//array_push($emailTo, 'apriefekon92@gmail.com');
array_push($emailTo, 'sholvariza@untan.ac.id');
$judulEmail = 'Data Kerja Praktek Baru';
$isiEmail = "Data kerja praktek mahasiswa $namaMahasiswa / $nimMahasiswa mengajukan kerja praktek dengan topik '$topik' di instansi $namaInstansi dan telah di verifikasi oleh dosen PA masing-masing.";
$ch = curl_init();
$emailParams = [];
$emailParams['to'] = json_encode($emailTo);
$emailParams['judul'] = $judulEmail;
$emailParams['content'] = $isiEmail;
$emailParams['from'] = 'system@informatika.untan.ac.id';
$postdata = $emailParams;
curl_setopt($ch, CURLOPT_URL, 'https://informatika.untan.ac.id/API/sendMail.php');
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_exec($ch);
}
}
echo json_encode(
[
'status' => 1,
'msg' => 'Berhasil melakukan verifikasi kerja praktek ini!!!',
]
);
}