diff --git a/audio.php b/audio.php
index 3c242e54..6f0f41de 100644
--- a/audio.php
+++ b/audio.php
@@ -267,6 +267,8 @@
$y = 1;
}
$dacs .= ") ";
+ } elseif(IsAdmin()) {
+ $dac = "";
} else {
$dac = "AND c.id = $dac ";
}
@@ -319,7 +321,7 @@
LEFT JOIN pbx_classifica_reg f ON f.id_bilhetes = a.uniqueid and f.org_id = a.org_id
LEFT JOIN pbx_classifica_item g ON g.clas_id = f.clas_id and g.clit_id = f.clit_id and g.org_id = f.org_id
LEFT JOIN pbx_classifica_atendimento h ON h.clas_id = f.clas_id and h.org_id = f.org_id
- WHERE a.org_id = {$org_id} AND a.billsec > 3 \n
+ WHERE a.org_id = {$org_id} AND a.billsec > 3
AND exists(SELECT '' FROM pbx_fila_audios x, pbx_grupo_usuario y WHERE x.org_id = {$org_id} AND y.gp_id = x.gp_id AND y.user_id = '{$idUser}' and x.id = c.id)\n";
if ($isProto) {
$query .= "AND (e.protocolo = $proto or e.protoparceiro = $proto) ";
diff --git a/contacteFunc.php b/contacteFunc.php
index 02dd96a5..58c68ba7 100644
--- a/contacteFunc.php
+++ b/contacteFunc.php
@@ -2362,7 +2362,7 @@ function IncluiAgenteFile($dbcon)
{
$org_id = $_SESSION['SSEmpresaPadrao'];
- $query = "select matricula, apelido from pbx_usuarios pu inner join pbx_organizacao_usuarios pou ON pou.id_usuarios = pu.id and pou.id_organizacao = $org_id where delete_ = 0";
+ $query = "select matricula, apelido from pbx_usuarios pu inner join pbx_organizacao_usuarios pou ON pou.id_usuario = pu.id and pou.id_organizacao = $org_id where delete_ = 0";
$result = pg_query($dbcon, $query);
if (!$result) {
diff --git a/include/util/funcoesApl.php b/include/util/funcoesApl.php
index d956ec94..1577bbe2 100755
--- a/include/util/funcoesApl.php
+++ b/include/util/funcoesApl.php
@@ -598,7 +598,8 @@ function IsAdmin() {
from pbx_usuarios p_u
where
matricula = '$matricula'
- and id = (select id_usuario from pbx_organizacao_usuarios pou WHERE pou.id_usuario = p_u.id AND pou.id_organizacao = 1)";
+ and p_u.id = (select id_usuario from pbx_organizacao_usuarios pou WHERE pou.id_usuario = p_u.id AND pou.id_organizacao = 1)
+ and user_system = 1";
$isadmin = pg_query($GLOBALS["dbcon"], $query);
/* Não foi possível obter se o usuário é admin
diff --git a/seguranca/usuarioCad.php b/seguranca/usuarioCad.php
index 8b09a7c9..8753974d 100644
--- a/seguranca/usuarioCad.php
+++ b/seguranca/usuarioCad.php
@@ -68,16 +68,19 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$acaoUser = $_POST["btGravar"];
$penalidade = $_POST["penalidade"] ? soNumero($_POST["penalidade"]) : "0";
$dacPadraoSel = $_POST["listaDacs"] ? $_POST["listaDacs"] : "0";
- //$empPadrao = $_POST["empPadrao"] ? $_POST["empPadrao"] : 'null';
$dacPadrao = GetDacs($dbcon, $dacPadraoSel, "", 0, 1);
$userExpiraSenha = $_POST["userExpiraSenha"] ? $_POST["userExpiraSenha"] : 0;
+ $userAgente = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'agente') ? 'TRUE' : 'FALSE';
+ $userSuper = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'supervisor') ? 'TRUE' : 'FALSE';
if (empty($msg) && ($_POST["btGravar"] == 'Incluir')) {
$result = pg_query($dbcon, "begin");
if ($result) {
$userMatricula = GetMatriculaAgente($dbcon);
- $query = "INSERT INTO pbx_usuarios(nome, apelido, matricula, flag, \"admin\", senha, supervisor, agente, email, status, penalidade, dac_padrao, check_vl, senha_dias_expira, org_padrao)
- VALUES(%s, lower(%s), %s, %s, %s, md5(%s), %s, %s, %s, %s, %s, %s, md5(lower(%s)), %s, %s) RETURNING id;";
+ $query = "INSERT INTO pbx_usuarios(
+ nome, apelido, matricula, flag, \"admin\", senha, supervisor, agente, email, status, penalidade, dac_padrao, check_vl, senha_dias_expira
+ ) VALUES (
+ %s, lower(%s), %s, %s, %s, md5(%s), %s, %s, %s, %s, %s, %s, md5(lower(%s)), %s) RETURNING id;";
$query = sprintf(
$query,
@@ -85,17 +88,16 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
QuotedStr($userLogin),
QuotedStr($userMatricula),
1,
- $userAdm == "checked" ? 'true' : 'false',
+ $userAdm == "checked" ? 'TRUE' : 'FALSE',
QuotedStr($userPassword),
- $userSuper == "checked" ? 'true' : 'false',
- $userAgente == "checked" ? 'true' : 'false',
+ $userSuper,
+ $userAgente,
QuotedStr($userEmail),
- $userStatus == "checked" ? 'true' : 'false',
+ $userStatus == "checked" ? 'TRUE' : 'FALSE',
$penalidade,
QuotedStr($dacPadraoSel),
QuotedStr($userEmail),
$userExpiraSenha,
- GetOrganizacao()
);
$result = pg_query($dbcon, $query);
@@ -105,12 +107,9 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$ret = IncluiAgenteFile($dbcon);
$result = strtoupper($ret) == "OK";
}
-
$query = sprintf("INSERT INTO pbx_organizacao_usuarios (id_usuario, id_organizacao, updated_at) VALUES (%s,%s,'%s')", $user['id'], $org_id, date('Y-m-d H:i:s'));
$result1 = $result && pg_query($dbcon, $query);
- echo pg_last_error() . "
";
-
/*
* Inclui usuario como grupo.
*/
@@ -118,7 +117,6 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
SELECT apelido, 1, id, id, $org_id FROM pbx_usuarios WHERE apelido = %s", QuotedStr($userLogin));
$result2 = $result && pg_query($dbcon, $query);
- echo pg_last_error() . "
";
/*
* Insere o usuario no mesmo grupo criado com seu login.
*/
@@ -126,7 +124,6 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
SELECT user_id, gp_id, $org_id FROM pbx_grupo WHERE gp_nome = %s", QuotedStr($userLogin));
$result3 = $result && pg_query($dbcon, $query);
- echo pg_last_error() . "
";
/*
* Se o dac for selecionado no cadastro do usuario, o mesmo sera atribuido para o proprio usuario.
*/
@@ -136,7 +133,6 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$result4 = $result && pg_query($dbcon, $query);
}
- echo pg_last_error() . "
";
/*
* Finaliza a transacao.
*/
@@ -168,18 +164,21 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$userMatricula = $_POST["userMatriculaH"];
$userExpiraSenha = $_POST["userExpiraSenha"];
$updSenha = DEFAULT_MASC_PASSWORD !== $userPassword;
+ $userAgente = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'agente') ? 'TRUE' : 'FALSE';
+ $userSuper = (isset($_POST["tipoUsuario"]) && $_POST["tipoUsuario"] == 'supervisor') ? 'TRUE' : 'FALSE';
$result = pg_query($dbcon, "begin");
$query = "UPDATE pbx_usuarios
- SET nome = %s,
- %s
+ SET nome = %s,
+ %s
email = %s,
status = %s,
penalidade = %s,
dac_padrao = %s,
senha_dias_expira = %s,
- org_padrao = %s
- WHERE id = %s ";
+ supervisor = %s,
+ agente = %s
+ WHERE id = %s; ";
if ($updSenha) {
$updSenha = sprintf(" senha = md5(%s), ", QuotedStr($userPassword));
@@ -189,7 +188,7 @@ if (isset($_GET["idUser"]) && $_GET["idUser"] == 0) {
$updSenha = '';
}
- $query = sprintf($query, QuotedStr($userNome), $updSenha, QuotedStr($userEmail), $userStatus == "checked" ? 'true' : 'false', $penalidade, $dacPadraoSel, $userExpiraSenha, $empPadrao, $idUser);
+ $query = sprintf($query, QuotedStr($userNome), $updSenha, QuotedStr($userEmail), $userStatus == "checked" ? 'true' : 'false', $penalidade, $dacPadraoSel, $userExpiraSenha, $userSuper,$userAgente,$idUser);
$result = pg_query($dbcon, $query);
/*
diff --git a/templates/seguranca/usuario.tpl b/templates/seguranca/usuario.tpl
index b6342ca0..0c1e4369 100644
--- a/templates/seguranca/usuario.tpl
+++ b/templates/seguranca/usuario.tpl
@@ -36,12 +36,6 @@