|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
require('funcoesFormulario.php');
|
|
|
|
|
$templateName = 'workflow/workflowEmailsDacs.htm';
|
|
|
|
|
//define tipo de formulario
|
|
|
|
|
$tpLayout = 1;
|
|
|
|
|
$upload = 0;
|
|
|
|
|
|
|
|
|
|
$fieldsForm = array();
|
|
|
|
|
$fieldsForm = IsPostBack() ? $_POST : $_GET;
|
|
|
|
|
|
|
|
|
|
$fieldsForm['erro'] = "";
|
|
|
|
|
/*
|
|
|
|
|
* Id do email relacionado
|
|
|
|
|
*/
|
|
|
|
|
$wkf_email_id = $fieldsForm['wkf_email_id'];
|
|
|
|
|
|
|
|
|
|
if (isset($fieldsForm['btIncDac'])) {
|
|
|
|
|
if (empty($fieldsForm['listaDacs'])) {
|
|
|
|
|
$fieldsForm['erro'] = fmtMsg('Selecione um Dac!');
|
|
|
|
|
} else {
|
|
|
|
|
/* Inicio da transacao */
|
|
|
|
|
pg_query($dbcon, 'begin');
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Insere dacs relacionado ao email conforme selecionado
|
|
|
|
|
*/
|
|
|
|
|
foreach ($fieldsForm['listaDacs'] as $idDac) {
|
|
|
|
|
$query = "insert into pbx_workflow_emails_dacs(wkf_email_id, nome_dac) values(%s, '%s')";
|
|
|
|
|
$query = sprintf($query, $wkf_email_id, $idDac);
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
if (!$result)
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($result) {
|
|
|
|
|
pg_query($dbcon, 'commit');
|
|
|
|
|
$jsStartup[] = "window.opener.ResetForm();";
|
|
|
|
|
} else {
|
|
|
|
|
pg_query($dbcon, 'rollback');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$fieldsForm['erro'] = $result ? fmtMsg('Dac incluido com sucesso!') : fmtErro('O Dac n<EFBFBD>o pode ser incluido!', pg_last_error($dbcon));
|
|
|
|
|
}
|
|
|
|
|
} else if (isset($fieldsForm['btRmDac'])) {
|
|
|
|
|
if (empty($fieldsForm['listaDacsInc'])) {
|
|
|
|
|
$fieldsForm['erro'] = fmtMsg('Selecione um Dac!');
|
|
|
|
|
} else {
|
|
|
|
|
pg_query($dbcon, 'begin');
|
|
|
|
|
|
|
|
|
|
foreach ($fieldsForm['listaDacsInc'] as $idDac) {
|
|
|
|
|
$query = "delete from pbx_workflow_emails_dacs where nome_dac = '%s' and wkf_email_id = '%s' ";
|
|
|
|
|
$query = sprintf($query, $idDac, $wkf_email_id);
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
|
|
|
|
|
if (!$result)
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($result) {
|
|
|
|
|
pg_query($dbcon, 'commit');
|
|
|
|
|
$jsStartup[] = "window.opener.ResetForm();";
|
|
|
|
|
} else {
|
|
|
|
|
pg_query($dbcon, 'rollback');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$fieldsForm['erro'] = $result ? fmtMsg('Dac removido com sucesso!') : fmtErro('O Dac n<EFBFBD>o pode ser removido!', pg_last_error($dbcon));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$fieldsForm['listaDacs'] = GetDacWorkflow($dbcon, 'listaDacs', $wkf_email_id);
|
|
|
|
|
$fieldsForm['listaDacsInc'] = GetDacWorkflow($dbcon, 'listaDacsInc', $wkf_email_id, true);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Atualiza templates templates
|
|
|
|
|
*/
|
|
|
|
|
foreach ($fieldsForm as $key => $value) {
|
|
|
|
|
$smarty->assign($key, $value);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
GetTemplate($smarty, $templateName);
|
|
|
|
|
|
|
|
|
|
function GetDacWorkflow($dbcon, $nomeCombo, $wkf_email_id, $inc = false) {
|
|
|
|
|
|
|
|
|
|
$dacs = "<select name=\"$nomeCombo" . "[]" . "\" style=\"width:280px\" id=\"$nomeCombo\" size=\"8\" multiple=\"multiple\">";
|
|
|
|
|
|
|
|
|
|
$query = "select id, nome from pbx_dacs a";
|
|
|
|
|
/*
|
|
|
|
|
* A variavel $inc apenas diz que vamos recuperar apenas os dacs incluidos para o email selecionado
|
|
|
|
|
*/
|
|
|
|
|
if ($inc) {
|
|
|
|
|
$query .= " where 1=1 and ";
|
|
|
|
|
} else {
|
|
|
|
|
$query .= " where 1=1 and not ";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$query .= " exists(select '' from pbx_workflow_emails_dacs where nome_dac = a.nome and wkf_email_id = '$wkf_email_id' )";
|
|
|
|
|
|
|
|
|
|
$query .= " and a.status = 'A' order by 2 \n";
|
|
|
|
|
|
|
|
|
|
$result = pg_query($dbcon, $query);
|
|
|
|
|
$sel = "";
|
|
|
|
|
while ($dados = pg_fetch_row($result)) {
|
|
|
|
|
//if($codSel == $dados[0]){$sel = "selected"; $i = 1;} else {$sel = "";}
|
|
|
|
|
$dacs .= "<option value=\"$dados[1]\" $sel>$dados[1]</option>";
|
|
|
|
|
}
|
|
|
|
|
$dacs .= "</select>";
|
|
|
|
|
return $dacs;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
?>
|