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.

123 lines
4.1 KiB

<?php
$tpLayout = 1;
$oper_spid = $_REQUEST["oper_spid"];
$oper_nome = $_REQUEST["oper_nome"];
if (isset($_POST["btIncOperadora"])) {
$operadoras = $_POST["operadoras"];
pg_query($dbcon, 'begin');
foreach ($operadoras as $oper_spid_rel) {
$query = "insert into pbx_operadora_rel(oper_spid, oper_spid_rel )
select '$oper_spid', '$oper_spid_rel'
where not exists(select '' from pbx_operadora_rel where oper_spid = '$oper_spid' and oper_spid_rel = '$oper_spid_rel')";
$result = pg_query($dbcon, $query);
if (!$result)
break;
}
if ($result) {
pg_query($dbcon, 'commit');
$msg = "<span style=\"color: #0000FF\">Opera<EFBFBD><EFBFBD>o realizada com sucesso!</span>";
} else {
pg_query($dbcon, 'rollback');
$erroDb = pg_last_error($dbcon);
$msg = "<span style=\"color: #FF0000\">A opera<EFBFBD><EFBFBD>o n<EFBFBD>o pode realizada!" . ($erroDb ? (" Erro: " . $erroDb) : "") . "</span>";
}
} else if (isset($_POST["btRmOper"])) {
$operadoras = $_POST["operadorasRel"];
pg_query($dbcon, 'begin');
foreach ($operadoras as $oper_spid_rel) {
$query = "delete from pbx_operadora_rel where oper_spid = '$oper_spid' and oper_spid_rel = '$oper_spid_rel' ";
$result = pg_query($dbcon, $query);
if (!$result)
break;
}
if ($result) {
pg_query($dbcon, 'commit');
$msg = "<span style=\"color: #0000FF\">Opera<EFBFBD><EFBFBD>o realizada com sucesso!</span>";
} else {
pg_query($dbcon, 'rollback');
$erroDb = pg_last_error($dbcon);
$msg = "<span style=\"color: #FF0000\">A opera<EFBFBD><EFBFBD>o n<EFBFBD>o pode realizada!" . ($erroDb ? (" Erro: " . $erroDb) : "") . "</span>";
}
}
$operadoras = GetOperDisp($dbcon, $oper_spid);
$operadorasRel = GetOperInc($dbcon, $oper_spid);
GetDac($dbcon, $codDac);
$smarty->assign("oper_spid", $oper_spid);
$smarty->assign("oper_nome", $oper_nome);
$smarty->assign("operadoras", $operadoras);
$smarty->assign("operadorasRel", $operadorasRel);
$smarty->assign("erro", $msg);
GetTemplate($smarty, 'cadastros/tarifacao/tarifacaoOperadorasRel.htm');
function GetOperDisp($dbcon, $oper_spid) {
/*
* Carrega lista de operadoras disponivel
* para ser inserdo entre as tags <select></select>
*/
$isAdm = (IsAdmin() && !$matricula);
$idUser = !$matricula ? GetIdUser() : GetIdUserFromMatricula($dbcon, $matricula);
$matricula = GetMatricula();
$query = "select oper_spid, oper_nome
from pbx_operadoras d
where oper_spid <> '$oper_spid'
and oper_spid not in(select oper_spid_rel from pbx_operadora_rel)
order by 2";
// echo $query;
$result = pg_query($dbcon, $query);
$operadoras = "<select name=\"operadoras[]\" id=\"operadoras\" size=\"6\" multiple=\"multiple\" style=\"width:250px;\" >";
while ($dados = pg_fetch_row($result)) {
$operadoras .= "<option value=\"$dados[0]\" $sel>$dados[1]</option>";
$cont++;
}
$operadoras .= "</select>";
return $operadoras;
}
function GetOperInc($dbcon, $oper_spid) {
/*
* Carrega lista de operadoras disponivel
* para ser inserdo entre as tags <select></select>
*/
$isAdm = (IsAdmin() && !$matricula);
$matricula = GetMatricula();
$query = "select oper_spid, oper_nome
from pbx_operadoras d
where oper_spid <> '$oper_spid'
and oper_spid in(select oper_spid_rel from pbx_operadora_rel where oper_spid = $oper_spid)
order by 2";
$result = pg_query($dbcon, $query);
$operadoras = "<select name=\"operadorasRel[]\" id=\"dacsInc\" size=\"6\" multiple=\"multiple\" style=\"width:250px;\" >";
while ($dados = pg_fetch_row($result)) {
$operadoras .= "<option value=\"$dados[0]\" $sel>$dados[1]</option>";
$cont++;
}
$operadoras .= "</select>";
return $operadoras;
}
?>