Here is my full code
globals.stopBroadcast = 0;
var frmObj = globals.mod_functions_layout("getMainFrmObj", globals.currentRoom);
var frmObjHist = forms.broadcastParent_parentListLink;
frmObjHist.controller.find();
frmObjHist.broadcast_id = frmObj.broadcast_id;
frmObjHist.send_tag = 1;
frmObjHist.controller.search();
var maxRecords = databaseManager.getFoundSetCount(frmObjHist.foundset);
if (frmObj.email_type == "html") {
var openingBrace = "<<";
var closingBrace = ">>";
}
else {
var openingBrace = "<<";
var closingBrace = ">>";
}
var mediaFileList = globals.local_functions_admin("createBroadcastAttachment");
var msg = forms.sysAdmin.elements.bean_1020;
var smtp = forms.sysAdmin.elements.bean_844;
globals.local_functions_admin('setSMTPObj', smtp);
smtp.openConnection();
var successCount = 0;
var failedCount = 0;
globals.mod_functions_utilities("setProgressionPresets", forms.broadcastSend, 'progress', maxRecords);
for (var i=1; i <= maxRecords; i++) { //******* FOR LOOP 1
var record = frmObjHist.foundset.getRecord(i);
if (globals.stopBroadcast == 1) {
break;
}
var emailBody = frmObj.body;
var relName = "parent_id__broadcast_history_to_parent";
var toEmail = record[relName].email;
var firstName = record[relName].first_name;
var lastName = record[relName].last_name;
var knownAsName = record[relName].known_as_name;
var userName = record[relName].user_name;
var password = record[relName].user_password;
emailBody = utils.stringReplace(emailBody, openingBrace + 'firstname' + closingBrace, firstName + '');
emailBody = utils.stringReplace(emailBody, openingBrace + 'lastname' + closingBrace, lastName + '');
emailBody = utils.stringReplace(emailBody, openingBrace + 'knownasname' + closingBrace, knownAsName + '');
emailBody = utils.stringReplace(emailBody, openingBrace + 'username' + closingBrace, userName + '');
emailBody = utils.stringReplace(emailBody, openingBrace + 'password' + closingBrace, password + '');
statusDisplay = "<html>sending email to <font color=red>" + toEmail + "</font>
" +
"sending email <font color=red>" + i + " of " + maxRecords + "</font>
" +
"</html>";
elements.statusDisplay.text = statusDisplay;
globals.mod_functions_utilities("increaseProgression", forms.broadcastSend, 'progress', i, "");
elements.statusDisplay.text = statusDisplay;
globals.mod_functions_utilities("increaseProgression", forms.broadcastSend, 'progress', i, "");
fromName = frmObj.from_name;
fromEmail = utils.stringTrim(frmObj.from_email);
var msgArray = new Array(fromEmail, toEmail, "", "", frmObj.subject, emailBody, frmObj.email_type, mediaFileList);
globals.local_functions_admin("setEmailMessageObj", msg, msgArray);
smtp.sendMail(msg);
var status = smtp.getStatus();
if (utils.stringPatternCount(status, "Successfully sent data")) {
var result = "Sent Successfully";
frmObjHist.send_tag = 0;
successCount++;
}
else if(utils.stringPatternCount(status, "S: 550")) {
var result = "No user";
failedCount++;
}
else {
var result = "Problems";
failedCount++;
}
//record.email_result = status;
} //******* FOR LOOP 1
smtp.closeConnection();
if (globals.stopBroadcast == 1) {
plugins.dialogs.showErrorDialog( "", "email sending has been terminated");
}
else {
if (failedCount > 0) {
plugins.dialogs.showErrorDialog( "", "there are " + failedCount + " emails out of " +
maxRecords + " have been failed");
}
else {
plugins.dialogs.showInfoDialog( "", "all the emails have been sent");
}
}
globals.local_functions_admin('setBroadcastResult');
globals.nav_closeFormInDialog();
globals.stopBroadcast = 0;
//************* globals.local_functions_admin(“setEmailMessageObj”, msg, msgArray);
msgObj = param1;
msgParams = param2;
msgObj.from = msgParams[0];
msgObj.to = msgParams[1]; //(Use comma for multiples)
msgObj.cc = msgParams[2];
msgObj.bcc = msgParams[3];
msgObj.subject = msgParams[4];
msgObj.body = msgParams[5];
var emailType = msgParams[6];
if (emailType == "plain") {
msgObj.contentType = 'text/plain; charset=us-ascii'; //See RFC 2822
}
else {
msgObj.contentType = 'text/html; charset=us-ascii'; //See RFC 2822
}
msgObj.attachments = msgParams[7];
//*********** globals.local_functions_admin(‘setSMTPObj’, smtp);
smtpObj = param1;
smtpObj.hostName = global_to_sysadmin.smtp_server;
if (global_to_sysadmin.smtp_use_authentication == 1) {
smtpObj.authentication = true;
smtpObj.userName = global_to_sysadmin.smtp_username;
smtpObj.password = global_to_sysadmin.smtp_password;
}