|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
$nomeTpl = "cadastros/portabilidade/monitorPortabilidade.htm";
|
|
|
|
|
$msg = 'Consulta realizada com sucesso!';
|
|
|
|
|
$erro = 0;
|
|
|
|
|
$linhasAtu .= " <tr><td align=\"right\">Nenhum registro selecionado!</td></tr>";
|
|
|
|
|
$linhasAtuCli .= " <tr><td align=\"right\">Nenhum registro selecionado!</td></tr>";
|
|
|
|
|
$janW = 500;
|
|
|
|
|
$janH = 220;
|
|
|
|
|
$acaoUser = isset($_REQUEST['acaoUser']) ? $_REQUEST['acaoUser'] : FORM_UNDEF;
|
|
|
|
|
$filtro = isset($_POST['filtro']) ? $_POST['filtro'] : 1;
|
|
|
|
|
try {
|
|
|
|
|
/*
|
|
|
|
|
* Conex<EFBFBD>o para o banco de portabilidade.
|
|
|
|
|
*/
|
|
|
|
|
$query = "select id from pbx_sites where lower(descricao) = 'portabilidade'";
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
if (!$result) {
|
|
|
|
|
$erro++;
|
|
|
|
|
throw new Exception("Erro ao consultar as configura<EFBFBD><EFBFBD>es do servidor de portabilidade!");
|
|
|
|
|
}
|
|
|
|
|
if (!pg_num_rows($result)) {
|
|
|
|
|
$erro++;
|
|
|
|
|
throw new Exception("O servidor de portabilidade n<EFBFBD>o est<EFBFBD> configurado!");
|
|
|
|
|
}
|
|
|
|
|
$row = pg_fetch_row($result);
|
|
|
|
|
$idServer = $row[0];
|
|
|
|
|
$_SESSION["SSidServerPortabilidade"] = $idServer;
|
|
|
|
|
/*
|
|
|
|
|
* Conex<EFBFBD>o para o servidor de portabilidade.
|
|
|
|
|
*/
|
|
|
|
|
$dbPorta = GetDbFromHost($idServer);
|
|
|
|
|
if (!$dbPorta) {
|
|
|
|
|
$erro++;
|
|
|
|
|
throw new Exception("Erro ao acessar o servidor de portabilidade!");
|
|
|
|
|
}
|
|
|
|
|
/*
|
|
|
|
|
* Lista as cinco <EFBFBD>ltimas atualiza<EFBFBD><EFBFBD>es da base de portabildade.
|
|
|
|
|
*/
|
|
|
|
|
$query = "select idarquivo, nomearquivo, data, totalregistros, msg, erro from atualizacoes order by 1 desc limit 5";
|
|
|
|
|
$result = pg_query($dbPorta, $query);
|
|
|
|
|
if (!$result) {
|
|
|
|
|
$erro++;
|
|
|
|
|
throw new Exception("Erro ao consultar as lista de atualiza<EFBFBD><EFBFBD>es!");
|
|
|
|
|
}
|
|
|
|
|
$linhasAtu = '';
|
|
|
|
|
while ($dadosAtu = pg_fetch_array($result)) {
|
|
|
|
|
$idArquivo = $dadosAtu["idarquivo"];
|
|
|
|
|
$nomeArquivo = $dadosAtu["nomearquivo"];
|
|
|
|
|
$data = FormataDBDataHora($dadosAtu["data"]);
|
|
|
|
|
$totalRegistro = $dadosAtu["totalregistros"];
|
|
|
|
|
$msgAtu = substr($dadosAtu["msg"], 0, 128);
|
|
|
|
|
$erroPorta = $dadosAtu["erro"];
|
|
|
|
|
|
|
|
|
|
$linhasAtu .= " <tr >
|
|
|
|
|
<td align=\"right\">$idArquivo</td>
|
|
|
|
|
<td align=\"left\" nowrap=\"nowrap\">$nomeArquivo</td>
|
|
|
|
|
<td align=\"center\">$data</td>
|
|
|
|
|
<td align=\"right\">$totalRegistro</td>
|
|
|
|
|
<td align=\"center\">$msgAtu</td>
|
|
|
|
|
<td align=\"center\">$erroPorta</td>
|
|
|
|
|
</tr>";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($acaoUser == FORM_DELETE) {
|
|
|
|
|
$cliId = $_REQUEST['cli_id'];
|
|
|
|
|
$query = "update clientes set clie_status = '-1' where cli_id = $cliId;";
|
|
|
|
|
$result = pg_query($dbPorta, $query);
|
|
|
|
|
if ($result)
|
|
|
|
|
$msgDelete = "cliente excluido com sucesso!";
|
|
|
|
|
else
|
|
|
|
|
$msgDelete = "N<EFBFBD>o foi poss<EFBFBD>vel excluir o cliente selecionado!";
|
|
|
|
|
|
|
|
|
|
$jsStartup[] = "alert('$msgDelete');";
|
|
|
|
|
}
|
|
|
|
|
if ($acaoUser == 9) {
|
|
|
|
|
$cliId = $_REQUEST['cli_id'];
|
|
|
|
|
$clistatus = $_REQUEST['cli_status'];
|
|
|
|
|
$status = $clistatus == 9 ? 1 : 9;
|
|
|
|
|
$query = "update clientes set clie_status = '$status' where cli_id = $cliId;";
|
|
|
|
|
$result = pg_query($dbPorta, $query);
|
|
|
|
|
if ($result) {
|
|
|
|
|
$msgDelete = $status == 9 ? "cliente bloqueado com sucesso!" : "cliente desbloqueado com sucesso!";
|
|
|
|
|
} else {
|
|
|
|
|
$msgDelete = "N<EFBFBD>o foi poss<EFBFBD>vel realizar a opera<EFBFBD><EFBFBD>o!";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$jsStartup[] = "alert('$msgDelete');";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($acaoUser === 'RESET_CLIENTE') {
|
|
|
|
|
$cliId = $_REQUEST['cli_id'];
|
|
|
|
|
$result = pg_query($dbPorta, 'begin');
|
|
|
|
|
|
|
|
|
|
$query = "delete from clientes_atualizacoes where cli_id = '$cliId'";
|
|
|
|
|
if ($result)
|
|
|
|
|
$result = pg_query($dbPorta, $query);
|
|
|
|
|
|
|
|
|
|
$query = "update clientes set clie_status = '2' where cli_id = $cliId;";
|
|
|
|
|
if ($result)
|
|
|
|
|
$result = pg_query($dbPorta, $query);
|
|
|
|
|
|
|
|
|
|
if ($result)
|
|
|
|
|
$result = pg_query($dbPorta, 'commit');
|
|
|
|
|
|
|
|
|
|
if ($result) {
|
|
|
|
|
$msgDelete = "opera<EFBFBD><EFBFBD>o realizada com sucesso com sucesso!";
|
|
|
|
|
} else {
|
|
|
|
|
$msgDelete = "N<EFBFBD>o foi poss<EFBFBD>vel reiniciar o cliente!";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$jsStartup[] = "alert('$msgDelete');";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Mostra as atualiza<EFBFBD><EFBFBD>es por cliente.
|
|
|
|
|
*/
|
|
|
|
|
$query = "select b.cli_id,b.cli_idexterno, b.cli_descricao, clie_status, coalesce(max(a.hora_reg), now()) as data, coalesce(max(a.idarquivo), 0) as atualizacao,
|
|
|
|
|
coalesce((select max(idarquivo) from atualizacoes), 0) as ult_atu
|
|
|
|
|
from clientes b
|
|
|
|
|
left outer join clientes_atualizacoes a on b.cli_id = a.cli_id";
|
|
|
|
|
if ($filtro == 1)
|
|
|
|
|
$query .= " where b.clie_status <> -1";
|
|
|
|
|
if ($filtro == 2)
|
|
|
|
|
$query .= " where b.clie_status = -1";
|
|
|
|
|
$query .= " group by 1,2,3,4 order by 2;";
|
|
|
|
|
|
|
|
|
|
$result = pg_query($dbPorta, $query);
|
|
|
|
|
if (!$result) {
|
|
|
|
|
$erro++;
|
|
|
|
|
throw new Exception("Erro ao consultar atualiza<EFBFBD><EFBFBD>es dos clientes!");
|
|
|
|
|
}
|
|
|
|
|
$linhasAtuCli = '';
|
|
|
|
|
$imgNovo = "<img src=\"imgSite/novoUser.png\" width=\"16\" height=\"16\" border=\"0\" title=\"Inclui novo usu<EFBFBD>rio\">";
|
|
|
|
|
$imgNovo = "<a href=\"javaScript:NovaJanela('index.php?idProg=218&acaoUser=3&cli_id=0', 'cliPortaCad', '$janW', '$janH', 'resizable=NO,scrollbars=NO');\">$imgNovo</a>";
|
|
|
|
|
|
|
|
|
|
while ($dadosAtu = pg_fetch_array($result)) {
|
|
|
|
|
$ultatu = $dadosAtu["ult_atu"];
|
|
|
|
|
$idCliente = $dadosAtu["cli_id"];
|
|
|
|
|
$idExterno = $dadosAtu["cli_idexterno"];
|
|
|
|
|
$cliDescricao = $dadosAtu["cli_descricao"];
|
|
|
|
|
$clieStatus = $dadosAtu["clie_status"];
|
|
|
|
|
$data = FormataDBDataHora($dadosAtu["data"]);
|
|
|
|
|
$atualizacao = $dadosAtu["atualizacao"];
|
|
|
|
|
$clieStatusDisp = GetCliStatus($clieStatus, $atualizacao, $ultatu);
|
|
|
|
|
|
|
|
|
|
$imgEdit = "<img src=\"imgSite/editaUser.png\" width=\"16\" height=\"16\" border=\"0\" title=\"Edita o cliente: $cliDescricao\">";
|
|
|
|
|
$imgEdit = "<a href=\"javaScript:NovaJanela('index.php?idProg=218&acaoUser=4&cli_id=$idCliente', 'cliPortaCad', '$janW', '$janH', 'resizable=NO,scrollbars=NO');\"> $imgEdit</a>";
|
|
|
|
|
|
|
|
|
|
$imgDelete = "<img src=\"imgSite/deletaUser.png\" width=\"16\" height=\"16\" border=\"0\" title=\"Apaga o usu<EFBFBD>rio: $cliDescricao\">";
|
|
|
|
|
$imgDelete = "<a href=\"javaScript:DeletaCliPortabilidade('$idCliente', '$cliDescricao');\">" . $imgDelete . "</a>";
|
|
|
|
|
|
|
|
|
|
$alt = $clieStatus == 9 ? "Desbloqueia o cliente: " : "Bloqueia o cliente: ";
|
|
|
|
|
$imgBloq = $clieStatus == 9 ? "lock_close_16.png" : "lock_open_16.png";
|
|
|
|
|
$imgBloq = "<img src=\"imgSite/$imgBloq\" width=\"16\" height=\"16\" border=\"0\" title=\"$alt $cliDescricao\">";
|
|
|
|
|
$imgBloq = "<a href=\"javaScript:BloqCliPortabilidade('$idCliente', '$cliDescricao', '$clieStatus');\">" . $imgBloq . "</a>";
|
|
|
|
|
|
|
|
|
|
$imgReset = "<img src=\"imgSite/evento.png\" width=\"12\" height=\"16\" border=\"0\" title=\"Renova os dados do cliente: $cliDescricao\">";
|
|
|
|
|
$imgReset = "<a href=\"javaScript:ResetCliPortabilidade('$idCliente', '$cliDescricao');\">" . $imgReset . "</a>";
|
|
|
|
|
|
|
|
|
|
$alerta = ($ultatu != $atualizacao) || ($clieStatus == 2) ? ' style="color:' . ($clieStatus == 2 ? '#0F0;' : '#F00;' ) . ' font-weight:bold";" ' : "";
|
|
|
|
|
|
|
|
|
|
$linhasAtuCli .= " <tr$alerta>
|
|
|
|
|
<td align=\"right\">$idCliente</td>
|
|
|
|
|
<td align=\"left\">$idExterno</td>
|
|
|
|
|
<td align=\"left\">$cliDescricao</td>
|
|
|
|
|
<td align=\"center\">$data</td>
|
|
|
|
|
<td align=\"center\">$clieStatusDisp</td>
|
|
|
|
|
<td align=\"right\">$atualizacao</td>
|
|
|
|
|
<td align=\"center\">$imgNovo</td>
|
|
|
|
|
<td align=\"center\">$imgEdit</td>
|
|
|
|
|
<td align=\"center\">$imgDelete</td>
|
|
|
|
|
<td align=\"center\">$imgBloq</td>
|
|
|
|
|
<td align=\"center\">$imgReset</td>
|
|
|
|
|
</tr>";
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception $ex) {
|
|
|
|
|
$msg = $ex->getMessage();
|
|
|
|
|
}
|
|
|
|
|
$disp = "Nenhum registro encontrado!";
|
|
|
|
|
if (empty($linhasAtuCli))
|
|
|
|
|
$linhasAtuCli = " <tr><td colspan=\"10\" align=\"center\">$disp</td><td align=\"center\">$imgNovo</td>";
|
|
|
|
|
$smarty->assign('linhasAtu', $linhasAtu);
|
|
|
|
|
$smarty->assign('linhasAtuCli', $linhasAtuCli);
|
|
|
|
|
$smarty->assign('filtro', $filtro);
|
|
|
|
|
$smarty->assign('msg', $msg);
|
|
|
|
|
$smarty->assign('erro', $erro);
|
|
|
|
|
GetTemplate($smarty, $nomeTpl);
|
|
|
|
|
|
|
|
|
|
$GLOBALS["jsStartup"][] = "window.setInterval(\"ResetForm()\", 60000);";
|
|
|
|
|
|
|
|
|
|
function GetCliStatus($clieStatus, $atualizacao, $ultatu) {
|
|
|
|
|
if ($clieStatus == 2) {
|
|
|
|
|
$img = "ampulheta.png";
|
|
|
|
|
$alt = "Aguardando Instalação";
|
|
|
|
|
} else if (($clieStatus == 1) && ($atualizacao == $ultatu)) {
|
|
|
|
|
$img = "button_ok16.png";
|
|
|
|
|
$alt = "Instalado";
|
|
|
|
|
} else if (($clieStatus == 1) && ($atualizacao != $ultatu)) {
|
|
|
|
|
$img = "parcial16.gif";
|
|
|
|
|
$alt = "Atualizações Pendentes";
|
|
|
|
|
} else if ($clieStatus == 9) {
|
|
|
|
|
$img = "cadeado.gif";
|
|
|
|
|
$alt = "Bloqueado";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return sprintf('<img src="imgSite/%s" alt="%s" width="16" height="16" align="absmiddle"/>', $img, $alt);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
?>
|