113 lines
3.1 KiB
PHP
113 lines
3.1 KiB
PHP
<?php
|
|
|
|
namespace App\Controllers;
|
|
|
|
class Flags extends BaseController {
|
|
|
|
private function getProductAlias() {
|
|
$curl = curl_init();
|
|
|
|
curl_setopt_array($curl, array(
|
|
CURLOPT_URL => 'https://services-summit.my.id/api/getProductAlias',
|
|
CURLOPT_RETURNTRANSFER => true,
|
|
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
|
|
CURLOPT_CUSTOMREQUEST => 'GET',
|
|
));
|
|
|
|
$response = curl_exec($curl);
|
|
curl_close($curl);
|
|
$data = json_decode($response, true);
|
|
|
|
return $data;
|
|
}
|
|
|
|
public function index() {
|
|
$db = \Config\Database::connect();
|
|
$sql = "SELECT * FROM flagdef";
|
|
$query = $db->query($sql);
|
|
$results = $query->getResultArray();
|
|
$data['flagdef'] = $results;
|
|
|
|
return view('flags_index.php', $data);
|
|
}
|
|
|
|
public function view($FlagDefID) {
|
|
$FlagDefID = (int) $FlagDefID;
|
|
$db = \Config\Database::connect();
|
|
$sql = "SELECT * FROM flagdef WHERE FlagDefID=$FlagDefID";
|
|
$query = $db->query($sql);
|
|
$results = $query->getResultArray();
|
|
$data['flagdef'] = $results;
|
|
|
|
return view('flags_view.php', $data);
|
|
}
|
|
|
|
public function edit($FlagDefID) {
|
|
$data = array();
|
|
$data['instsAlias'] = $this->getProductAlias();
|
|
|
|
$db = \Config\Database::connect();
|
|
|
|
if ($FlagDefID != 0) {
|
|
$sql = "SELECT * FROM flagdef where FlagDefID='$FlagDefID'";
|
|
$query = $db->query($sql);
|
|
$results = $query->getResultArray();
|
|
$data['flagdef'] = $results;
|
|
}
|
|
|
|
if ($this->request->getMethod() === 'post') {
|
|
|
|
$rules = [ 'flagtext' => 'required'];
|
|
|
|
$flagdefid = $this->request->getPost('flagdefid');
|
|
$instrumentid = $this->request->getPost('instrumentid');
|
|
$flag = $this->request->getPost('flag');
|
|
$flagtext = $this->request->getPost('flagtext');
|
|
$flagdesc = $this->request->getPost('flagdesc');
|
|
$onscreen = $this->request->getPost('onscreen');
|
|
$onresult = $this->request->getPost('onresult');
|
|
|
|
if ($this->validate($rules)){
|
|
|
|
if ($flagdefid == 0 ) {
|
|
$sql = "INSERT INTO `flagdef` ( `InstrumentID`, `Flag`, `FlagText`, `FlagDesc`, `OnScreen`, `OnResult`, `CreateDate` )
|
|
VALUES ( $instrumentid, '$flag', '$flagtext', '$flagdesc', $onscreen, $onresult ,NOW())";
|
|
$query = $db->query($sql);
|
|
return redirect()->to('/flagdef');
|
|
} else {
|
|
$sql = "UPDATE `flagdef` SET InstrumentID = $instrumentid,
|
|
Flag='$flag',
|
|
flagtext='$flagtext',
|
|
flagdesc='$flagdesc',
|
|
onscreen=$onscreen,
|
|
onresult=$onresult
|
|
WHERE FlagDefID=$flagdefid";
|
|
$query = $db->query($sql);
|
|
return redirect()->to('/flagdef');
|
|
}
|
|
|
|
} else {
|
|
$data['validation'] = $this->validator;
|
|
return view('flags_editor', $data);
|
|
}
|
|
|
|
} else {
|
|
return view('flags_editor', $data);
|
|
}
|
|
|
|
return view('flags_editor', $data);
|
|
}
|
|
|
|
public function delete($FlagDefID) {
|
|
if ($this->request->getMethod() === 'post') {
|
|
$db = \Config\Database::connect();
|
|
$sql = "DELETE FROM flagdef WHERE FlagDefID=$FlagDefID";
|
|
$query = $db->query($sql);
|
|
return redirect()->to('/flagdef');
|
|
} else { // Redirect jika metode bukan POST
|
|
return redirect()->to('/flagdef');
|
|
}
|
|
|
|
}
|
|
}
|