/* contém o e-mail padrão quando se envia somente um e-mail por usuário */
var workflowMonitorEmailUser = 'Atenção: esta mensagem foi gerada automaticamente pelo sistema e não deve ser respondida.
\n\
\n\
Caro usuário, \n\
As seguintes atividades de workflow do processo %processo% estão aguardando execução em sua caixa de tarefas pendentes. Favor providenciar o andamento:
\n\
%inicio_loop%\n\
Instância %atual_instancia% de %quantidade_instancia% \n\
Atividade: %atividade% \n\
Aguardando por: %tempo_atividade% (desde %inicio_atividade%) \n\
Identificador: %identificador% \n\
Link para execução: %link% \n\
\n\
%fim_loop%\n\
\n\
Atenciosamente, \n\
Workflow do Expresso';
/* contém o e-mail padrão quando se envia um e-mail por instância */
var workflowMonitorEmailInstance = 'Atenção: esta mensagem foi gerada automaticamente pelo sistema e não deve ser respondida.
\n\
\n\
Caro usuário, \n\
Existe uma atividades de workflow do processo %processo% que está aguardando execução em sua caixa de tarefas pendentes. Favor providenciar o andamento:
\n\
\n\
Atividade: %atividade% \n\
Aguardando por: %tempo_atividade% (desde %inicio_atividade%) \n\
Identificador: %identificador% \n\
Link para execução: %link% \n\
\n\
\n\
Atenciosamente, \n\
Workflow do Expresso';
/**
* Constrói a interface para envio de e-mails (dentro de um elemento LightBox)
* @return void
*/
function sendMailConfig()
{
var content = '';
content += '
';
content += '
Enviar E-mail
';
content += ' ';
content += '
';
content += '';
$('lbContent').innerHTML = content;
// $('emailBody').innerHTML = workflowMonitorEmailUser;
}
/**
* Gera uma string contento os parâmetros para as chamadas Ajax do envio de e-mails
* @return string A string de parâmetros
*/
function commonParams()
{
var output = 'pid=' + workflowMonitorInstancesParams['pid'];
output += '&p_page=0';
if (workflowMonitorInstancesParams['filters'])
output += '&filters=' + workflowMonitorInstancesParams['filters'];
return output;
}
/**
* Envia os e-mails para as instâncias selecionadas
* @return void
*/
function sendMail()
{
function resultSendMail(data)
{
if (data['error'])
{
alert(data['error']);
return;
}
var content = '';
content += '
Resultado de Envio
';
content += ' Foram enviados ' + data + ' e-mails alertando sobre as instâncias.'
content += '
';
$('lbContent').innerHTML = content;
}
if (!confirm('Este e-mail será enviado para todos os usuários listados na tela anterior.\nDeseja continuar?'))
return;
var params = commonParams();
params += '&emailType=' + (($F('onePerUser') == 1) ? 'user' : 'instance');
params += '&emailBody=' + escape($F('emailBody'));
params += '&emailSubject=' + escape($F('emailSubject'));
cExecute('$this.bo_monitors.sendMail', resultSendMail, params);
}
/**
* Gera um preview dos e-mails que serão enviados
* @return void
*/
function previewEmail()
{
function resultPreviewEmail(data)
{
if (data['error'])
{
alert(data['error']);
return;
}
var content = '
Preview
';
content += '
Número de e-mails que serão enviados: ' + data['emailCount'] + '
';
content += '
' + data['emailBody'] + '
';
content += ' ';
$('emailPreview').innerHTML = content;
$('emailCompose').hide();
$('emailPreview').show();
}
var params = commonParams();
params += '&emailType=' + (($F('onePerUser') == 1) ? 'user' : 'instance');
params += '&emailBody=' + escape($F('emailBody'));
params += '&emailSubject=' + escape($F('emailSubject'));
cExecute('$this.bo_monitors.previewEmail', resultPreviewEmail, params);
}
/**
* Remove as instâncias finalizadas (completadas ou abortadas) que foram selecionadas
* @return void
*/
function removeCompletedInstances()
{
function resultRemoveCompletedInstances(data)
{
if (data['error'])
{
alert(data['error']);
return;
}
/* define a mensagem que será exibida */
var message = '';
if (data < 1)
message = 'Nenhuma instância foi removida';
else
if (data == 1)
message = 'Uma instância foi removida';
else
message = 'Foram removidas ' + data + ' instâncias';
write_msg(message);
/* recarrega a lista de instâncias */
filterInstances(true);
}
if (!confirm('Todas as instâncias listadas nesta tela (inclusive as paginadas) serão removidas.\nDeseja continuar?'))
return;
var params = commonParams();
cExecute('$this.bo_monitors.removeCompletedInstances', resultRemoveCompletedInstances, params);
}