public function editSurvey($idSurvey)
{
if ($this->request->getMethod() === "POST") {
$data = $this->request->getPost();
$data['dokumen_pendukung_survey'] = $this->request->getFile('dokumen_pendukung_survey');
$database = Database::connect();
$database->transStart();
$data['id_survey'] = $idSurvey;
editSurveydata($database, 's_survey', [
'kode' => $data['kode_survey'],
'nama' => $data['nama_survey'],
'dokumen_pendukung' => $data['dokumen_pendukung_survey'],
'status' => $data['status_survey'],
], $idSurvey);
if (!$idSurvey) {
$database->transRollback();
$database->close();
return;
}
$result = editSurveydata($database, 's_pelaksanaan_survey', [
'id_periode' => $data['id_periode'],
'tanggal_mulai' => $data['tanggal_mulai'],
'tanggal_selesai' => $data['tanggal_selesai'],
'deskripsi' => $data['deskripsi_survey'],
'created_at' => date('Y-m-d H:i:s'),
], $idSurvey);
if (!$result) {
$database->transRollback();
$database->close();
return;
}
$result = editPertanyaanData($database, $data);
if (!$result) {
$database->transRollback();
$database->close();
return;
}
$database->transCommit();
$database->close();
return alert('survey/manajemen-survey', 'success', 'Survey berhasil diupdate!');
}
$data['survey'] = $this->surveyModel->find($idSurvey);
if (!$data['survey']) {
return alert('survey/manajemen-survey', 'error', 'Survey tidak ditemukan!');
}
$data['pelaksanaan_survey'] = $this->pelaksanaanSurveyModel->where('id', $idSurvey)->first();
if (!$data['pelaksanaan_survey']) {
return alert('survey/manajemen-survey', 'error', 'Pelaksanaan survey tidak ditemukan!');
}
$data['periode'] = $this->periodeModel->findAll();
$data['pertanyaan'] = $this->pertanyaanSurveyModel->where('id_survey', $idSurvey)->orderBy('urutan', 'asc')->findAll();
echo view('layouts/header.php', ["title" => "Manajemen Survey"]);
echo view('survey_kepuasan/manajemen_survey/edit_survey.php', $data);
echo view('layouts/footer.php');
}