PABX da Simples IP
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

91 lines
3.4 KiB

<?php
/*
* Arquivo de template para o formulário.
*/
$nomeTpl = 'cadastros/portabilidade/clientePortabilidade.htm';
/*
* Layout para formulario.
*/
$tpLayout = 1;
$dataAtu = date('d/m/Y');
$erro = 0;
$msg = 'Novo Usuário';
/*
* Representa a tabela.
*/
$fields = array("cli_id" => 0, "cli_idexterno" => "", "cli_descricao" => "", "acaoUser" => 1, "clie_status" => 2, "cli_data" => $dataAtu);
try {
$idServer = $_SESSION["SSidServerPortabilidade"];
/*
* Conexão para o servidor de portabilidade.
*/
$dbPorta = GetDbFromHost($idServer);
if (!$dbPorta) {
$erro++;
throw new Exception("Erro ao acessar o servidor de portabilidade!");
}
/*
* Alimenta os campos do array $field com valores de uma requisição get ou post.
*/
foreach ($_REQUEST as $key => $value) {
if (array_key_exists($key, $fields)) {
$fields[$key] = trim($value);
}
}
if (IsPostBack()) {
if (!soNumero($fields["cli_idexterno"]))
throw new Exception("\"Id Externo\" é um campo obrigatório, informe apenas números!");
if (!$fields["cli_descricao"])
throw new Exception("O \"Nome\" é um campo obrigatório!");
if ($fields["acaoUser"] == FORM_INSERT) {
$query = "insert into clientes(cli_idexterno, cli_descricao, clie_status, cli_data)values(%s,%s, 2, now())";
$query = sprintf($query, QuotedStr($fields["cli_idexterno"]), QuotedStr($fields["cli_descricao"]));
$result = pg_query($dbPorta, $query);
$er = pg_errormessage($dbPorta);
if (!$result)
throw new Exception("Não foi possível iserir o cliente na base de dados!");
$msg = "Cliente inserido com sucesso!";
$fields["cli_id"] = GetCliIdPorta($dbPorta, $fields["cli_idexterno"]);
}
else {
$query = "update clientes set cli_idexterno = %s, cli_descricao = %s where cli_id = '%s'";
$query = sprintf($query, QuotedStr($fields["cli_idexterno"]), QuotedStr($fields["cli_descricao"]), $fields["cli_id"]);
$result = pg_query($dbPorta, $query);
if (!$result)
throw new Exception("Não foi iserir o cliente na base de dados!");
$msg = "Cliente atualizado com sucesso!";
}
$jsStartup[] = "window.opener.ResetForm();";
}
else if ($fields["acaoUser"] == FORM_UPDATE) {
$cliId = $fields["cli_id"];
$query = "select cli_id, cli_idexterno, cli_descricao, clie_status, cli_data from clientes where cli_id = '$cliId'";
$result = pg_query($dbPorta, $query);
if (!$result)
throw new Exception("Não foi possível consutar o cliente na base de dados!");
if (!pg_num_rows($result))
throw new Exception("Cliente não localizado na base de dados!");
$row = pg_fetch_array($result);
foreach ($row as $key => $value)
$fields[$key] = $value;
$fields["cli_data"] = FormataDBDataHora(substr($fields["cli_data"], 0, 10));
$msg = "cadastro do cliente editado com sucesso!";
}
} catch (Exception $ex) {
$erro++;
$msg = $ex->getMessage();
}
foreach ($fields as $key => $value)
$smarty->assign($key, $value);
$smarty->assign("msg", $msg);
$smarty->assign("erro", $erro);
GetTemplate($smarty, $nomeTpl);
?>