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.
 
 
 
 
 
 

90 lines
3.5 KiB

<?php
$tpLayout = 1;
$footerDisplay = 0;
$nomeTpl = 'cadastros/tarifacao/cadOperadora.htm';
$acao = $_REQUEST['acao'];
$oper_id = $_REQUEST['oper_id'];
$infoForms = array('oper_id' => '0', 'oper_nome' => '', 'oper_spid' => '', 'oper_numero' => '', 'oper_numero_saida' => '', 'oper_dono' => 'L');
$org_id = GetOrganizacao();
$msgErro = '';
if (Save()) {
foreach ($infoForms as $key => $value) {
if (array_key_exists($key, $_POST))
$infoForms[$key] = trim($_POST[$key]);
}
$cmd = '';
if (!$infoForms['oper_nome']) {
$msg = 'Informe um nome para a operadora!';
} else if (!$infoForms['oper_spid']) {
$msg = 'Informe o SPID para a operadora!';
} else if (!$infoForms['oper_numero']) {
$msg = 'Informe um Número para a operadora!';
} else {
$infoForms['oper_nome'] = strtoupper($infoForms['oper_nome']);
if ($acao == 'novo') {
$cmd = "INSERT INTO pbx_operadoras(oper_nome, oper_spid, oper_numero, oper_numero_saida, oper_dono, org_id)values({oper_nome}, {oper_spid}, {oper_numero}, {oper_numero_saida}, 'L', $org_id)";
} else if ($acao == 'editar') {
if ($_SESSION['SSoperOrigem'] == 'L') {
$cmd = "UPDATE pbx_operadoras set oper_nome = {oper_nome}, oper_spid = {oper_spid},oper_numero = {oper_numero}, oper_numero_saida = {oper_numero_saida} where oper_id = {oper_id}";
} else {
$cmd = "UPDATE pbx_operadoras set oper_numero_saida = {oper_numero_saida} where oper_id = {oper_id}";
}
}
/*
* Se númro saída não foi fornecido assume como padrão oper_numero.
*/
$numeroSaida = trim($infoForms['oper_numero_saida']);
if (!$numeroSaida) {
$infoForms['oper_numero_saida'] = '';
}
foreach ($infoForms as $key => $value) {
$cmd = str_replace('{' . $key . '}', QuotedStr($value), $cmd);
}
$result = pg_query($dbcon, $cmd);
if ($result) {
$msg = ($acao == 'novo') ? "Registro inserido com sucesso!" : "Registro alterado com sucesso";
$cmdJs[] = "window.opener.ResetForm();";
$cmdJs[] = "window.close();";
} else {
$msg = "Não foi possivel realizar a operação!";
$msgErro = GetErrorLast($msg, 1, 1);
}
}
$jsStartup[] = "alert('$msg');";
if (count($cmdJs)) {
foreach ($cmdJs as $value) {
$jsStartup[] = $value;
}
}
} else if ($acao == 'editar') {
$query = "SELECT oper_id, oper_nome, oper_spid, oper_numero, oper_numero_saida, oper_dono FROM pbx_operadoras WHERE oper_id = '$oper_id'";
$result = pg_query($dbcon, $query);
if ($result) {
$dados = pg_fetch_array($result);
$_SESSION['SSoperOrigem'] = $dados['oper_dono'];
foreach ($infoForms as $key => $value) {
if (array_key_exists($key, $dados)) {
$infoForms[$key] = $dados[$key];
}
}
} else {
$jsStartup[] = "alert('Não foi possível editar o registro selecionado!')";
$jsStartup[] = "window.close()";
}
} else {
$infoForms['oper_spid'] = GerOperSpid();
}
$smarty->assign('tituloCadastro', 'Cadastro de Operadodras');
$smarty->assign('acao', $acao);
$smarty->assign('msgErro', $msgErro);
foreach ($infoForms as $key => $value) {
$smarty->assign($key, $value);
}
GetTemplate($smarty, $nomeTpl);