MIF_E31211958/app/Controllers/Kriteria.php

106 lines
3.5 KiB
PHP

<?php
namespace App\Controllers;
use App\Models\ModelKriteria;
class Kriteria extends BaseController
{
protected $KriteriaModel;
function __construct()
{
$this->KriteriaModel = new ModelKriteria();
}
public function index()
{
if (session()->has('nip') && session()->has('username')) {
$data = array(
'body' => 'Kriteria/list',
'kriteria' => $this->KriteriaModel->getKriteria(),
'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' => 'Kriteria/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 insert()
{
$data = array(
'kode_kriteria' => $this->request->getPost('kode_kriteria'),
'nama_kriteria' => $this->request->getPost('nama_kriteria'),
'tipe' => $this->request->getPost('tipe'),
'bobot' => $this->request->getPost('bobot'),
);
if ($this->KriteriaModel->insert_kriteria($data)) {
session()->setFlashdata('success', 'Berhasil Menambahkan Data Kriteria!');
return redirect()->to(base_url() . 'kriteria/list');
} else {
session()->setFlashdata('error', 'Gagal Menambahkan Data Kriteria!');
return redirect()->to(base_url() . 'kriteria/input');
}
}
public function edit($id)
{
if (session()->has('nip') && session()->has('username')) {
$data_kriteria = new ModelKriteria();
$data = array(
'body' => 'Kriteria/edit',
'data' => $data_kriteria->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)
{
$data = $this->KriteriaModel->update($id, [
'kode_kriteria' => $this->request->getVar('kode_kriteria'),
'nama_kriteria' => $this->request->getVar('nama_kriteria'),
'tipe' => $this->request->getVar('tipe'),
'bobot' => $this->request->getVar('bobot'),
]);
if ($data == true) {
return redirect()->to(base_url() . 'kriteria/list')->with('success', 'Data Berhasil Diubah!');
} else {
return redirect()->to(base_url() . 'kriteria/edit')->with('error', 'Data Gagal Diubah!');
}
}
public function delete($id)
{
$this->KriteriaModel->delete($id);
return redirect()->to(base_url() . 'kriteria/list')->with('success', 'Data Berhasil Dihapus!');
}
}