|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Arquivo de template para o formul<EFBFBD>rio.
|
|
|
|
|
*/
|
|
|
|
|
$nomeTpl = '';
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Layout para formulario.
|
|
|
|
|
*/
|
|
|
|
|
$tpLayout = 1;
|
|
|
|
|
$dataAtu = date('d/m/Y');
|
|
|
|
|
$erro = 0;
|
|
|
|
|
$msg = 'Novo Registro';
|
|
|
|
|
$login = GetLogin();
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Indique o nome do sistema, este nome ser<EFBFBD> usado para compor mensagens ao usu<EFBFBD>rios.ex:
|
|
|
|
|
* $nomeProg = "Cliente";
|
|
|
|
|
* $msg = "N<EFBFBD>o foi poss<EFBFBD>vel excuir o $nomeProg selecionado!";
|
|
|
|
|
*/
|
|
|
|
|
$nomeProg = "\"Cadastro\"";
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Titulo para o formulario.
|
|
|
|
|
*/
|
|
|
|
|
$tituloFormulario = "Cadstro";
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Nome da tabela onde sera feito o insert, so deve ser informado se hover um campo autoinc.
|
|
|
|
|
*/
|
|
|
|
|
$tableName = '';
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Indique o nome do campo que representa a chave primaria na tabela ou outro uniquekey que possa
|
|
|
|
|
* ser usado para editar um excluir um registro.
|
|
|
|
|
*/
|
|
|
|
|
$nomeRegId = '';
|
|
|
|
|
|
|
|
|
|
$regId = $_FORMS[$nomeRegId];
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Representa os campos da tabela e variaves de formulario.
|
|
|
|
|
* ex.: $fields = array("dst_id" => 0, "prt_id" => "1", "dst_nome" => "");
|
|
|
|
|
*/
|
|
|
|
|
$fields = array();
|
|
|
|
|
try {
|
|
|
|
|
/*
|
|
|
|
|
* Alimenta os campos do array $field com valores de uma requisi<EFBFBD><EFBFBD>o get ou post.
|
|
|
|
|
*/
|
|
|
|
|
foreach ($_REQUEST as $key => $value) {
|
|
|
|
|
if (array_key_exists($key, $fields)) {
|
|
|
|
|
$fields[$key] = trim($value);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (IsPostBack()) {
|
|
|
|
|
|
|
|
|
|
$dst_id = $fields[$nomeRegId];
|
|
|
|
|
if (!$fields["dst_nome"])
|
|
|
|
|
throw new Exception("O \"Nome\" <EFBFBD> um campo obrigat<EFBFBD>rio!");
|
|
|
|
|
|
|
|
|
|
if (($fields["acaoUser"] == FORM_INSERT) && (!$dst_id)) {
|
|
|
|
|
/*
|
|
|
|
|
* Componha a query para insert com base no modelo abaixo. Lembrando
|
|
|
|
|
* que as variavesi passadas por post dever estar de acordo com os
|
|
|
|
|
* nomes de campos da tabela corrspondente.
|
|
|
|
|
*/
|
|
|
|
|
$query = "insert
|
|
|
|
|
into nomeTabela
|
|
|
|
|
( campo1,campo2,campoN)
|
|
|
|
|
values ( {campo1},{campo2},{campoN})";
|
|
|
|
|
|
|
|
|
|
foreach ($fields as $key => $value)
|
|
|
|
|
$query = str_replace("{" . $key . "}", QuotedStr($value), $query);
|
|
|
|
|
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
$er = pg_errormessage($dbcon);
|
|
|
|
|
if (!$result)
|
|
|
|
|
throw new Exception("N<EFBFBD>o foi poss<EFBFBD>vel iserir o $nomeProg na base de dados!" . $query);
|
|
|
|
|
$msg = "$nomeProg inserido com sucesso!";
|
|
|
|
|
if ($tableName)
|
|
|
|
|
$fields[$nomeRegId] = GetCurrVal($tableName);
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
/*
|
|
|
|
|
* Express<EFBFBD>o regular:
|
|
|
|
|
* localizar ->[^,].[^_]*_.[^,]*
|
|
|
|
|
* Substrituir -> \0={\0}
|
|
|
|
|
*/
|
|
|
|
|
$query = "update pbx_backup_destino
|
|
|
|
|
set campo1 = {campo1},
|
|
|
|
|
campo2 = {campo2},
|
|
|
|
|
campoN = {campoN},
|
|
|
|
|
where regId = {regId} ";
|
|
|
|
|
foreach ($fields as $key => $value)
|
|
|
|
|
$query = str_replace("{" . $key . "}", QuotedStr($value), $query);
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
if (!$result)
|
|
|
|
|
throw new Exception("N<EFBFBD>o foi atualizar o $nomeProg na base de dados!");
|
|
|
|
|
$msg = "$nomeProg atualizado com sucesso!";
|
|
|
|
|
}
|
|
|
|
|
$jsStartup[] = "window.opener.ResetForm();";
|
|
|
|
|
}
|
|
|
|
|
else if ($fields["acaoUser"] == FORM_UPDATE) {
|
|
|
|
|
$query = "select campo1, campo2, campoN where $nomeRegId = $regId order by 2";
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
if (!$result)
|
|
|
|
|
throw new Exception("N<EFBFBD>o foi poss<EFBFBD>vel consutar o $nomeProg na base de dados!");
|
|
|
|
|
if (!pg_num_rows($result))
|
|
|
|
|
throw new Exception("$nomeProg n<EFBFBD>o localizado na base de dados!");
|
|
|
|
|
|
|
|
|
|
$row = pg_fetch_array($result);
|
|
|
|
|
foreach ($row as $key => $value)
|
|
|
|
|
$fields[$key] = $value;
|
|
|
|
|
$msg = "Cadastro do $nomeProg editado com sucesso!";
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception $ex) {
|
|
|
|
|
$erro++;
|
|
|
|
|
$msg = $ex->getMessage();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
foreach ($fields as $key => $value)
|
|
|
|
|
$smarty->assign($key, $value);
|
|
|
|
|
$smarty->assign("tituloFormulario", $tituloFormulario);
|
|
|
|
|
$smarty->assign("nomeRegId", $nomeRegId);
|
|
|
|
|
$smarty->assign("regId", $regId);
|
|
|
|
|
$smarty->assign("msg", $msg);
|
|
|
|
|
$smarty->assign("erro", $erro);
|
|
|
|
|
GetTemplate($smarty, $nomeTpl);
|
|
|
|
|
?>
|