dwh/prm_system_ajax.php
2024-01-12 15:25:44 +07:00

113 lines
4.2 KiB
PHP

<?php
$PARENT_SCRIPTNAME='prm_system.php';
include_once 'script_auth.php';
include_once 'class/PregReplaceCallbackClass.php';
include_once 'init/initialisation_parameter.php';
include_once 'headerFile.php';
include_once 'incl.php';
header("Cache-Control: no-cache, must-revalidate");
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
include_once 'class/ORAConnectionClass.php';
$ora_obj = new ORAConnectionClass('init/ORA_INIT.php');
$ora_res = $ora_obj->ORA_PConnect();
if (!$ora_res){
echo "<BR>Error : " . htmlspecialchars($ora_obj->last_error_msg) . "<br>";
exit();
}
initAjaxParamTemplate($_REQUEST['action']);
if ($_REQUEST['action'] == "getData") {
$result = getData($ora_obj);
} else {
$result = -1;
}
echo $result;
unset($_SESSION['TEMPLATE_ARRAY_ADDR']);
if ($ora_obj->conn) {
$ora_obj->ORA_Close();
#echo "connection closed.<br>";
}
function initAjaxParamTemplate($action) {
$ajaxParamTemplate['TABLEDATA'] = <<< params
<table width="100%" cellpadding="2" cellspacing="1" border="0" style="layout:auto" class="font11">
<tr>
<td><input type="hidden" name="PARAMID" value="<<PARAMID>>" display="block" dbname="PARAMID" ATTRIB="SM"></td>
</tr>
<tr>
<td colspan=3><span id="ERR_MSG" style="font: italic; color: #FF0000"><<ERR_MSG>></span></td>
</tr>
<tr>
<td nowrap>Parameter</td>
<td>:</td>
<td><input type="text" name="PARAMDESC" note="Deskripsi Parameter" ATTRIB="SM" dbname="PARAMDESC" display="block" MAXLENGTH=100 SIZE=50 value="<<PARAMDESC>>" readonly class="font11Red" onkeyup='javascript:chgAttr(DATAFORM.saveData)'></td>
</tr>
<tr>
<td nowrap>Tipe Data</td>
<td>:</td>
<td><input type="hidden" name="PARAMTYPE" value="<<PARAMTYPE>>" dbname="PARAMTYPE" ATTRIB="SM">
<input type="text" name="TYPEDESC" note="Tipe Data" ATTRIB="SM" dbname="TYPEDESC" value="<<TYPEDESC>>" display="block" readonly class="font11Red">
</td>
</tr>
<tr>
<td VALIGN=top nowrap>Nilai</td>
<td VALIGN=top>:</td>
<td><textarea name="PARAMVALUE" note="Nilai Parameter" ATTRIB="SM" cols=39 rows=5 <<READ_ONLY>> dbname="PARAMVALUE" display="block" class="font11" onkeyup='javascript:chgAttr(DATAFORM.saveData)'><<PARAMVALUE>></textarea></td>
</tr>
<tr>
<td><input type="hidden" name="LAST_TGL_UPDATE" value="<<TGL_UPDATE>>" dbname="LAST_TGL_UPDATE" ATTRIB="SM" display="block"></td>
</tr>
<tr>
<td colspan=3>
<<BUTTON_CONTAINER>>
</td>
</tr>
</table>
params;
$_SESSION['TEMPLATE_ARRAY_ADDR'] = &$ajaxParamTemplate;
}
function getData(&$ora_obj){
$templObj = new PregReplaceCallbackClass('');
$templObj->SetTemplateArray('TEMPLATE_ARRAY_ADDR');
$paramSQL = <<< sql
SELECT paramid, paramdesc, paramvalue, paramtype,
decode(paramtype, 'N', 'Numeric', 'I', 'Integer', 'S', 'String', 'D','Date', 'Character') typedesc,
TO_CHAR(tgl_update, 'YYYYMMDDHH24MISS') tgl_update
FROM prm_system
WHERE paramid = '{$_REQUEST['PARAMID']}'
sql;
$paramArray = $ora_obj->ORA_SelectData($paramSQL,null,null,OCI_FETCHSTATEMENT_BY_ROW);
if ($ora_obj->nrows > 0) {
$_SESSION['ARRAY_ADDR_VAR'] = &$variable_array;
$templObj->SetFormatName('TABLEDATA');
foreach ($paramArray as $pkey => $pval) {
foreach ($pval as $rkey => $rval) {
$variable_array[$rkey] = htmlspecialchars($rval);
}
if ($variable_array['TGL_UPDATE'] <> $_REQUEST['LAST_TGL_UPDATE']) {
$variable_array['ERR_MSG'] = 'Data Sudah Diubah oleh user lain. Close untuk refresh';
$variable_array['BUTTON_CONTAINER'] = create_button('3');
$variable_array['READ_ONLY'] = 'readonly';
} else {
$variable_array['BUTTON_CONTAINER'] = create_button('2');
$variable_array['READ_ONLY'] = '';
}
$result .= $templObj->PregReplaceCallback();
}
} else {
$result = -1;
}
return $result;
}
?>