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.

851 lines
44 KiB

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="admin/css/validationEngine.jquery.css" type="text/css" media="screen" title="no title" charset="ISO-8859-1" />
<script type="text/javascript" src="admin/js/jquery-1.4.js"></script>
<script type="text/javascript" src="admin/js/jquery.blockUI.js?v2.29"></script>
<script src="admin/js/jquery.min.js" type="text/javascript"></script>
<script src="admin/js/jquery.validationEngine.js" type="text/javascript"></script>
<script src="admin/js/jquery.validationEngine-en.js" type="text/javascript"></script>
<script src="admin/js/pbxAjax.js" type="text/javascript"></script>
<meta name="google" content="notranslate" />
<script>
$(document).ready(function() {
$("#form1").validationEngine({
sucess: function() {
document.form1.submit();
},
failure: function() {}
})
});
function selecionados() {
for (var i = 0; i < document.form1.disponiveis.length; i++) {
if (document.form1.disponiveis.options[i].selected) {
var x = document.getElementById("ramais");
var y = document.createElement('option'); //cria um novo elemento option
y.text = form1.disponiveis.options[i].text;
y.value = form1.disponiveis.options[i].value;
try {
x.add(y, null); // adiciona um novo option no fim da lista para navegadores complacentes
} catch (ex) {
x.add(y); // adiciona um novo option no fim da lista para o IE
}
}
}
j = document.form1.ramais.length;
for (var n = 0; n < j; n++) {
for (var i = 0; i < document.form1.disponiveis.length; i++) {
if (document.form1.disponiveis.options[i].text == document.form1.ramais.options[n].text) {
document.form1.disponiveis.options[i] = null;
}
}
}
document.getElementById("recorte_tronco_disp").value = '';
document.getElementById("acres_tronco_disp").value = '';
$('#disponiveis')[0].selectedIndex = -1;
$('#ramais')[0].selectedIndex = -1;
}
function MostraRecAcresDisp() {
var txt = $('#disponiveis option:selected').val().split(';');
$('#recorte_tronco_disp').val(txt[1]);
$('#acres_tronco_disp').val(txt[2]);
}
function SeteRecAcrescDisp() {
var txt = $('#disponiveis option:selected').val().split(';');
var rec = $('#recorte_tronco_disp').val();
var acr = $('#acres_tronco_disp').val();
var val = txt[0] + ';' + rec + ';' + acr;
$('#disponiveis option:selected').val(val);
}
function SeteRecAcrescInc() {
var txt = $('#ramais option:selected').val().split(';');
var rec = $('#recorte_tronco_inc').val();
var acr = $('#acres_tronco_inc').val();
var val = txt[0] + ';' + rec + ';' + acr;
$('#ramais option:selected').val(val);
}
function _remove() {
for (var i = 0; i < document.form1.ramais.length; i++) {
if (document.form1.ramais.options[i].selected) {
var x = document.getElementById("disponiveis"); //retorna o objeto select
var options = x.getElementsByTagName("option"); //pega a lista de options do select
var y = document.createElement('option'); //cria um novo elemento option
y.text = form1.ramais.options[i].text;
var txt = form1.ramais.options[i].value.split(';');
y.value = txt[0] + ';0;';
try {
x.add(y, null); // adiciona um novo option no fim da lista para navegadores complacentes
} catch (ex) {
x.add(y); // adiciona um novo option no fim da lista para o IE
}
}
}
j = document.form1.disponiveis.length;
for (var n = 0; n < j; n++) {
for (var i = 0; i < document.form1.ramais.length; i++) {
if (document.form1.ramais.options[i].text == document.form1.disponiveis.options[n].text) {
document.form1.ramais.options[i] = null;
}
}
}
$('#recorte_tronco_inc').val('');
$('#acres_tronco_inc').val('');
}
function marca_todos() {
for (var i = 0; i < document.form1.ramais.length; i++) {
document.form1.ramais.options[i].selected = true;
}
for (var i = 0; i < document.form1.relacao.length; i++) {
document.form1.relacao.options[i].selected = true;
}
}
function DesabilitaRotas() {
var plano = document.getElementById("optionNoRestricted").checked;
if (plano) {
marca_todos();
_remove();
}
document.getElementById("ramais").disabled = plano;
document.getElementById("disponiveis").disabled = plano;
if (plano) {
$("#ramais").removeClass();
} else {
$("#ramais").addClass("validate[required] caixas");
}
}
function Copia() {
document.form1.numeros.value = document.form1.numeros.value.toUpperCase();
j = document.getElementById("relacao").length;
if (document.form1.numeros.value != '') {
for (var i = 0; i < j; i++) {
if (document.form1.relacao.options[i].value == document.form1.numeros.value) {
var passa = false;
return false;
alert('N<EFBFBD>MERO J<EFBFBD> EST<EFBFBD> NA RELA<EFBFBD><EFBFBD>O!');
} else {
var passa = true;
}
}
if (j == 0) {
var passa = true;
}
if (passa == true) {
var x = document.getElementById("relacao"); //retorna o objeto select
var options = x.getElementsByTagName("option"); //pega a lista de options do select
var y = document.createElement('option'); //cria um novo elemento option
y.text = document.form1.numeros.value;
y.value = document.form1.numeros.value;
document.form1.numeros.value = '';
try {
x.add(y, null); // adiciona um novo option no fim da lista para navegadores complacentes
} catch (ex) {
x.add(y); // adiciona um novo option no fim da lista para o IE
}
}
}
}
function remove2() {
j = document.getElementById("relacao").length;
for (var i = 0; i < j; i++) {
if (document.form1.relacao.options[i].selected) {
document.form1.numeros.value = document.form1.relacao.options[i].value;
document.form1.relacao.options[i] = null;
}
}
}
function GetRecAcresRotas(value) {
var values = value.split(";");
document.getElementById('recorte_tronco_inc').value = values[1];
document.getElementById('acres_tronco_inc').value = values[2];
}
</script>
<link href="admin/css/forms.css" rel="stylesheet" type="text/css">
<style type="text/css">
table.cruises {
font-family: verdana, arial, helvetica, sans-serif;
font-size: 11px;
border-collapse: collapse;
}
div.scrollableContainer {
position: relative;
padding-top: 1.4em;
margin: 0 auto;
}
div.scrollingArea {
height: 240px;
overflow: auto;
border: 0;
}
table.scrollable thead tr {
left: 0;
top: 0;
position: absolute;
width: 100%;
}
.filtroRamal {
height: 18px;
border: 1px solid #CCC;
padding: 0;
}
</style>
</head>
<body>
<?php
include_once("admin/opcoes.php");
$acao = $_GET["acao"];
$acao2 = $_GET["acao2"];
$org_id = GetOrganizacao();
/*
* Parametros necessarios para manter a pagina<EFBFBD><EFBFBD>o.
*/
$param = sprintf('&numRamal=%s&pgn=%s&bloco=%s&pg=%s', $_REQUEST['numRamal'], $_REQUEST['pgn'], $_REQUEST['bloco'], $_REQUEST['pg']);
$btFiltro = trim($_POST["btFiltro"]);
if (strtoupper($btFiltro) == "OK") {
$acao2 = "filtra";
$acao = trim($_POST["acaoFiltro"]);
}
if ($acao2 == "salva") {
try {
$ramaisRota = $_POST['tipoRamal'];
$id = $_POST["id"];
LimpaString($str);
$nome = RemoveAcentos($_POST["nome"], true);
$musica_espera = 'N'; //trim($_POST["musica_espera"]);
$musica = ''; //trim($_POST["musica"]);
$tipo = isset($_POST["tipo"]) ? 'I' : 'E';;
$portabilidade = 0;
$operadora = trim($_POST["operadora"]);
$recorte = trim($_POST["recorte"]);
$acrescenta = trim($_POST["acrescenta"]);
if ($recorte == '') {
$recorte = '0';
$recorte_prefixo = 0;
}
$fields = array('id' => 'Id', 'nome' => 'Nome', 'musica_espera' => 'Musica Espera', 'musica' => 'Classe Musica', 'tipo' => 'Tipo', 'operadora' => 'Operadora', 'recorte' => 'Recorta', 'acrescenta' => 'Acrescenta', 'portabilidade' => 'Portabilidade');
$inTran = 0;
$result = pg_query($dbcon, 'begin');
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel iniciar a atualiza<EFBFBD><EFBFBD>o da \"Rota de Sa<EFBFBD>da\"!");
}
$inTran = 1;
if ($acao == "inseri") {
$sql = "SELECT count(*) FROM pbx_rotas_saida WHERE nome = '$nome' AND org_id = {$org_id}";
$result = pg_query($dbcon, $sql);
$qtde = pg_fetch_row($result);
if ($qtde[0] >= 1) {
GeraExcept("Este \"Nome\" j<EFBFBD> esta associado a outra \"Rota\"!");
}
$query = "INSERT INTO pbx_rotas_saida(nome, musica_espera, musica,tipo,operadora,recorte,acrescenta,portabilidade, org_id)
VALUES ('$nome', '$musica_espera', '$musica','$tipo','$operadora',$recorte,'$acrescenta','$portabilidade', $org_id)";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel incluir a \"Rota de Sa<EFBFBD>da\"!");
}
$query = "SELECT max(id) as id FROM pbx_rotas_saida WHERE org_id = {$org_id}";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel consultar a \"Rota de Sa<EFBFBD>da\"!");
}
$dados = pg_fetch_array($result);
$id_ult = $dados['id'];
InsereRamaisRotas($dbcon, $ramaisRota, $id_ult);
$novo = array('id' => $id_ult, 'nome' => $nome, 'musica_espera' => $musica_espera, 'musica' => $musica, 'tipo' => $tipo, 'operadora' => $operadora, 'recorte' => $recorte, 'acrescenta' => $acrescenta, 'portabilidade' => $portabilidade);
GrvAudita($dbcon, $idProg, 'pbx_rotas_saida', 'INS', array(), $novo, $filds);
}
if ($acao == "edita") {
$query = "UPDATE pbx_rotas_saida
SET nome='$nome', musica_espera='$musica_espera', musica='$musica',tipo='$tipo',
operadora='$operadora', recorte = $recorte, acrescenta = '$acrescenta',
portabilidade='$portabilidade'
WHERE id=$id and org_id = $org_id";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel atualizar a \"Rota de Sa<EFBFBD>da\"!");
}
$velho = GetDadosOld();
$novo = array('id' => $id, 'nome' => $nome, 'musica_espera' => $musica_espera, 'musica' => $musica, 'tipo' => $tipo, 'operadora' => $operadora, 'recorte' => $recorte, 'acrescenta' => $acrescenta, 'portabilidade' => $portabilidade);
GrvAudita($dbcon, $idProg, 'pbx_rotas_saida', 'UPD', $velho, $novo, $filds);
InsereRamaisRotas($dbcon, $ramaisRota, $id);
$query = "delete from pbx_rotas_saida_canais where id_rota='$id'";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel remover os canais \"Rota de Sa<EFBFBD>da\"!");
}
$query = "delete from pbx_rotas_saida_modelos where id_rota=$id";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel remover os modelos \"Rota de Sa<EFBFBD>da\"!");
}
}
if (!$portabilidade) {
$ramais = $_POST["ramais"];
if($ramais){
for ($i = 0; $i < count($ramais); $i++) {
list($canal, $recorta, $acres) = explode(";", $ramais[$i]);
if (trim($recorta) == '')
$recorta = '0';
$acres = soNumero($acres, array('*', '#'));
if ($acao == "edita") {
$query = "INSERT INTO pbx_rotas_saida_canais (id_rota,canal, recorta, acrescenta, org_id) values ($id,'$canal','$recorta','$acres', $org_id)";
} else {
$query = "INSERT INTO pbx_rotas_saida_canais (id_rota,canal, recorta, acrescenta, org_id) values ($id_ult,'$canal','$recorta','$acres', $org_id)";
}
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel incluir os canais para a \"Rota de Sa<EFBFBD>da\"!");
}
$novo = array('id_rota' => ($id ? $id : $id_ult), 'canal' => $canal, 'recorta' => $recorta, 'acrescenta' => $acres);
GrvAudita($dbcon, $idProg, 'pbx_rotas_saida_canais', 'INS', array(), $novo, array('id_rota', 'canal', 'recorta', 'acrescenta'));
}
}
}
$ramais = $_POST["relacao"];
for ($i = 0; $i < count($ramais); $i++) {
$ramal = strtoupper($ramais[$i]);
if ($acao == "edita") {
$query = "INSERT INTO pbx_rotas_saida_modelos (id_rota,modelo,org_id) values ($id,'$ramal',$org_id)";
} else {
$query = "INSERT INTO pbx_rotas_saida_modelos (id_rota,modelo,org_id) values ($id_ult,'$ramal',$org_id)";
}
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel incluir os modelos para a \"Rota de Sa<EFBFBD>da\"!");
}
$novo = array('id_rota' => ($id ? $id : $id_ult), 'modelo' => $ramal);
GrvAudita($dbcon, $idProg, 'pbx_rotas_saida_modelos', 'INS', array(), $novo, array('id_rota', 'modelo'));
}
$result = pg_query($dbcon, 'commit');
if (!$result) {
GeraExcept("N<EFBFBD>o foi pos<EFBFBD>vel finalizar a atualiza<EFBFBD><EFBFBD>o da \"Rota de Sa<EFBFBD>da\"!");
}
gera_arquivos($dbcon, 'ROTAS_SAIDA');
PbxFechaPopup("index.php?idProg=10018&pbxRequest=1$param&acao=$acao");
exit();
} catch (Exception $ex) {
if ($inTran) {
pg_query($dbcon, 'rollback');
}
GravaLogForms($ex->getMessage());
$msg = ($ex->getMessage());
}
}
if ($msg) {
echo "<script type=\"text/javascript\">alert('$msg');</script>";
$dados = array();
foreach ($_POST as $key => $value) {
$dados[$key] = ($key == 'allow') ? $allow2 : $value;
}
} else {
if ($acao == "edita") {
$id = ($acao2 == "filtra") ? $_POST["idFiltro"] : $_GET["id"];
$query = "SELECT * FROM pbx_rotas_saida where id=$id and org_id = $org_id";
$result = pg_query($dbcon, $query);
} else {
$id = 0;
$query = "SELECT * FROM pbx_rotas_saida where 1=2 and org_id = $org_id";
}
$result = pg_query($dbcon, $query);
if ($dados = pg_fetch_array($result)) {
$id = $dados["id"];
$nome = $dados["nome"];
$musica_espera = $dados["musica_espera"];
$musica = $dados["musica"];
$operadora = $dados["operadora"];
$tipo = $dados["tipo"];
$recorte = !$dados["recorte"] ? '0' : $dados["recorte"];
$acrescenta = $dados["acrescenta"];
$portabilidade = $dados["portabilidade"];
SetDadosOld();
if ($id) {
SetDadosOld(array('id' => $id, 'nome' => $nome, 'musica_espera' => $musica_espera, 'musica' => $musica, 'tipo' => $tipo, 'operadora' => $operadora, 'recorte' => $recorte, 'acrescenta' => $acrescenta, 'portabilidade' => $portabilidade));
}
}
}
?>
<form name="form1" method="post" action="index.php?idProg=11018&pbxRequest=1&acao=<?= $acao; ?>&acao2=salva<?= $param; ?>" id="form1">
<input type="hidden" value="<?= $acao; ?>" name="acaoFiltro">
<input type="hidden" value="<?= $id; ?>" name="idFiltro">
<table width="483" border="1" align="center" cellpadding="0" cellspacing="0" class="tabela" style="width:99%">
<tr bordercolor="#EAEAEA" bgcolor="#EAEAEA" class="labels" background="img/button03.gif">
<td width="479" class="cabecalho">
<div align="center">CADASTRO DE ROTAS DE sA&Iacute;DA
<input name="id" type="hidden" id="id2" value="<?= ($acao == 'edita') ? $id : null; ?>" />
</div>
</td>
</tr>
<?php if ($acao == 'inseri') { ?>
<?php } ?>
<tr bordercolor="#EAEAEA" bgcolor="#EAEAEA">
<td bgcolor="#EAEAEA" class="labels">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%">
<fieldset>
<legend class="labels">Nome:</legend>
<input name="nome" type="text" class="validate[required,length[0,100]] caixas" id="nome3" value="<?= ($acao == 'edita') ? $nome : null; ?>" size="80" maxlength="50" />
</fieldset>
</td>
<td width="50%">
<div align="center">
<fieldset>
<legend class="labels">Tipo:</legend>
<input id="optionNoRestricted" name="tipo" type="checkbox" value="I" <?= ($acao == 'edita') && ($tipo == 'I') ? "checked" : null; ?> />
<label for="optionNoRestricted">Sem Restri<EFBFBD><EFBFBD>o</label>
</fieldset>
</div>
</td>
</tr>
</table>
</td>
</tr>
<tr bordercolor="#EAEAEA" bgcolor="#EAEAEA">
<td class="labels">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%">
<fieldset>
<legend class="labels">Recortar:</legend>
<input style="width: 100%" name="recorte" type="text" class="validate[optional,custom[onlyNumber]] caixas" id="recorte_prefixo" value="<?= ($acao == 'edita') ? $recorte : "0"; ?>" size="10" maxlength="10" />
</fieldset>
</td>
<td width="50%">
<fieldset>
<legend class="labels">Acrescentar:</legend>
<input style="width: 100%" name="acrescenta" type="text" class="validate[optional] caixas" id="acrescenta" value="<?= ($acao == 'edita') ? $acrescenta : ""; ?>" size="10" maxlength="64" />
</fieldset>
</td>
</tr>
</table>
</td>
</tr>
<tr bordercolor="#EAEAEA" bgcolor="#EAEAEA">
<td class="labels">
<fieldset>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" class="tabela" style="border:0; padding:10px;">
<tr>
<td colspan="3">
<div align="center">MODELOS DE DISCAGEM: </div>
</td>
</tr>
<tr>
<td width="45%">
<div align="center">Modelos Dispon&iacute;veis</div>
</td>
<td width="10%">&nbsp;</td>
<td width="47%">
<div align="center">Modelos Selecionados</div>
</td>
</tr>
<tr>
<td width="45%">
<div align="center">
<select name="modelo_disp" class="caixas" id="select" style="width:200px" onchange="javascript:document.form1.numeros.value = this.value;">
<?= GetMascara(); ?>
</select>
<input name="numeros" type="text" class="caixas" id="numeros" size="20" />
<br />
</div>
</td>
<td width="10%">
<div align="center">
<br />
<input name="Submit3" type="button" class="caixas" value="&gt;" onclick="Copia();" />
<br />
<input name="Submit42" type="button" class="caixas" value="&lt;" onclick="remove2();" />
<br />
<br />
</div>
</td>
<td width="47%">
<div align="center">
<select name="relacao[]" size="7" multiple="multiple" class="validate[required] caixas" id="relacao">
<?php
if ($acao == 'edita') {
$query2 = "SELECT * FROM pbx_rotas_saida_modelos WHERE org_id = {$org_id} AND id_rota='$id' order by modelo desc";
$result2 = pg_query($dbcon, $query2);
while ($dados2 = pg_fetch_array($result2)) { ?>
<option value="<?= $dados2['modelo'] ?>" selected="selected"><?= $dados2['modelo'] ?></option>
<?php } ?>
<?php } ?>
</select>
</div>
</td>
</tr>
</table>
</fieldset>
</td>
</tr>
<tr bordercolor="#EAEAEA" bgcolor="#EAEAEA">
<td class="labels">
<fieldset>
<table width="80%" border="0" align="center" cellpadding="2" cellspacing="0" class="tabela" style="border:0; padding:10px;">
<tr>
<td colspan="3">
<div align="center">CANAIS DE SA&Iacute;DA: </div>
</td>
</tr>
<tr>
<td width="45%">
<div align="center">Troncos Dispon&iacute;veis</div>
</td>
<td width="10%">&nbsp;</td>
<td width="47%">
<div align="center">Troncos Selecionados</div>
</td>
</tr>
<tr>
<td align="left">Recortar/Acrescentar
<input name="recorte_tronco_disp" type="text" class="validate[optional,custom[onlyNumber]] caixas" id="recorte_tronco_disp" value="" size="4" maxlength="10" onkeyup="SeteRecAcrescDisp();" />/<input name="acres_tronco_disp" type="text" class="validate[optional,custom[onlyNumberChars]] caixas" id="acres_tronco_disp" value="" size="4" maxlength="64" onkeyup="SeteRecAcrescDisp();" />
</td>
<td>&nbsp;</td>
<td align="left">Recortar/Acrescentar
<input name="recorte_tronco_inc" type="text" class="validate[optional,custom[onlyNumber]] caixas" id="recorte_tronco_inc" value="" size="4" maxlength="10" onkeyup="SeteRecAcrescInc();" />/<input name="acres_tronco_inc" type="text" class="validate[optional,custom[onlyNumberChars]] caixas" id="acres_tronco_inc" value="" size="5" maxlength="64" onkeyup="SeteRecAcrescInc();" />
</td>
</tr>
<tr>
<td width="45%">
<div align="center">
<select name="disponiveis[]" size="7" multiple="multiple" class="caixas" id="disponiveis" onclick="MostraRecAcresDisp()">
<?php
if ($acao == 'edita') {
$query2 = " SELECT nome FROM pbx_troncos a WHERE org_id = {$org_id} AND nome NOT IN (select canal from pbx_rotas_saida_canais where id_rota=$id) order by nome asc";
} else {
$query2 = "SELECT nome FROM pbx_troncos WHERE org_id = {$org_id} ORDER BY nome ASC";
}
$result2 = pg_query($dbcon, $query2);
while ($dados2 = pg_fetch_array($result2)) { ?>
<option value="<?= sprintf("%s;0; ", $dados2['nome']); ?>"><?= $dados2['nome']; ?></option>
<?php } ?>
</select>
</div>
</td>
<td width="10%">
<div align="center">
<br />
<input name="Submit5" type="button" class="caixas" value="&gt;" onclick="selecionados();" />
<br />
<input name="Submit4" type="button" class="caixas" value="&lt;" onclick="_remove();" />
<br />
<br />
</div>
</td>
<td width="47%">
<div align="center">
<select name="ramais[]" size="7" multiple="multiple" class="validate[required] caixas" id="ramais" onchange="GetRecAcresRotas(this.value);">
<?php
$query2 = "SELECT b.recorta, b.acrescenta, b.canal as nome
FROM pbx_rotas_saida_canais b
WHERE b.org_id = {$org_id}
AND b.id_rota = '$id' order by b.id ";
$result2 = pg_query($dbcon, $query2);
while ($dados2 = pg_fetch_array($result2)) { ?>
<option value="<?= sprintf("%s;%s;%s", $dados2['nome'], $dados2['recorta'], $dados2['acrescenta']); ?>"><?= $dados2['nome']; ?></option>
<?php } ?>
</select>
</div>
</td>
</tr>
</table>
</fieldset>
</td>
</tr>
<tr class="labels" id="table-rotas">
<td style="border:0;">
<fieldset>
<legend class="labels">
<img src="imgSite/expand.jpg" alt="" width="13" height="13" id="animate" class="animate" align="absmiddle" />
</legend>
<div id="cabRota">
<table width="100%" border="0" cellspacing="0" cellpadding="2" style="border:1px dashed #666">
<thead>
<tr>
<td colspan="4">
<span id="labelRotas" class="animate" style="color:#669966;">Clique para Exibir os Ramais</span>
</td>
</tr>
</thead>
</table>
</div>
<div class="box">
<div class="scrollableContainer">
<div class="scrollingArea">
<table class="grid cruises scrollable" id="tableRamais" border="0" cellspacing="0" cellpadding="2" style="width:100%;">
<tr>
<td width="60%" bgcolor="#669966">
<span class="animate">Ramal</span>
<input name="filtro" class="filtroRamal" id="filtro" type="text" value="" size="20" />
</td>
<td width="10%" align="center" bgcolor="#669966">
<span id="simCheck" title="Clique para marcar todos!">
<img src="imgSite/bullet-link-active.gif" id="imgSim" alt="" width="6" height="6" align='absmiddle' /> Sim
</span>
</td>
<td width="10%" align="center" bgcolor="#669966">
<span id="naoCheck" title="Clique para marcar todos!">
<img src="imgSite/bullet-link-active.gif" id="imgNao" alt="" width="6" height="6" align='absmiddle' /> N&atilde;o
</span>
</td>
<td width="10%" align="center" bgcolor="#669966">
<span id="senhaCheck" title="Clique para marcar todos!">
<img src="imgSite/bullet-link-active.gif" id="imgSenha" alt="" width="6" height="6" align='absmiddle' />Conta/Senha
</span>
</td>
<td width="10%" align="center" nowrap="nowrap" bgcolor="#669966">
<span id="agenteCheck" title="Clique para marcar todos!">
<img src="imgSite/bullet-link-active.gif" id="imgAgente" alt="" width="6" height="6" align='absmiddle' /> Agente
</span>
</td>
</tr>
<tbody>
<?php
if ($acao == 'edita') {
$query = "SELECT coalesce(b.id_rota, '$id') as id_rota, a.id as id_ramal, a.nome, '' as dispositivo, coalesce(b.tipo_acesso, 0) as tipo_acesso, callerid
FROM pbx_sip_ramais a
LEFT OUTER JOIN pbx_rotas_saida_ramais b on b.ramal = a.nome and b.id_rota = '$id'
WHERE a.org_id = {$org_id}
ORDER BY nome, 4 ";
} else {
$query = "SELECT id as id_ramal, nome, '' as dispositivo, 0 as tipo_acesso, callerid
FROM pbx_sip_ramais
WHERE org_id = {$org_id} ORDER BY nome";
}
$rowcont = 0;
$resultRota = pg_query($dbcon, $query);
while ($dadosRota = pg_fetch_array($resultRota)) {
$tipoAcesso = $dadosRota["tipo_acesso"];
$nomeRamal = $dadosRota["nome"] . " [{$dadosRota['callerid']}]";
$numRamal = $dadosRota["nome"];
$idRamal = $dadosRota["id_ramal"];
?>
<tr>
<td width="60%"><?= $nomeRamal; ?></td>
<td width="10%" align="center">
<label>
<input type="radio" name="tipoRamal[<?= $numRamal; ?>]" class="tipoRamalSim" value="1;<?= $nomeRamal; ?>" <?php if ($tipoAcesso == 1) echo "checked=\"checked\""; ?> />
</label>
</td>
<td width="10%" align="center">
<label>
<input type="radio" name="tipoRamal[<?= $numRamal; ?>]" class="tipoRamalNao" value="0;<?= $nomeRamal; ?>" <?php if ($tipoAcesso == 0) echo "checked=\"checked\""; ?> />
</label>
</td>
<td width="10%" align="center">
<input type="radio" name="tipoRamal[<?= $numRamal; ?>]" class="tipoRamalSenha" value="2;<?= $nomeRamal; ?>" <?php if ($tipoAcesso == 2) echo "checked=\"checked\""; ?> />
</td>
<td width="10%" align="center">
<input type="radio" name="tipoRamal[<?= $numRamal; ?>]" class="tipoAgente" value="3;<?= $nomeRamal; ?>" <?php if ($tipoAcesso == 3) echo "checked=\"checked\""; ?> />
</td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
</div>
</div>
</fieldset>
</td>
</tr>
<tr bordercolor="#EAEAEA" bgcolor="#EAEAEA">
<td>
<div align="center">
<span class="style1"></span>
<span class="style1"></span>
<span class="style1"></span>
<span class="style1">
<input name="Submit2" type="button" class="labels" value="Fechar" id="Submit2" onclick="fecha_popup();" />
<input name="Submit" type="submit" class="labels" value="Salvar" onclick="marca_todos();" />
</span>
</div>
</td>
</tr>
</table>
</form>
<script type="text/javascript">
//Tratamento de dados conforme a opcao de Restrito ou Sem Restricao
$(document).ready(function() {
if($('#optionNoRestricted').is(':checked')){
$('#naoCheck').click();
$('#table-rotas').css({visibility: 'hidden'});
}else {
$('#table-rotas').css({visibility: 'visible'});
}
$('#optionNoRestricted').change(function() {
if (this.checked) {
$('#naoCheck').click();
$('#table-rotas').css({visibility: 'hidden'});
} else {
$('#table-rotas').css({visibility: 'visible'});
}
});
});
$(document).ready(function() {
window.resizeTo($('#form1').width() + 100, $('#form1').height() - 250);
$('#btfechar').click(function() {
var $ = window.parent.$;
var jQuery = window.parent.jQuery;
$.unblockUI({
fadeOut: 200
});
});
$("#filtro").keyup(function() {
var index = $(this).parent().index();
var nth = "#tableRamais td:nth-child(" + (index + 2).toString() + ")";
var valor = $(this).val().toUpperCase();
$("#tableRamais tbody tr").show();
let tr = 0
$(nth).each(function() {
if ($(this).text().toUpperCase().indexOf(valor) < 0 && tr > 0) {
$(this).parent().hide();
}
tr++
});
});
$("#filtro input").blur(function() {
$(this).val("");
});
});
$(document).ready(function() {
var $box = $('.box');
$box.toggle();
});
function LimpaImagem() {
$('#imgSim').attr("src", "imgSite/bullet-link-active.gif");
$('#imgNao').attr("src", "imgSite/bullet-link-active.gif");
$('#imgSenha').attr("src", "imgSite/bullet-link-active.gif");
$('#imgAgente').attr("src", "imgSite/bullet-link-active.gif");
}
$("#simCheck").mouseover(function() {
$(this).css("cursor", "pointer");
});
$("#naoCheck").mouseover(function() {
$(this).css("cursor", "pointer");
});
$("#senhaCheck").mouseover(function() {
$(this).css("cursor", "pointer");
});
$("#agenteCheck").mouseover(function() {
$(this).css("cursor", "pointer");
});
$(document).ready(function() {
$('#simCheck').click(function() {
$('.tipoRamalSim').attr("checked", true);
LimpaImagem();
$('#imgSim').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('#naoCheck').click(function() {
$('.tipoRamalNao').attr("checked", true);
LimpaImagem();
$('#imgNao').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('#senhaCheck').click(function() {
$('.tipoRamalSenha').attr("checked", true);
LimpaImagem();
$('#imgSenha').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('#agenteCheck').click(function() {
$('.tipoAgente').attr("checked", true);
LimpaImagem();
$('#imgAgente').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('.animate').click(function() {
var $box = $('.box');
if ($box.is(':visible')) {
$box.slideToggle('slow');
$('#animate').attr("src", "imgSite/expand.jpg");
$('#labelRotas').text("Clique para Exibir as Ramais");
$('#cabRota').show('slow');
} else {
$('#cabRota').hide();
$('#animate').attr("src", "imgSite/collapse.jpg");
$('#labelRotas').text("Ramais");
$box.slideToggle('slow');
}
});
});
</script>
<?php if ($acao == 'edita') { ?>
<script>
ajaxComboBox('admin/popula.php?id=<?= $acao_opcao; ?>', 'acao_opcao', 'opcao', '<?= $acao_; ?>');
</script>
<?php } ?>
</body>
</html>