SuratModel = new ModelSurat(); } public function index() { if (session()->has('nip') && session()->has('username')) { $nip = session('nip'); $data = array( 'body' => 'surat/list', 'surat' => $this->SuratModel->getSurat($nip), 'username' => session('username'), 'nama' => session('nama'), 'hak_akses' => session('hak_akses'), ); return view('index', $data); } else { // Jika pengguna belum login, arahkan ke halaman login return redirect()->to(base_url() . 'login'); } } public function index2() { if (session()->has('nip') && session()->has('username')) { $nip = session('nip'); $data = array( 'body' => 'Surat/listAll', 'surat' => $this->SuratModel->getSuratAll(), 'username' => session('username'), 'nama' => session('nama'), 'hak_akses' => session('hak_akses'), ); return view('index', $data); } else { // Jika pengguna belum login, arahkan ke halaman login return redirect()->to(base_url() . 'login'); } } public function input() { if (session()->has('nip') && session()->has('username')) { $data = array( 'body' => 'Surat/input', 'username' => session('username'), 'nama' => session('nama'), 'hak_akses' => session('hak_akses'), ); return view('index', $data); } else { // Jika pengguna belum login, arahkan ke halaman login return redirect()->to(base_url() . 'login'); } } public function input2() { if (session()->has('nip') && session()->has('username')) { $data = array( 'body' => 'Surat/input2', 'username' => session('username'), 'nama' => session('nama'), 'hak_akses' => session('hak_akses'), ); return view('index', $data); } else { // Jika pengguna belum login, arahkan ke halaman login return redirect()->to(base_url() . 'login'); } } public function insert() { $lampiran = $this->request->getFile('lampiran'); $newName = ''; if ($lampiran->isValid() && !$lampiran->hasMoved()) { $newName = $lampiran->getName(); $lampiran->move(ROOTPATH . 'public/assets/dokumen/surat/'); // Move the image to the desired directory } $data = array( 'tanggal' => $this->request->getPost('tanggal'), 'jenis_surat' => $this->request->getPost('jenis_surat'), 'keterangan_surat' => $this->request->getPost('keterangan_surat'), 'jabatan' => $this->request->getPost('jabatan'), 'nip' => session('nip'), 'lampiran' => $newName, ); if ($this->SuratModel->insert_surat($data)) { session()->setFlashdata('success', 'Berhasil Menambahkan Surat Tugas!'); return redirect()->to(base_url() . 'surat/list'); } else { session()->setFlashdata('error', 'Gagal Menambahkan Surat Tugas!'); return redirect()->to(base_url() . 'surat/input'); } } public function edit($id) { if (session()->has('nip') && session()->has('username')) { $data_surat = new ModelSurat(); $data = array( 'body' => 'Surat/edit', 'data' => $data_surat->getById($id)->getRow(), 'username' => session('username'), 'nama' => session('nama'), 'hak_akses' => session('hak_akses'), ); return view('index', $data); } else { // Jika pengguna belum login, arahkan ke halaman login return redirect()->to(base_url() . 'login'); } } public function update($id) { $lampiran = $this->request->getFile('lampiran'); // Get the uploaded image file // Get the current data from database $currentData = $this->SuratModel->getById($id)->getRow(); // Initialize newName with the current file name $newName = $currentData->lampiran; // Check if there is a new file uploaded if ($lampiran->isValid() && !$lampiran->hasMoved()) { // Get the new file name $newName = $lampiran->getName(); $lampiran->move(ROOTPATH . 'public/assets/dokumen/surat/'); // Move the image to the desired directory // Delete old file if there was a previous file if (!empty($currentData->lampiran)) { $oldFilePath = ROOTPATH . 'public/assets/dokumen/surat/' . $currentData->lampiran; if (file_exists($oldFilePath)) { unlink($oldFilePath); // Delete the old file } } } // Update the database record $data = $this->SuratModel->update($id, [ 'tanggal' => $this->request->getVar('tanggal'), 'jenis_surat' => $this->request->getVar('jenis_surat'), 'keterangan_surat' => $this->request->getVar('keterangan_surat'), 'jabatan' => $this->request->getVar('jabatan'), 'lampiran' => $newName ]); // Check if update was successful and redirect accordingly if ($data) { return redirect()->to(base_url() . 'surat/list')->with('success', 'Data Berhasil Diubah!'); } else { return redirect()->to(base_url() . 'surat/edit/' . $id)->with('error', 'Data Gagal Diubah!'); } } public function delete($id) { $currentData = $this->SuratModel->getById($id)->getRow(); if (!empty($currentData->lampiran)) { $oldFilePath = ROOTPATH . 'public/assets/dokumen/surat/' . $currentData->lampiran; if (file_exists($oldFilePath)) { unlink($oldFilePath); // Delete the old file } } $this->SuratModel->delete($id); return redirect()->to(base_url() . 'surat/list')->with('success', 'Data Berhasil Dihapus!'); } }