<?php
$prefixoSenha = GetPrefixoSenha($dbcon);
$org_id = GetOrganizacao();
if ($_GET['ajax'] == 1) {
$ramal = $_GET['ramal'];
$action = $_GET['action'];
ob_clean();
echo MostraSenhaRamal($idProg, $ramal);
exit();
}
?>
<!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 = "scriptApl/functions15.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 >
< script >
$(document).ready(function() {
$("#form1").validationEngine({
sucess: function() {
document.form1.submit();
},
failure: function() {}
})
});
function seleciona_tudo(val) {
for (i = 0; i < document.form1.elements.length ; i + + ) {
if (document.form1.elements[i].type == "checkbox") {
if (document.form1.elements[i].name == "allow[]") {
document.form1.elements[i].checked = val;
}
}
}
}
function TodosMarcados() {
for (i = 0; i < document.form1.elements.length ; i + + ) {
if (document.form1.elements[i].type == "checkbox") {
if (document.form1.elements[i].name != "grava") {
if ((document.form1.elements[i].name != 'marcaTodos') & & (!document.form1.elements[i].checked)) {
return 0;
}
}
}
}
return 1;
}
function valida_voice() {
var numRamais = document.getElementById('qtde2').value;
for (i = 0; i < document.form1.elements.length ; i + + )
if (document.form1.elements[i].name == "gera_voice") {
if (document.form1.elements[i].checked == 0) {
document.form1.v_numero.value = '';
document.form1.v_numero.disabled = false;
document.getElementById('v_nome').value = '';
document.getElementById('v_nome').disabled = false;
document.getElementById('v_senha').value = '';
document.getElementById('v_senha').disabled = false;
document.getElementById('v_email3').value = '';
document.getElementById('v_email3').disabled = false;
} else {
document.form1.v_numero.value = '';
document.form1.v_numero.disabled = true;
}
}
if (!document.form1.v_numero.disabled) {
document.form1.v_numero.disabled = (numRamais != 1);
}
if (document.form1.v_numero.disabled) {
document.getElementById('v_numero').value = '';
document.getElementById('v_nome').value = '';
document.getElementById('v_nome').disabled = true;
document.getElementById('v_senha').value = '';
document.getElementById('v_senha').disabled = true;
document.getElementById('v_email3').value = '';
document.getElementById('v_email3').disabled = true;
}
}
function SetRamal(ramal) {
if (document.getElementById("acao").value.toUpperCase() == 'INSERI') {
if (!ramal) {
document.getElementById("callerid2").value = "";
document.getElementById("secret").value = "";
document.getElementById("senha_facilidade3").value = "";
document.getElementById("dispositivo2").value = "";
} else {
document.getElementById("callerid2").value = ramal;
document.getElementById("secret").value = "<? = $prefixoSenha ; ?> " + ramal;
document.getElementById("senha_facilidade3").value = ramal;
document.getElementById("dispositivo2").value = "SIP/" + ramal;
}
}
}
function incExcecao() {
var exc = document.getElementById('ramalSecretariaExcessao');
var numero = exc.value;
if (numero) {
var lista = document.getElementById('ramalSecExcecoesInc');
var op = document.createElement("OPTION");
op.value = numero;
op.text = numero;
lista.options.add(op);
exc.value = "";
} else {
alert('Informe um N<EFBFBD> mero!');
}
}
function remExcecao() {
var selectBox = document.getElementById("ramalSecExcecoesInc");
if (selectBox.options[selectBox.selectedIndex]) {
selectBox.options[selectBox.selectedIndex] = null;
}
}
function marca_todos() {
for (var i = 0; i < document.form1.ramalSecExcecoesInc.length ; i + + ) {
document.form1.ramalSecExcecoesInc.options[i].selected = true;
}
}
< / script >
< link href = "admin/css/forms.css" rel = "stylesheet" type = "text/css" >
< / head >
< body >
<?php
$acao = $_GET["acao"];
$acao2 = $_GET["acao2"];
/*
* 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']);
if ($acao2 == "salva") {
$secret = trim($_POST["secret"]);
$senha_facilidade = $_POST['senha_facilidade'];
$rotas = $_POST['tipoRota'];
$id = $_POST["id"];
$nome = GravaNumeroOrganizacao(trim($_POST["nome"]));
$type = trim($_POST["type"]);
$qualify = trim($_POST["qualify"]);
$port = trim($_POST["port"]);
$pickupgroup = trim($_POST["pickupgroup"]);
$permit = trim($_POST["permit"]);
$nat = trim($_POST["nat"]);
$mailbox = trim($_POST["mailbox"]);
$host = trim($_POST["host"]);
$dtmfmode = trim($_POST["dtmfmode"]);
$context = trim($_POST["context"]);
$canreinvite = 'no';
$callerid = trim($_POST["callerid"]);
$callerid2 = soNumero($_POST["callerid2"]);
$callgroup = trim($_POST["callgroup"]);
$accountcode = trim($_POST["accountcode"]);
$call_limit = trim($_POST["call-limit"]);
$disallow = 'all';
$deny = $_POST["deny"];
$fromuser = $_POST["fromuser"];
$fromdomain = $_POST["fromdomain"];
$insecure = $_POST["insecure"];
$t38pt_udptl = $_POST["t38pt_udptl"];
$videosupport = $_POST["videosupport"];
$espera = $_POST["espera"];
$sigame_interno = trim($_POST["sigame_interno"]);
$sigame_externo = trim($_POST["sigame_externo"]);
$sigame_nao_atende = trim($_POST["sigame_nao_atende"]);
$sigame_ocupado = trim($_POST["sigame_ocupado"]);
$gravacao = $_POST["gravacao"];
$musica = $_POST["musica"];
$pertube = $_POST["pertube"];
$cadeado = $_POST["cadeado"];
$disp = explode('/', trim($_POST["dispositivo"]));
$dispositivo = $disp[0] . '/' . $nome;
$gravacao_saida = trim($_POST["gravacao_saida"]);
$timeout = trim($_POST["timeout"]);
$musicclass = trim($_POST["musicclass"]);
$v_nome = $_POST["v_nome"];
$v_email = $_POST["v_email"];
$v_senha = $_POST["v_senha"];
$attach = trim($_POST["attach"]);
$delete = trim($_POST["delete"]);
$saycid = trim($_POST["saycid"]);
$envelope = trim($_POST["envelope"]);
$v_numero = trim($_POST["v_numero"]);
$inseri_voice = $_POST['inseri_voice'];
$ramalSecretaria = $_POST['ramalSecretaria'];
$habilita_prepago = !HabilitaPrepago() ? '0' : $_POST['habilita_prepago'];
$ringTime = trim($_POST["ring_time"]);
$extranet = trim($_POST["extranet"]);
$ispbx_tronco = trim($_POST['ispbx_tronco']);
$fields = array(
'id', 'nome', 'type', 'secret', 'qualify', 'port', 'permit', 'nat', 'mailbox', 'host', 'dtmfmode', 'context', 'canreinvite',
'callerid', 'accountcode', 'allow', 'disallow', 'call-limit', 'deny', 'fromuser', 'fromdomain', 'insecure', 't38pt_udptl', 'videosupport',
'espera', 'sigame_interno', 'sigame_externo', 'sigame_naoatende', 'sigame_ocupado', 'gravacao_chamada', 'musica_espera', 'nao_pertube',
'cadeado', 'senha_voice', 'dispositivo', 'gravacao_saida', 'senha_facilidade', 'callerid2', 'timeout', 'ramalSecretaria',
'habilita_prepago', 'ring_time', 'extranet', 'ispbx_tronco'
);
if ($v_numero < > '') {
$mailbox = $v_numero;
} else {
$mailbox = $v_numero;
}
$passa = true;
$mes = 'OS SEGUINTES CAMPOS NAO PODEM ESTAR VAZIOS!\n\t';
if ($nome == '') {
$passa = false;
$mes .= 'NOME' . '\n\t';
}
if ($passa == false) {
echo '< script > alert ( "' . $mes . '" ) ; < / script > ';
echo "< script > javascript : history . back ( ) ; < / script > ";
}
$sigameAtivo = $sigame_interno || $sigame_externo || $sigame_nao_atende || $sigame_ocupado;
$sigameAtivo = $sigame_interno || $sigame_externo; // || $sigame_nao_atende || $sigame_ocupado;
if ($passa & & ($acao == 'edita') & & $sigameAtivo & & VerificaRamalConectado($nome)) {
$passa = false;
$mes = "N<EFBFBD> o <EFBFBD> permitido configurar siga-me para ramal conectado a uma fila";
echo '< script > alert ( "' . $mes . '" ) ; < / script > ';
echo "< script > javascript : history . back ( ) ; < / script > ";
}
$allow = $_POST["allow"];
$allow2 = '';
$g = 0;
if (isset($allow)) {
foreach ($allow as $al) {
$g++;
$allow2 .= $al;
if ((count($allow) > 1) and (count($allow) > $g)) {
$allow2 .= ',';
}
}
}
if ($acao == "inseri") {
$qtde = $_POST["qtde"];
if (MaxRamaisPermite($dbcon, $qtde)) {
$z++;
$msg .= 'N<EFBFBD> o <EFBFBD> poss<EFBFBD> vel realizar a opera<EFBFBD> <EFBFBD> o! O n<EFBFBD> mero m<EFBFBD> ximo de ramais permitidos j<EFBFBD> foi atingido!';
} else {
$senhaBranco = trim($secret) == '';
for ($i = 1; $i < = $qtde; $i++) {
$nomeRamal = $_POST['nome'];
$qtd = strlen($nomeRamal);
$qtd2 = strlen(ltrim($nomeRamal, "0"));
$total = ($qtd - $qtd2);
$nome2 = $_POST['nome'] + ($i - 1);
if ($total >= 1) {
$nome2 = str_pad($nome2, $qtd, "0", STR_PAD_LEFT);
}
$nome2 = GravaNumeroOrganizacao($nome2);
$disp = explode('/', $dispositivo);
$dispositivo = $disp[0] . '/' . GravaNumeroOrganizacao($nome2);
$query2 = "SELECT 1 FROM pbx_ramais WHERE nome='$nome2' AND org_id = $org_id";
if (pg_num_rows(pg_query($dbcon, $query2)) >= 1) {
$z++;
$msg .= 'RAMAL ' . $nome2 . ' J<EFBFBD> CADASTRADO' . '\n';
} else {
if ($qtde > 1) {
$senha_facilidade = $nome2;
$callerid = $nome2;
$secret = $senhaBranco ? '' : "$prefixoSenha" . $nome2;
$dispositivo = "SIP/" . $nome2;
}
if ($qtde == 1) {
$nome2 = GravaNumeroOrganizacao($_POST['nome']);
}
if ((($_POST["gera_voice"] != '') or (($v_nome < > '') or ($v_email < > ''))) and ($qtde > 1)) {
$mailbox = $nome2;
}
if (($_POST["gera_voice"] != '') or (($v_nome < > '') or ($v_email < > ''))) {
if ($v_numero < > '') {
if ($i == 1) {
$query = "INSERT INTO pbx_voicemail_usuarios (caixa_postal,senha,email,nome,attach,delete,saycid,envelope, numero_ramal, org_id) values
('$v_numero','$v_senha','$v_email','$v_nome','$attach','$delete','$saycid','$envelope', '$nome2', '$org_id') "; //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'VOICE2', $nome2, $v_numero);
}
} else {
$query = "INSERT INTO pbx_voicemail_usuarios (caixa_postal,senha,email,nome,attach,delete,saycid,envelope, numero_ramal, org_id) values
('$nome2','$nome2','$v_email','$v_nome','$attach','$delete','$saycid','$envelope', '$nome2', '$org_id') "; //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'VOICE2', $nome2, $nome2);
}
pg_query($dbcon, $query);
}
$query = "INSERT INTO pbx_sip_ramais(nome, type, secret, qualify, port, permit,
nat, mailbox, host, dtmfmode, context, canreinvite, callerid,
accountcode, \"call-limit\", allow, disallow,deny,fromuser,fromdomain,insecure,t38pt_udptl,videosupport,
espera,sigame_interno,sigame_externo,sigame_naoatende,sigame_ocupado,gravacao_chamada,musica_espera,nao_pertube,cadeado,senha_voice,dispositivo,gravacao_saida,senha_facilidade, callerid2, timeout, ramalSecretaria, habilita_prepago, ring_time, extranet, ispbx_tronco, org_id)
VALUES ('$nome2', '$type', '$secret', '$qualify', '$port', '$permit', '$nat',
'$mailbox', '$host', '$dtmfmode', '$context', '$canreinvite', '$callerid',
'$accountcode', '$call_limit', '$allow2', 'all','$deny','$fromuser','$fromdomain','$insecure','$t38pt_udptl','$videosupport',
'$espera','$sigame_interno','$sigame_externo','$sigame_nao_atende','$sigame_ocupado','$gravacao','$musicclass',
'$pertube','$cadeado','$v_senha','$dispositivo','$gravacao_saida','$senha_facilidade', '$callerid2', '$timeout',
'$ramalSecretaria', '$habilita_prepago', '$ringTime', '$extranet', '$ispbx_tronco', '$org_id')";
$result = pg_query($dbcon, $query);
/*
* Restringe o ramal para todos os grupos.
* Descomentar para cloud compartilhado.
*
*/
if ($result) {
$query = "INSERT INTO pbx_grupo_audio_ramal
SELECT '$nome2', gp_id, org_id FROM pbx_grupo a WHERE org_id = {$org_id} and gp_status = 1 and not exists(select '' from pbx_grupo_audio_ramal where gp_id = a.gp_id and nome = '$nome2');";
$result = pg_query($dbcon, $query);
}
if (!$result) {
$z++;
$msg .= 'Erro ao incluir ramal ' . $nome2 . '!' . '\n';
} else {
if (!pg_affected_rows($result)) {
$z++;
$msg .= 'Erro ao incluir ramal ' . $nome2 . '!' . '\n';
} else {
$query = "SELECT max(id) AS id FROM pbx_sip_ramais";
$result = pg_query($dbcon, $query);
$id_ult = pg_fetch_row($result);
$novo = array(
'id' => $id_ult[0], 'nome' => $nome, 'type' => $type, 'secret' => $secret, 'qualify' => $qualify, 'port' => $port, 'permit' => $permit, 'nat' => $nat, 'mailbox' => $mailbox,
'host' => $host, 'dtmfmode' => $dtmfmode, 'context' => $context, 'canreinvite' => $canreinvite, 'callerid' => $callerid, 'accountcode' => $accountcode,
'allow' => $allow2, 'disallow' => 'all', 'call-limit' => $call_limit, 'deny' => $deny, 'fromuser' => $fromuser, 'fromdomain' => $fromdomain,
'insecure' => $insecure, 't38pt_udptl' => $t38pt_udptl, 'videosupport' => $videosupport, 'espera' => $espera, 'sigame_interno' => $sigame_interno,
'sigame_externo' => $sigame_externo, 'sigame_naoatende' => $sigame_nao_atende, 'sigame_ocupado' => $sigame_ocupado, 'gravacao_chamada' => $gravacao,
'musica_espera' => $musicclass, 'nao_pertube' => $pertube, 'cadeado' => $cadeado, 'senha_voice' => $v_senha, 'dispositivo' => $dispositivo,
'gravacao_saida' => $gravacao_saida, 'senha_facilidade' => $senha_facilidade, 'callerid2' => $callerid2, 'timeout' => $timeout, 'extranet' => $extranet, 'ispbx_tronco' => $ispbx_tronco,
'ramalSecretaria' => $ramalSecretaria, 'habilita_prepago' => $habilita_prepago, 'ring_time' => $ringTime
);
GrvAudita($dbcon, $idProg, 'pbx_sip_ramais', 'INS', array(), $novo, $fields, array('id'), true);
InsereRotasRamais($dbcon, $rotas, $nome2);
InsereRamaisChf($dbcon, $nome2);
if ($sigame_interno == '') {
$sigame_interno2 = 'F';
} else {
$sigame_interno2 = $sigame_interno;
}
if ($sigame_externo == '') {
$sigame_externo2 = 'F';
} else {
$sigame_externo2 = $sigame_externo;
}
if ($sigame_nao_atende == '') {
$sigame_nao_atende2 = 'F';
} else {
$sigame_nao_atende2 = $sigame_nao_atende;
}
if ($sigame_ocupado == '') {
$sigame_ocupado2 = 'F';
} else {
$sigame_ocupado2 = $sigame_ocupado;
}
if ($musicclass == '') {
$musicclass2 = 'default';
} else {
$musicclass2 = $musicclass;
}
////executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'ESPERA', $nome2, $espera); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-INTERNO', $nome2, $sigame_interno2); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-EXTERNO', $nome2, $sigame_externo2); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-OCUPADO', $nome2, $sigame_ocupado2); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-NAOATENDE', $nome2, $sigame_nao_atende2); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'GRAVACAO', $nome2, $gravacao); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'GRAVACAO-OUT', $nome2, $gravacao_saida); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'MUSICA', $nome2, $musicclass2); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'CADEADO', $nome2, $cadeado); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'NAOPERTUBE', $nome2, $pertube); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SENHA', $nome2, $senha_facilidade); //executa insersao na base interna do asterisk
if ($ispbx_tronco) {
CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome2, $ispbx_tronco . '/' . $nome2);
} else {
CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome2, $dispositivo);
}
CommandAsterisk2($dbcon, 'BINA-NOME', $nome2, $callerid);
CommandAsterisk2($dbcon, 'BINA-EXTERNO', $nome2, $callerid2);
CommandAsterisk2($dbcon, 'TIMEOUT-RAMAL', $nome2, $timeout);
CommandAsterisk2($dbcon, 'TEMPO-RING-RAMAL', $nome2, $ringTime);
}
}
}
}
}
if ($z >= 1) {
echo "< script > javascript : alert ( '$msg' ) ; < / script > ";
echo "< script > javascript : history . back ( ) ; < / script > ";
}
}
if ($passa & & ($acao == "edita")) {
$numeroOld = $_POST['numero_old'];
ApagaUrl($dbcon, $numeroOld);
$updPassRamal = $secret == MASCARA_PASSWORD ? '' : "secret='$secret',";
$updPassFacilidades = $senha_facilidade == MASCARA_PASSWORD ? '' : "senha_facilidade='$senha_facilidade',";
//REALIZA BACKUP BO BANCO
//($dbcon,'pbx_sip_ramais','U',$id,'update','SIP_RAMAIS');
$oldNome = GetNumeroRamalFromId($id);
$query = "UPDATE pbx_sip_ramais
SET nome='$nome', type='$type', {$updPassRamal} qualify='$qualify', port='$port',
permit='$permit', nat='$nat', mailbox='$mailbox', host='$host', dtmfmode='$dtmfmode', context='$context', canreinvite='$canreinvite',
callerid='$callerid', accountcode='$accountcode', allow='$allow2', disallow='all',
\"call-limit\"='$call_limit', deny='$deny',fromuser='$fromuser',fromdomain='$fromdomain',insecure='$insecure',t38pt_udptl='$t38pt_udptl',videosupport='$videosupport',
espera='$espera', sigame_interno='$sigame_interno', sigame_externo='$sigame_externo',
sigame_naoatende='$sigame_nao_atende', sigame_ocupado='$sigame_ocupado', gravacao_chamada='$gravacao', musica_espera='$musicclass',
nao_pertube='$pertube', cadeado='$cadeado', senha_voice='$v_senha',dispositivo='$dispositivo',gravacao_saida='$gravacao_saida', {$updPassFacilidades} callerid2 = '$callerid2',
timeout='$timeout', ramalSecretaria = '$ramalSecretaria', habilita_prepago='$habilita_prepago', ring_time='$ringTime', extranet='$extranet', ispbx_tronco='$ispbx_tronco'
WHERE id=$id";
pg_query($dbcon, $query);
$velho = GetDadosOld();
$novo = array(
'id' => $id, 'nome' => $nome, 'type' => $type, 'secret' => $secret, 'qualify' => $qualify, 'port' => $port, 'permit' => $permit, 'nat' => $nat, 'mailbox' => $mailbox,
'host' => $host, 'dtmfmode' => $dtmfmode, 'context' => $context, 'canreinvite' => $canreinvite, 'callerid' => $callerid, 'accountcode' => $accountcode,
'allow' => $allow2, 'disallow' => 'all', 'call-limit' => $call_limit, 'deny' => $deny, 'fromuser' => $fromuser, 'fromdomain' => $fromdomain,
'insecure' => $insecure, 't38pt_udptl' => $t38pt_udptl, 'videosupport' => $videosupport, 'espera' => $espera, 'sigame_interno' => $sigame_interno,
'sigame_externo' => $sigame_externo, 'sigame_naoatende' => $sigame_nao_atende, 'sigame_ocupado' => $sigame_ocupado, 'gravacao_chamada' => $gravacao,
'musica_espera' => $musicclass, 'nao_pertube' => $pertube, 'cadeado' => $cadeado, 'senha_voice' => $v_senha, 'dispositivo' => $dispositivo,
'gravacao_saida' => $gravacao_saida, 'senha_facilidade' => $senha_facilidade, 'callerid2' => $callerid2, 'timeout' => $timeout,
'ramalSecretaria' => $ramalSecretaria, 'habilita_prepago' => $habilita_prepago, 'ring_time' => $ringTime, 'extranet' => '$extranet', 'ispbx_tronco' => $ispbx_tronco
);
GrvAudita($dbcon, $idProg, 'pbx_sip_ramais', 'UPD', $velho, $novo, $filds, array('id'), true);
InsereRotasRamais($dbcon, $rotas, $nome);
InsereRamaisChf($dbcon, $nome);
if ($inseri_voice == 0) {
if (($v_nome != '') || ($v_email != '')) {
// Verifica se o ramal teve o numero alterado
if ($oldNome != $nome) {
$query = "UPDATE pbx_voicemail_usuarios SET numero_ramal = '$nome'
WHERE numero_ramal = '$oldNome'"; //executa insersao na base interna do asterisk
pg_query($dbcon, $query);
GrvAudita($dbcon, $idProg, 'pbx_voicemail_usuarios', 'UPD', array('numero_ramal' => $oldNome), array('numero_ramal' => $nome), array('numero_ramal'), array('numero_ramal'), true);
}
if ($v_numero == '') {
$v_numero = $nome;
}
$query = "UPDATE pbx_voicemail_usuarios SET caixa_postal='$v_numero', senha='$v_senha', email='$v_email', nome='$v_nome', attach='$attach', delete='$delete', saycid='$saycid', envelope='$envelope'
WHERE numero_ramal = '$nome'"; //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'VOICE2', $nome, $v_numero);
pg_query($dbcon, $query);
$fields = array('caixa_postal', 'senha', 'email', 'nome', 'attach', 'delete', 'saycid', 'envelope', 'numero_ramal');
$novo = array('caixa_postal' => $v_numero, 'senha' => $v_senha, 'email' => $v_email, 'nome' => $v_nome, 'attach' => $attach, 'delete' => $delete, 'saycid' => $saycid, 'envelope' => $envelope);
GrvAudita($dbcon, $idProg, 'pbx_voicemail_usuarios', 'UPD', array(), $novo, $fields, array('numero_ramal'), true);
}
} else {
if (($v_senha != '') & & ($v_email != '') & & ($v_nome != '')) {
if ($v_numero == '') {
$v_numero = $nome;
}
$query = "INSERT INTO pbx_voicemail_usuarios
(caixa_postal,senha,email,nome,attach,delete,saycid,envelope, numero_ramal, org_id)
VALUES ('$v_numero','$v_senha','$v_email','$v_nome','$attach','$delete','$saycid','$envelope', '$nome', '$org_id') ";
pg_query($dbcon, $query); //executa insersao na base interna do asterisk
$fields = array('caixa_postal', 'senha', 'email', 'nome', 'attach', 'delete', 'saycid', 'envelope', 'numero_ramal');
$novo = array('caixa_postal' => $v_numero, 'senha' => $v_senha, 'email' => $v_email, 'nome' => $v_nome, 'attach' => $attach, 'delete' => $delete, 'saycid' => $saycid, 'envelope' => $envelope);
GrvAudita($dbcon, $idProg, 'pbx_voicemail_usuarios', 'INS', array(), $novo, $fields, array('numero_ramal'), true);
CommandAsterisk2($dbcon, 'VOICE2', $nome, $v_numero);
}
}
if ($sigame_interno == '') {
$sigame_interno = 'F';
}
if ($sigame_externo == '') {
$sigame_externo = 'F';
}
if ($sigame_nao_atende == '') {
$sigame_nao_atende = 'F';
}
if ($sigame_ocupado == '') {
$sigame_ocupado = 'F';
}
if ($musicclass == '') {
$musicclass = 'default';
} //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'ESPERA', $nome, $espera); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-INTERNO', $nome, $sigame_interno); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-EXTERNO', $nome, $sigame_externo); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-OCUPADO', $nome, $sigame_ocupado); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SIGAME-NAOATENDE', $nome, $sigame_nao_atende); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'GRAVACAO', $nome, $gravacao); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'GRAVACAO-OUT', $nome, $gravacao_saida); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'MUSICA', $nome, $musicclass); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'CADEADO', $nome, $cadeado); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'NAOPERTUBE', $nome, $pertube); //executa insersao na base interna do asterisk
CommandAsterisk2($dbcon, 'SENHA', $nome, $senha_facilidade); //executa insersao na base interna do asterisk
if ($ispbx_tronco) {
CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome, $ispbx_tronco . '/' . $nome);
} else {
CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome, $dispositivo);
}
CommandAsterisk2($dbcon, 'BINA-NOME', $nome, $callerid);
CommandAsterisk2($dbcon, 'BINA-EXTERNO', $nome, $callerid2);
CommandAsterisk2($dbcon, 'TIMEOUT-RAMAL', $nome, $timeout);
CommandAsterisk2($dbcon, 'TEMPO-RING-RAMAL', $nome, $ringTime);
} //gera arquivos e executa o reload dos dados no asterisk
if ($passa) {
gera_arquivos($dbcon, 'SIP_RAMAIS', 1, 0); //gera arquivos e executa o reload dos dados no asterisk
gera_arquivos($dbcon, 'VOICEMAIL', 1, 0);
gera_arquivos($dbcon, 'QUEUES_GRUPOS', 1, 1);
echo "< script >
opener.location.reload();
fecha_popup(0,'index.php?idProg=10009&pbxRequest=1$param&acao=$acao');
< / script > ";
}
}
if ($acao == "edita") {
$id = $_GET["id"] ? $_GET["id"] : "0";
$query = "SELECT * FROM pbx_sip_ramais where id=$id";
$result = pg_query($dbcon, $query);
} else {
$query = "SELECT * FROM pbx_sip_ramais where id is null";
$allow = 'ulaw,alaw';
}
$result = pg_query($dbcon, $query);
if ($dados = pg_fetch_array($result)) {
$id = $dados["id"];
$nome = $dados["nome"];
$type = $dados["type"];
$secret = MASCARA_PASSWORD;
$senha_facilidade = MASCARA_PASSWORD;
$qualify = $dados["qualify"];
$port = $dados["port"];
$pickupgroup = $dados["pickupgroup"];
$permit = $dados["permit"];
$nat = trim($dados["nat"]);
$mailbox = $dados["mailbox"];
$host = $dados["host"];
$context = $dados["context"];
$canreinvite = $dados["canreinvite"];
$callerid = $dados["callerid"];
$callerid2 = $dados["callerid2"];
$callgroup = $dados["callgroup"];
$accountcode = $dados["accountcode"];
$call_limit = $dados["call-limit"];
$allow = $dados["allow"];
$dtmfmode = $dados["dtmfmode"];
$deny = $dados["deny"];
$fromuser = $dados["fromuser"];
$fromdomain = $dados["fromdomain"];
$insecure = $dados["insecure"];
$t38pt_udptl = $dados["t38pt_udptl"];
$disallow = $dados["disallow"];
$videosupport = $dados["videosupport"];
$espera = $dados["espera"];
$sigame_interno = $dados["sigame_interno"];
$sigame_externo = $dados["sigame_externo"];
$sigame_naoatende = $dados["sigame_naoatende"];
$sigame_ocupado = $dados["sigame_ocupado"];
$gravacao_chamada = $dados["gravacao_chamada"];
$musica_espera = $dados["musica_espera"];
$nao_pertube = $dados["nao_pertube"];
$cadeado = $dados["cadeado"];
$senha_voice = $dados["senha_voice"];
$attach = $dados["attach"];
$delete = $dados["delete"];
$envelope = $dados["envelope"];
$saycid = $dados["saycid"];
$pager = $dados["pager"];
$dispositivo = $dados["dispositivo"];
$gravacao_saida = $dados["gravacao_saida"];
$timeout = $dados["timeout"];
$ramalSecretaria = $dados["ramalsecretaria"];
$saldo_prepago = FormataValor($dados["saldo_prepago"]);
$habilita_prepago = !HabilitaPrepago() ? '0' : $dados["habilita_prepago"];
$ringTime = $dados["ring_time"];
$extranet = $dados["extranet"];
$ispbx_tronco = $dados["ispbx_tronco"];
SetDadosOld();
if ($id) {
foreach ($dados as $key => $valor) {
$arDadosOld[$key] = $valor;
}
SetDadosOld($arDadosOld);
}
}
//Grava<EFBFBD> <EFBFBD> o como default sim.
if (!isset($gravacao_chamada)) {
$gravacao_chamada = 'V';
}
if (!isset($gravacao_saida)) {
$gravacao_saida = 'V';
}
if (!isset($extranet)) {
$extranet = GetDefaultRedesPermitidas();
}
?>
< form name = "form1" method = "post" action = "index.php?idProg=11009&pbxRequest=1&acao= <? = $acao ; ?> &acao2=salva <? = $param ; ?> " id = "form1" >
< table border = "1" align = "center" cellpadding = "0" cellspacing = "0" class = "tabela" >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" class = "labels" background = "img/button03.gif" >
< td class = "cabecalho" >
< div align = "center" > CADASTRO DE RAMAIS SIP
< input name = "id" type = "hidden" id = "id2" value = " <? = ( $acao == 'edita' ) ? $id : null ; ?> " />
< input name = "acao" type = "hidden" id = "acao" value = " <? = $acao ; ?> " />
< / div >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" class = "labels" >
< td bgcolor = "#EAEAEA" class = "labels" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td width = "25%" >
< fieldset >
< legend class = "labels" > Qtde.:< / legend >
< input name = "qtde" type = "text" class = "validate[required,custom[onlyNumber],length[0,100]] caixas" id = "qtde2" value = "1" size = "5" maxlength = "10" onchange = "valida_voice();" / >
< / fieldset >
< / td >
< td width = "25%" >
< fieldset >
< legend class = "labels" > Gera Voicemail:< / legend >
< input name = "gera_voice" type = "checkbox" id = "gera_voice2" value = "sim" onclick = "valida_voice();" / >
< / fieldset >
< / td >
< td width = "25%" >
< fieldset >
< legend class = "labels" > Habilita Pr<EFBFBD> -pago< / legend >
< input name = "habilita_prepago" type = "radio" value = "1" <? = ( ! HabilitaPrepago ()) ? 'disabled="disabled"' : null ; ?> <? = ( $acao == 'edita' ) && ( $habilita_prepago ) ? "checked" : null ; ?> /> Sim
< input name = "habilita_prepago" type = "radio" value = "0" <? = ( ! HabilitaPrepago ()) ? 'disabled="disabled"' : null ; ?> <? = ( $acao == 'edita' ) && ( ! $habilita_prepago ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> /> Nã o</ span >
< / fieldset >
< / td >
< td width = "25%" >
< fieldset >
< legend class = "labels" > Saldo Pr<EFBFBD> -pago:< / legend >
< input name = "saldo_prepago" type = "text" id = "saldo_prepago" class = "caixas" value = " <? = ( $acao == 'edita' ) ? $saldo_prepago : '0,00' ; ?> " disabled = "disabled" />
< / fieldset >
< / td >
< / tr >
< / table >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" class = "labels" >
< td bgcolor = "#EAEAEA" class = "labels" >
< div align = "right" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td width = "11%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > Ramal:< / legend >
< input name = "nome" type = "text" class = "validate[required,custom[onlyNumber]] caixas" id = "nome2" value = " <? = ( $acao == 'edita' ) ? $nome : null ; ?> " size = "10" maxlength = "20" onchange = "SetRamal(this.value);" />
< input name = "numero_old" type = "hidden" id = "numero_old" value = " <? = ( $acao == 'edita' ) ? $nome : null ; ?> " />
< / fieldset >
< / div >
< / td >
< td width = "14%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > Senha SIP:< / legend >
< input name = "secret" type = "password" class = "validate[optional] caixas" id = "secret" value = " <? = ( $acao == 'edita' ) ? $secret : null ; ?> " size = "10" maxlength = "100" />
< img id = "hide-password-ramal" title = "Clique para exibir a senha do ramal!" onclick = "MostraSenhaRamal(' <? = $idProg ; ?> ', ' <? = $nome ; ?> ');" src = "imgSite/hide-password-16.png" border = "0" style = "vertical-align: middle;" >
< / fieldset >
< / div >
< / td >
< td width = "12%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > Senha Facilidades:< / legend >
< input name = "senha_facilidade" autocomplete = "new-password" type = "password" class = "validate[optional,length[0,100]] caixas" id = "senha_facilidade3" value = " <? = ( $acao == 'edita' ) ? $senha_facilidade : null ; ?> " size = "10" maxlength = "20" />
< / fieldset >
< / div >
< / td >
< td width = "28%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > Tipo:< / legend >
< span class = "style5" >
< input name = "type" type = "radio" value = "user" <? = ( $acao == 'edita' ) && ( $type == 'user' ) ? "checked" : null ; ?> />
< / span > Faz ligaç õ es< span class = "style5" >
< input name = "type" type = "radio" value = "peer" <? = ( $acao == 'edita' ) && ( $type == 'peer' ) ? "checked" : null ; ?> />
Recebe Ligaç õ es
< input name = "type" type = "radio" value = "friend" <? = ( $acao == 'edita' ) && ( $type == 'friend' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Ambos
< / span >
< / fieldset >
< / div >
< / td >
< td width = "12%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Monitorar:< / span > < / legend >
< span class = "style5" >
< input name = "qualify" type = "radio" value = "yes" <? = ( $acao == 'edita' ) && ( $qualify == 'yes' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> /> Sim
< input name = "qualify" type = "radio" value = "no" <? = ( $acao == 'edita' ) && ( $qualify == 'no' ) ? "checked" : null ; ?> /> Nã o</ span >
< / fieldset >
< / div >
< / td >
< td width = "18%" >
< div align = "left" >
< fieldset >
< legend class = "labels" >
< span class = "style5" > Tronco PBX:< / span >
< / legend >
< select name = "ispbx_tronco" class = "caixas" >
< option value = "" > ----------------------------- < / option >
<?php
$query2 = "SELECT id, username, nome, tipo FROM pbx_troncos WHERE org_id = {$org_id} ORDER BY nome;";
$result2 = pg_query($dbcon, $query2);
$troncos = pg_fetch_all($result2);
foreach ($troncos as $v) { ?>
<?php $selected = "" ; ?>
<?php $dispPbx = $v [ 'tipo' ] . '/' . $v [ 'username' ]; ?>
<?php ( $dispPbx == $ispbx_tronco ) ? $selected = "selected" : null ; ?>
< option value = ' <? = $dispPbx ?> ' <? = $selected ?> > <? = $v [ 'nome' ] ?> </ option >
<?php } ?>
< / select >
< / fieldset >
< / div >
< / td >
< / tr >
< / table >
< / div >
< div align = "right" > < / div >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td bgcolor = "#EAEAEA" class = "labels" >
< fieldset >
< legend class = "labels" > Codecs Habilitados :< / legend >
< table align = "center" width = "97%" >
< tr >
< td >
< span class = "labels2" >
<?php
$numCodec = 0;
if (is_array($allow)) {
$allow = implode(",", $allow);
}
foreach (GetCodecs(true) as $codec) {
$check = ((strpos($allow, $codec) !== false)) ? ' checked="checked"' : '';
echo sprintf('< input name = "allow[]" type = "checkbox" id = "allow%s" value = "%s" % s > ', ++$numCodec, $codec, $check);
echo ucfirst($codec);
}
?>
< input name = "marcaTodos" type = "checkbox" id = "marcaTodos" value = "all" onclick = "seleciona_tudo(this.checked);" / > all
< / span >
< / td >
< / tr >
< / table >
< / fieldset >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td bgcolor = "#EAEAEA" class = "labels" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td colspan = "2" width = "15%" >
< fieldset >
< legend class = "labels" > Porta:< / legend >
< input name = "port" type = "text" class = "validate[required,custom[onlyNumber]] caixas" id = "port2" value = " <? = ( $acao == 'edita' ) ? $port : "5060" ; ?> " size = "7" maxlength = "10" />
< span class = "style5" > < / span >
< / fieldset >
< input name = "accountcode" type = "hidden" id = "accountcode" value = " <? = ( $acao == 'edita' ) ? $accountcode : null ; ?> " />
< / td >
< td width = "19%" >
< fieldset >
< legend class = "labels" > Nat:< / legend >
< span class = "style5" >
< input name = "nat" type = "radio" value = "yes" <? = ( $acao == 'edita' ) && ( $nat == 'yes' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Sim
< input name = "nat" type = "radio" value = "no" <? = ( $acao == 'edita' ) && ( $nat == 'no' ) ? "checked" : null ; ?> />
Nã o
< / span >
< / fieldset >
< / td >
< td width = "20%" >
< fieldset >
< legend class = "labels" > Fax:< / legend >
< span class = "style5" >
< input name = "t38pt_udptl" type = "radio" value = "yes" <? = ( $acao == 'edita' ) && ( $t38pt_udptl == 'yes' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Sim
< input name = "t38pt_udptl" type = "radio" value = "no" <? = ( $acao == 'edita' ) && ( $t38pt_udptl == 'no' ) ? "checked" : null ; ?> />
Nã o
< / span >
< / fieldset >
< / td >
< td width = "20%" >
< fieldset >
< legend class = "labels" > Suporte a Ví deo:< / legend >
< span class = "style5" >
< input name = "videosupport" type = "radio" value = "yes" <? = ( $acao == 'edita' ) && ( $videosupport == 'yes' ) ? "checked" : null ; ?> />
Sim
< input name = "videosupport" type = "radio" value = "no" <? = ( $acao == 'edita' ) && ( $videosupport == 'no' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Nã o
< / span >
< / fieldset >
< / td >
< td width = "20%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > Tempo de Ring:< / legend >
< input name = "ring_time" type = "text" class = "validate[required,custom[onlyNumber]] caixas" id = "ring_time" value = " <? = ( $acao == 'edita' ) ? $ringTime : "25" ; ?> " size = "10" />
< span class = "style5" > < / span >
< / fieldset >
< / div >
< / td >
< / tr >
< / table >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td bgcolor = "#EAEAEA" class = "labels" >
< div align = "right" >
< span class = "style5" > < / span >
< / div >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td width = "25%" >
< fieldset >
< legend class = "labels" > Mú sica de Espera:< / legend >
< select name = "musicclass" class = "caixas" >
< option value = "" > ---------< / option >
<?php
$query2 = "SELECT * FROM pbx_musichold_grupos WHERE org_id = {$org_id} AND nome < > 'agentes' order by nome asc";
$result2 = pg_query($dbcon, $query2);
while ($dados2 = pg_fetch_array($result2)) { ?>
< option value = " <? = $dados2 [ 'nome' ]; ?> " <? = ( $acao == 'edita' ) && ( $musica_espera == $dados2 [ 'nome' ]) ? "selected" : null ; ?> > <? = $dados2 [ 'nome' ]; ?> </ option >
<?php } ?>
< / select >
< / fieldset >
< / td >
< td width = "25%" >
< fieldset >
< legend class = "labels" >
< span class = "style5" > Tratar conexõ es dos Peers:< / span >
< / legend >
< select name = "insecure" class = "caixas" id = "insecure" >
< option value = "" <? = ( $insecure == '' ) ? "selected" : null ; ?> > ----------</ option >
< option value = "port" <? = ( $insecure == 'port' ) ? "selected" : null ; ?> > port</ option >
< option value = "invite" <? = ( $insecure == 'invite' ) ? "selected" : null ; ?> > invite</ option >
< option value = "very" <? = ( $insecure == 'very' ) ? "selected" : null ; ?> > very</ option >
< option value = "yes" <? = ( $insecure == 'yes' ) ? "selected" : null ; ?> > yes</ option >
< option value = "no" <? = ( $insecure == 'no' ) ? "selected" : null ; ?> > no</ option >
< / select >
< / fieldset >
< / td >
< td width = "25%" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Servidor:< / span > < / legend >
< input name = "host" type = "text" class = "caixas" id = "host2" value = " <? = ( $acao == 'edita' ) ? $host : "dynamic" ; ?> " />
< span class = "labels2" > < / span >
< / fieldset >
< / td >
< td width = "25%" >
< fieldset >
< legend class = "labels" > Modo DTMF:< / legend >
< select name = "dtmfmode" class = "caixas" >
< option value = "rfc2833" <? = ( $dtmfmode == 'rfc2833' ) ? "selected" : null ; ?> > rfc2833</ option >
< option value = "inband" <? = ( $dtmfmode == 'inband' ) ? "selected" : null ; ?> > inband</ option >
< option value = "info" <? = ( $dtmfmode == 'info' ) ? "selected" : null ; ?> > info</ option >
< option value = "auto" <? = ( $dtmfmode == 'auto' ) ? "selected" : null ; ?> > auto</ option >
< / select >
< span class = "labels" >
< span class = "style5" > < / span >
< / span >
< / fieldset >
< / td >
< / tr >
< / table >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" class = "labels" >
< div align = "right" > < / div >
< div align = "right" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td width = "20%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > Limite de Ligaç ã o:< / legend >
< input name = "call-limit" type = "text" class = "caixas" id = "call-limit2" value = " <? = ( $acao == 'edita' ) ? $call_limit : "1" ; ?> " size = "10" />
< span class = "style5" > < / span >
< / fieldset >
< / div >
< / td >
< td width = "20%" >
< div align = "left" >
< fieldset >
< legend class = "labels" >
< span class = "style5" > Contexto:< / span >
< / legend >
< select name = "context" class = "caixas" >
< option value = "padrao" > padrao< / option >
<?php
$query2 = "SELECT * FROM pbx_contextos WHERE org_id = {$org_id} ORDER BY id ASC";
$result2 = pg_query($dbcon, $query2);
while ($dados2 = pg_fetch_array($result2)) { ?>
< option value = " <? = $dados2 [ 'nome' ]; ?> " <? = ( $acao == 'edita' ) && ( $context == $dados2 [ 'nome' ]) ? "selected" : null ; ?> > <? = $dados2 [ 'nome' ]; ?> </ option >
<?php } ?>
< / select >
< / fieldset >
< / div >
< / td >
< td width = "20%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Bina:< / span > < / legend >
< input name = "callerid" type = "text" class = "caixas" id = "callerid2" value = " <? = ( $acao == 'edita' ) ? $callerid : null ; ?> " size = "15" />
< span class = "labels2" > < / span >
< / fieldset >
< / div >
< / td >
< td width = "20%" >
< div align = "left" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Bina Externa:< / span > < / legend >
< input name = "callerid2" type = "text" class = "validate[optional,custom[onlyNumber],length[0,100]] caixas" id = "callerid2" value = " <? = ( $acao == 'edita' ) ? $callerid2 : null ; ?> " size = "15" />
< span class = "labels2" > < / span >
< / fieldset >
< / div >
< / td >
< / tr >
< / table >
< / div >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td bgcolor = "#EAEAEA" class = "labels" >
< div align = "right" > < / div >
< div align = "right" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Dispositivo:< / legend >
< input name = "dispositivo" type = "text" class = "validate[optional,length[0,100]] caixas" id = "dispositivo2" value = " <? = ( $acao == 'edita' ) ? $dispositivo : null ; ?> " size = "20" maxlength = "20" />
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Siga-me Interno:< / legend >
< input name = "sigame_interno" type = "text" class = "validate[optional,custom[onlyNumber],length[0,100]] caixas" id = "sigame_interno2" value = " <? = ( $acao == 'edita' ) ? $sigame_interno : null ; ?> " size = "20" maxlength = "20" />
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Siga-me Externo:< / legend >
< input name = "sigame_externo" type = "text" class = "validate[optional,custom[onlyNumber],length[0,100]] caixas" id = "sigame_externo2" value = " <? = ( $acao == 'edita' ) ? $sigame_externo : null ; ?> " size = "20" maxlength = "20" />
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Siga-me Nã o Atende:< / legend >
< input name = "sigame_nao_atende" type = "text" class = "validate[optional,custom[onlyNumber],length[0,100]] caixas" id = "sigame_nao_atende2" value = " <? = ( $acao == 'edita' ) ? $sigame_naoatende : null ; ?> " size = "20" maxlength = "20" />
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Siga-me Ocupado:< / legend >
< input name = "sigame_ocupado" type = "text" class = "validate[optional,custom[onlyNumber],length[0,100]] caixas" id = "sigame_ocupado2" value = " <? = ( $acao == 'edita' ) ? $sigame_ocupado : null ; ?> " size = "20" maxlength = "20" />
< / fieldset >
< / div >
< / td >
< / tr >
< / table >
< / div >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td bgcolor = "#EAEAEA" class = "labels" >
< div align = "right" > < / div >
< div align = "right" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Chamada em Espera:< / legend >
< span class = "style5" >
< input name = "espera" type = "radio" value = "V" <? = ( $acao == 'edita' ) && ( $espera == 'V' ) ? "checked" : null ; ?> />
Sim
< input name = "espera" type = "radio" value = "F" <? = ( $acao == 'edita' ) && ( $espera == 'F' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Nã o< span class = "labels2" > < / span >
< / span >
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Cadeado:< / legend >
< span class = "style5" >
< input name = "cadeado" type = "radio" value = "V" <? = ( $acao == 'edita' ) && ( trim ( $cadeado ) == 'V' ) ? "checked" : null ; ?> />
Sim
< input name = "cadeado" type = "radio" value = "F" <? = ( $acao == 'edita' ) && ( trim ( $cadeado ) == 'F' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Nã o< span class = "labels2" > < / span >
< / span >
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > Nã o Pertube:< / legend >
< span class = "style5" >
< input name = "pertube" type = "radio" value = "V" <? = ( $acao == 'edita' ) && ( $nao_pertube == 'V' ) ? "checked" : null ; ?> />
Sim
< input name = "pertube" type = "radio" value = "F" <? = ( $acao == 'edita' ) && ( $nao_pertube == 'F' ) ? "checked" : null ; ?> <? = ( $acao != 'edita' ) ? "checked" : null ; ?> />
Nã o< span class = "labels2" > < / span >
< / span >
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Gravaç ã o de Entrada:< / span > < / legend >
< span class = "style5" >
< input name = "gravacao" type = "radio" value = "V" <? = ( $gravacao_chamada == 'V' ) ? "checked" : null ; ?> />
Sim
< input name = "gravacao" type = "radio" value = "F" <? = ( $gravacao_chamada == 'F' ) ? "checked" : null ; ?> />
Nã o< span class = "labels2" > < / span >
< / span >
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Gravaç ã o de Saida:< / span > < / legend >
< span class = "style5" >
< input name = "gravacao_saida" type = "radio" value = "V" <? = ( $gravacao_saida == 'V' ) ? "checked" : null ; ?> />
Sim
< input name = "gravacao_saida" type = "radio" value = "F" <? = ( $gravacao_saida == 'F' ) ? "checked" : null ; ?> />
Nã o< span class = "labels2" > < / span > < / span >
< / fieldset >
< / div >
< / td >
< td >
< div align = "left" >
< fieldset >
< legend class = "labels" > < span class = "style5" > Tempo da Liga<EFBFBD> <EFBFBD> o:< / span > < / legend >
< span class = "style5" >
< input name = "timeout" type = "text" class = "validate[optional,custom[onlyNumber],length[0,10] caixas" id = "timeout" value = " <? = ( $acao == 'edita' ) ? $timeout : null ; ?> " size = "10" maxlength = "10" />
< span class = "labels2" > < / span >
< / span >
< / fieldset >
< / div >
< / td >
< / tr >
< / table >
< / div >
< / td >
< / tr >
<?php
if (($acao == 'inseri') || (trim($mailbox) == '')) {
$mailbox = 0;
}
$inseri_voice = 1;
$query2 = "SELECT * FROM pbx_voicemail_usuarios WHERE numero_ramal = '$nome' AND org_id = {$org_id} order by caixa_postal asc";
$result2 = pg_query($dbcon, $query2);
$dados2 = pg_fetch_array($result2);
if (pg_num_rows($result2) > 0) {
$inseri_voice = 0;
$v_numero = $dados2['caixa_postal'];
$v_nome = $dados2['nome'];
$v_email = $dados2['email'];
$v_senha = $dados2['senha'];
$attach = trim($dados2["attach"]);
$delete = trim($dados2["delete"]);
$envelope = trim($dados2["envelope"]);
$saycid = trim($dados2["saycid"]);
$pager = trim($dados2["pager"]);
}
?>
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" class = "labels" background = "img/button03.gif" >
< td class = "cabecalho" >
< div align = "center" > VOICEMAIL
< input name = "inseri_voice" type = "hidden" id = "inseri_voice" value = " <? = $inseri_voice ; ?> " />
< / div >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td class = "labels" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr >
< td width = "17%" >
< fieldset >
< legend class = "labels" > Nú mero da Caixa:< / legend >
< span class = "style5" > < / span > < span class = "style5" >
< input name = "v_numero" type = "text" class = "validate[optional] caixas" id = "v_numero" value = " <? = ( $inseri_voice == 0 ) ? $v_numero : null ; ?> " size = "15" />
< / span >
< / fieldset >
< / td >
< td width = "30%" >
< fieldset >
< legend class = "labels" > Nome:< / legend >
< span class = "style5" > < / span > < span class = "style5" >
< input name = "v_nome" type = "text" class = "validate[optional] caixas" id = "v_nome" value = " <? = ( $inseri_voice == 0 ) ? $v_nome : null ; ?> " size = "30" />
< / span >
< / fieldset >
< / td >
< td width = "14%" >
< fieldset >
< legend class = "labels" > Senha:< / legend >
< span class = "style5" > < / span > < span class = "style5" >
< input name = "v_senha" type = "password" class = "validate[optional] caixas" id = "v_senha" value = " <? = ( $inseri_voice == 0 ) ? $v_senha : null ; ?> " size = "10" />
< / span >
< / fieldset >
< / td >
< td width = "39%" >
< fieldset >
< legend class = "labels" > E-mail:< / legend >
< span class = "style5" > < / span > < span class = "style5" >
< input name = "v_email" autocomplete = "off" type = "text" class = "validate[optional] caixas" id = "v_email3" value = " <? = ( $acao == 'edita' ) ? $v_email : null ; ?> " size = "30" />
< / span >
< / fieldset >
< / td >
< / tr >
< / table >
< / td >
< / tr >
< tr bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "0" >
< tr class = "labels" >
< td >
< fieldset >
< legend class = "labels" > Reproduzir Data e Hora:< / legend >
< span class = "style5" > < / span > < span class = "style5" >
< input name = "envelope" type = "radio" value = "yes" <? = ( $inseri_voice == 0 ) && ( $envelope == 'yes' ) ? "checked" : null ; ?> <? = ( $inseri_voice != 0 ) ? "checked" : null ; ?> />
Sim
< input name = "envelope" type = "radio" value = "no" <? = ( $inseri_voice == 0 ) && ( $envelope == 'no' ) ? "checked" : null ; ?> />
Nã o
< / span >
< / fieldset >
< / td >
< td >
< fieldset >
< legend class = "labels" > Enviar Anexo:< / legend >
< span class = "style5" > < / span > < span class = "style5" >
< input name = "attach" type = "radio" value = "yes" <? = ( $inseri_voice == 0 ) && ( $attach == 'yes' ) ? "checked" : null ; ?> <? = ( $inseri_voice != 0 ) ? "checked" : null ; ?> />
Sim
< input name = "attach" type = "radio" value = "no" <? = ( $inseri_voice == 0 ) && ( $attach == 'no' ) ? "checked" : null ; ?> />
Nã o < / span >
< / fieldset >
< / td >
< td >
< fieldset >
< legend class = "labels" > Reproduzir Identificaç ã o:< / legend >
< span class = "style5" >
< input name = "saycid" type = "radio" value = "yes" <? = ( $inseri_voice == 0 ) && ( $saycid == 'yes' ) ? "checked" : null ; ?> <? = ( $inseri_voice != 0 ) ? "checked" : null ; ?> />
Sim
< input name = "saycid" type = "radio" value = "no" <? = ( $inseri_voice == 0 ) && ( $saycid == 'no' ) ? "checked" : null ; ?> />
Nã o
< / span >
< / fieldset >
< / td >
< td >
< fieldset >
< legend class = "labels" > Deletar apó s o envio:< / legend >
< span class = "style5" > < / span >
< span class = "style5" >
< input name = "delete" type = "radio" value = "yes" <? = ( $inseri_voice == 0 ) && ( $delete == 'yes' ) ? "checked" : null ; ?> <? = ( $inseri_voice != 0 ) ? "checked" : null ; ?> />
Sim
< input name = "delete" type = "radio" value = "no" <? = ( $inseri_voice == 0 ) && ( $delete == 'no' ) ? "checked" : null ; ?> />
Nã o
< / span >
< / fieldset >
< / td >
< / tr >
< / table >
< / td >
< / tr >
< tr class = "labels" >
< td width = "100%" >
< fieldset >
< legend class = "labels" > Redes Permitidas para Autentica<EFBFBD> <EFBFBD> o de Ramais:< / legend >
< textarea name = "extranet" cols = "80" style = "width:100%" rows = "2" class = "caixas" id = "extranet" > <? = $extranet ; ?> </ textarea >
< / fieldset >
< / td >
< / tr >
< tr class = "labels" bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td >
< 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" >
< tr >
< td colspan = "4" >
< span id = "labelRotas" class = "animate" style = "color:#669966;" > Clique para Exibir as Rotas< / span >
< / td >
< / tr >
< / table >
< / div >
< div class = "box" >
< table width = "100%" border = "0" cellspacing = "0" class = "grid" cellpadding = "2" style = "border:1px dashed #666;" >
< tr >
< td bgcolor = "#669966" class = "animate" > Rota< / td >
< td width = "60" align = "center" bgcolor = "#669966" >
< span id = "simCheck" title = "Clique para marcar todos!" >
< img src = "imgSite/bullet-link-active.gif" align = 'absmiddle' id = "imgSim" alt = "" width = "6" height = "6" / > Sim
< / span >
< / td >
< td width = "70" align = "center" bgcolor = "#669966" >
< span id = "naoCheck" title = "Clique para marcar todos!" >
< img src = "imgSite/bullet-link-active.gif" align = 'absmiddle' id = "imgNao" alt = "" width = "6" height = "6" / > Nã o
< / span >
< / td >
< td width = "120" align = "center" bgcolor = "#669966" >
< span id = "senhaCheck" title = "Clique para marcar todos!" >
< img src = "imgSite/bullet-link-active.gif" align = 'absmiddle' id = "imgSenha" alt = "" width = "6" height = "6" / > Conta/Senha
< / span >
< / td >
< td width = "85" align = "center" nowrap = "nowrap" bgcolor = "#669966" >
< span id = "agenteCheck" title = "Clique para marcar todos!" >
< img src = "imgSite/bullet-link-active.gif" align = 'absmiddle' id = "imgAgente" alt = "" width = "6" height = "6" / > Agente
< / span >
< / td >
< / tr >
<?php
if ($acao == 'edita') {
$query = "SELECT DISTINCT a.id as id_rota, a.nome as nome_rota, coalesce(b.ramal, '$nome') as ramal,
coalesce(b.tipo_acesso, 0) as tipo_acesso
FROM pbx_rotas_saida a
LEFT OUTER JOIN pbx_rotas_saida_ramais b ON b.id_rota = a.id AND b.ramal = '$nome'
WHERE a.tipo = 'E'
AND a.org_id = {$org_id}
ORDER BY 1 ";
} else {
$query = "SELECT id AS id_rota, nome as nome_rota, 0 as tipo_acesso
FROM pbx_rotas_saida WHERE tipo = 'E'
AND org_id = {$org_id}
ORDER BY id_rota";
}
$resultRota = pg_query($dbcon, $query);
while ($dadosRota = pg_fetch_array($resultRota)) {
$tipoAcesso = $dadosRota["tipo_acesso"];
$nomeRota = $dadosRota["nome_rota"];
$idRota = $dadosRota["id_rota"];
?>
< tr >
< td > <? = $nomeRota ; ?> </ td >
< td align = "center" >
< label >
< input type = "radio" name = "tipoRota[ <? = $idRota ; ?> ]" class = "tipoRotaSim" value = "1; <? = $idRota ; ?> " <? = ( $tipoAcesso == 1 ) ? "checked= \" checked \" " : null ; ?> />
< / label >
< / td >
< td align = "center" >
< label >
< input type = "radio" name = "tipoRota[ <? = $idRota ; ?> ]" class = "tipoRotaNao" value = "0; <? = $idRota ; ?> " <? = ( $tipoAcesso == 0 ) ? "checked= \" checked \" " : null ; ?> />
< / label >
< / td >
< td align = "center" >
< input type = "radio" name = "tipoRota[ <? = $idRota ; ?> ]" class = "tipoRotaSenha" value = "2; <? = $idRota ; ?> " <? = ( $tipoAcesso == 2 ) ? "checked= \" checked \" " : null ; ?> />
< / td >
< td align = "center" >
< input type = "radio" name = "tipoRota[ <? = $idRota ; ?> ]" class = "tipoRotaAgente" value = "3; <? = $idRota ; ?> " <? = ( $tipoAcesso == 3 ) ? "checked= \" checked \" " : null ; ?> />
< / td >
< / tr >
<?php } ?>
< / table >
< / div >
< / fieldset >
< / td >
< / tr >
< tr class = "labels" bordercolor = "#EAEAEA" bgcolor = "#EAEAEA" >
< td align = "left" >
< fieldset >
< legend class = "labels" >
< img src = "imgSite/expand.jpg" alt = "" width = "13" height = "13" id = "animate" class = "animateCfs" align = "absmiddle" / >
< / legend >
< div id = "cabChefeSec" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "2" style = "border:1px dashed #666" >
< tr >
< td colspan = "4" >
< span id = "labelCfs" class = "animateCfs" style = "color:#669966;" >
Clique para Exibir Configura<EFBFBD> <EFBFBD> es Chefe Secretá ria
< / span >
< / td >
< / tr >
< / table >
< / div >
< div class = "boxChefeSec" >
< table width = "0%" border = "0" align = "center" cellpadding = "2" cellspacing = "0" >
< tr >
< td rowspan = "2" valign = "top" >
< table width = "100%" border = "0" cellspacing = "0" cellpadding = "2" >
< tr >
< td > Ramal Secretá ria< / td >
< / tr >
< tr >
< td >< input type = "text" name = "ramalSecretaria" id = "ramalSecretaria" value = " <? = ( $acao == 'edita' ) ? $ramalSecretaria : null ; ?> " /></ td >
< / tr >
< tr >
< td > Exceç õ es< / td >
< / tr >
< tr >
< td >
< input type = "text" name = "ramalSecretariaExcessao" id = "ramalSecretariaExcessao" / >
< / td >
< / tr >
< tr >
< td > < / td >
< / tr >
< / table >
< / td >
< td > < / td >
< td > Exceç õ es< / td >
< / tr >
< tr >
< td >
< input type = "button" name = "btIncluirRamalExecao" id = "btIncluirRamalExecao" value = ">" onclick = "incExcecao();" / >
< br / >
< input type = "button" name = "btExcluirExcessao" id = "btExcluirExcessao" value = "<" onclick = "remExcecao();" / >
< br / >
< / td >
< td align = "center" valign = "top" >
< select name = "ramalSecExcecoesInc[]" size = "6" multiple = "multiple" id = "ramalSecExcecoesInc" style = "width:170px;" >
<?php
$query = "SELECT excecao FROM pbx_chefe_secretaria WHERE org_id = {$org_id} AND numero = '$nome'";
$result = pg_query($dbcon, $query);
$opt = "\n";
while ($dados = pg_fetch_row($result)) {
$excecao = $dados[0];
$opt .= "< option value = \"$excecao\" > $excecao< / option > \n";
}
echo $opt;
?>
< / select >
< / td >
< / tr >
< / table >
< / 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" onclick = "fecha_popup();" value = "Fechar" id = "btfechar" >
< input name = "Submit" type = "submit" class = "labels" value = "Salvar" onclick = "marca_todos();" >
< / span >
< / div >
< / td >
< / tr >
< / table >
< / form >
< script type = "text/javascript" >
$(document).ready(function() {
window.resizeTo($('#form1').width() + 100, $('#form1').height() - 550);
$('#btfechar').click(function() {
var $ = window.parent.$;
var jQuery = window.parent.jQuery;
$.unblockUI({
fadeOut: 200
});
});
});
if (TodosMarcados()) {
document.getElementById('marcaTodos').checked = 'checked';
}
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() {
$('.tipoRotaSim').attr("checked", true);
LimpaImagem();
$('#imgSim').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('#naoCheck').click(function() {
$('.tipoRotaNao').attr("checked", true);
LimpaImagem();
$('#imgNao').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('#senhaCheck').click(function() {
$('.tipoRotaSenha').attr("checked", true);
LimpaImagem();
$('#imgSenha').attr("src", "imgSite/bullet-link-hover.gif");
});
});
$(document).ready(function() {
$('#agenteCheck').click(function() {
$('.tipoRotaAgente').attr("checked", true);
LimpaImagem();
$('#imgAgente').attr("src", "imgSite/bullet-link-hover.gif");
});
})
$(document).ready(function() {
var $box = $('.box');
$box.toggle();
});
$(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 Rotas");
$('#cabRota').show('slow');
} else {
$('#cabRota').hide();
$('#animate').attr("src", "imgSite/collapse.jpg");
$('#labelRotas').text("Rotas");
$box.slideToggle('slow');
}
});
});
$(document).ready(function() {
var $boxChf = $('.boxChefeSec');
$boxChf.toggle();
});
$(document).ready(function() {
$('.animateCfs').click(function() {
var $boxChf = $('.boxChefeSec');
if ($boxChf.is(':visible')) {
$boxChf.slideToggle('slow');
$('#animateCfs').attr("src", "imgSite/expand.jpg");
$('#labelCfs').text("Clique para Exibir as Configura<EFBFBD> <EFBFBD> es Chefe Secret<EFBFBD> ria");
$('#cabChefeSec').show('slow');
} else {
$('#cabChefeSec').hide();
$('#animateCfs').attr("src", "imgSite/collapse.jpg");
$('#labelCfs').text("Clique para Exibir as Configura<EFBFBD> <EFBFBD> es Chefe Secret<EFBFBD> ria");
$boxChf.slideToggle('slow');
}
});
});
< / script >
< / body >
< / html >
<?php
function GetDefaultRedesPermitidas()
{
global $dbcon;
$query = "select extranet from pbx_sip_general";
$result = pg_query($dbcon, $query);
if (!$result || !pg_num_rows($result)) {
return '';
}
$row = pg_fetch_array($result);
return $row['extranet'];
}