<?php
require_once('funcoesFormulario.php');
$cssBlock = '< style type = "text/css" > img { vertical-align : bottom ; border : 0 } < / style > ';
$txtConsulta = '';
$templateName = 'discador/conCampanha.htm';
$fieldImg = array(0 => 'imgSite/campanha16cancelada.png', 1 => 'imgSite/campanha16on.png', 2 => 'imgSite/campanha16supensa.png', 3 => 'imgSite/campanha16concluida.png');
$colspan = 10;
$org_id = GetOrganizacao();
$tipoCancelada = isset($_REQUEST["tipoCancelada"]) ? $_REQUEST["tipoCancelada"] : null;
$tipoAtiva = isset($_REQUEST["tipoAtiva"]) ? $_REQUEST["tipoAtiva"] : null;
$tipoSuspensa = isset($_REQUEST["tipoSuspensa"]) ? $_REQUEST["tipoSuspensa"] : null;
$tipoConcluida = isset($_REQUEST["tipoConcluida"]) ? $_REQUEST["tipoConcluida"] : null;
$paramPesquisa = isset($_REQUEST['paramPesquisa']) ? $_REQUEST['paramPesquisa'] : '';
$filtro = isset($_REQUEST["paramPesquisa"]) ? trim($_REQUEST["paramPesquisa"]) : '';
$filtroNovo = !isset($_REQUEST["pgn"]) ? '' : sprintf("& paramPesquisa%s& pgn=%s& bloco=%s& pg=%s", $_REQUEST["paramPesquisa"], $_REQUEST["pgn"], $_REQUEST["bloco"], $_REQUEST["pg"]);
$recontaPag = ($acao == 'inseri') || (GetFormAcao() == FORM_DELETE) || isset($_POST['pesquisa']);
$dataIni = isset($_REQUEST["dataIni"]) ? $_REQUEST["dataIni"] : '';
$dataFim = isset($_REQUEST["dataFim"]) ? $_REQUEST["dataFim"] : '';
$idUser = GetIdUser();
$compl = '';
if (isset($_REQUEST['paramPesquisa']) & & $_REQUEST['paramPesquisa']) {
$compl = PreparaLike($filtro, true);
$compl = sprintf("AND (a.cmp_descricao ILIKE %s OR d.nome ILIKE %s OR a.id_dac::TEXT ILIKE %s )", $compl, $compl, $compl);
}
$query = "SELECT a.cmp_id, a.cmp_descricao, b.list_id, a.id_dac, d.nome AS nome_dac, a.cmp_status,
a.data_registro, COUNT(c.cont_id) AS quantidade_contatos,
SUM(c.cont_discado) AS quantidade_discados, SUM(case when(c.cont_discado = 1)then 0 else 1 end) AS quantidade_pendente
FROM pbx_campanha a
INNER JOIN pbx_dacs d ON d.id = a.id_dac
INNER JOIN pbx_campanha_lista b ON b.cmp_id = a.cmp_id AND b.list_id = (select max(list_id) from pbx_campanha_lista where cmp_id = a.cmp_id)
INNER JOIN pbx_campanha_contato c ON c.list_id = b.list_id
WHERE a.org_id = $org_id";
$tipoCancelada ? $status .= '0,' : $status .= "null,";
$tipoAtiva ? $status .= '1,' : $status .= "null,";
$tipoSuspensa ? $status .= '2,' : $status .= "null,";
$tipoConcluida ? $status .= '3' : $status .= "null";
if (!$tipoCancelada & & !$tipoAtiva & & !$tipoSuspensa & & !$tipoConcluida) {
$query .= " AND a.cmp_status IN('1', '2', '3') $compl";
} else {
$query .= " AND a.cmp_status IN($status) $compl";
}
$query .= !IsAdmin() ? " AND exists(SELECT '' FROM pbx_fila_grupos f, pbx_grupo_usuario u where u.gp_id = f.gp_id and f.id = a.id_dac and u.user_id = '{$idUser}')" : '';
if ($dataIni & & $dataFim) {
$query .= sprintf("AND data_registro::DATE >= '%s' ", FormatDtMssql($dataIni));
$query .= sprintf("AND data_registro::DATE < = '%s' ", FormatDtMssql($dataFim));
}
$query .= "GROUP BY a.cmp_id, a.cmp_descricao, b.list_id, a.id_dac, d.nome, a.cmp_status, a.data_registro
ORDER BY a.cmp_id DESC";
$linhas = '';
$count = 0;
$params = "¶mPesquisa=$filtro&dataIni=$dataIni&dataFim=$dataFim";
$links = PaginaDados($idProg, $query, $params, $regPagina, $offSet, $pagMostra, true);
$query .= " LIMIT $regPagina OFFSET $offSet";
//if(IsAdmin()){echo $query; exit;}
$result = pg_query($dbcon, $query);
if (pg_fetch_all($result)) {
while ($dados = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$id = $dados["cmp_id"];
$desc = $dados["cmp_descricao"];
$idDac = $dados["id_dac"];
$nomeDac = $dados["nome_dac"];
$status = $dados["cmp_status"];
$data = FormataDataDbDataDisplay($dados["data_registro"]);
$qtContatos = $dados["quantidade_contatos"];
$qtDiscado = $dados["quantidade_discados"];
$qtPendente = $dados["quantidade_pendente"];
$imgStatus = $fieldImg[$status];
$imgStatus = "< img src = \"$imgStatus\" width = \"16\" height = \"16\" border = \"0\" title = \"Modifica o status da campanha ! \ " > ";
$imgStatus = "< a href = \"javaScript:NovaJanela('index.php?idProg=116&formAction=0&cmp_id=$id', ' jnArqCampanha ' , ' 400 ' , ' 150 ' , ' resizable = NO,scrollbars=NO');\" > $imgStatus< / a > ";
$imgEdit = "< img src = \"imgSite/editaUser.png\" width = \"16\" height = \"16\" border = \"0\" title = \"Insere listas a campanhas existentes ! \ " > ";
$imgEdit = "< a href = \"javaScript:NovaJanela('index.php?idProg=113&formAction=0&cmp_id=$id', ' jnArqCampanha ' , ' 1000 ' , ' 500 ' , ' resizable = NO,scrollbars=NO');\" > $imgEdit< / a > ";
$descMostra = "< a style = \"color: # 000 ; \ " href = \"javaScript:NovaJanela('index.php?idProg=113&formAction=0&cmp_id=$id', ' jnArqCampanha ' , ' 1000 ' , ' 500 ' , ' resizable = NO,scrollbars=NO');\" > $desc< / a > ";
$imgUser = "< img src = \"imgSite/clienteParc16.gif\" width = \"16\" height = \"16\" border = \"0\" title = \"Configura Usu <EFBFBD> rios da Campanha ! \ " > ";
$imgUser = "< a href = \"javaScript:NovaJanela('index.php?idProg=115&formAction=0&cmp_id=$id', ' jnUsrCampanha ' , ' 610 ' , ' 275 ' , ' resizable = NO,scrollbars=NO');\" > $imgUser< / a > ";
$linhas .= "< tr >
< td align = \"center\" > $id< / td >
< td align = \"center\" > $data< / td >
< td > $descMostra< / td >
< td > $idDac-$nomeDac< / td >
< td align = \"right\" > $qtContatos< / td >
< td align = \"right\" > $qtDiscado< / td >
< td align = \"right\" > $qtPendente< / td >
< td width = \"20\" align = \"center\" style = \"border-right: 0 \ " > $imgStatus< / td >
< td width = \"20\" align = \"center\" style = \"border-left: 0 ; border-right: 0 \ " > $imgEdit< / td >
< td width = \"20\" align = \"center\" style = \"border-left: 0 \ " > $imgUser< / td >
< / tr > ";
$count++;
}
} else {
$linhas .= "< tr > < td align = \"center\" colspan = \"8\" > < b > Nenhum registro encontrado!< / b > < / td > < t / r > ";
}
$imgNovo = GetLinkForm('& cmp_id=0' . $filtroNovo, 113, 'arqCampanha', "Nova Campanha", 700, 500, 'images/novo.gif', ' Nova Campanha');
$smarty->assign('linhas', $linhas);
$smarty->assign("paramPesquisa", $paramPesquisa);
$smarty->assign("imgNovo", $imgNovo);
$smarty->assign("links", $links);
$smarty->assign("pagMostra", $pagMostra);
$smarty->assign("totalReg", $totalReg);
$smarty->assign("pgn", $_REQUEST["pgn"]);
$smarty->assign("bloco", $_REQUEST["bloco"]);
$smarty->assign("pg", $_REQUEST["pg"]);
$smarty->assign("dataIni", $dataIni);
$smarty->assign("dataFim", $dataFim);
$smarty->assign("cancelada", $tipoCancelada ? "checked" : '');
$smarty->assign("ativa", $tipoAtiva ? "checked" : '');
$smarty->assign("concluida", $tipoConcluida ? "checked" : '');
$smarty->assign("suspensa", $tipoSuspensa ? "checked" : '');
GetTemplate($smarty, $templateName);