Something went wrong on our end
-
Johannes Hörmann authoredJohannes Hörmann authored
onDBInsert.js 1.85 KiB
import("Sql_lib");
import("DocumentTemplate_lib");
import("system.result");
import("system.vars");
import("system.entities");
import("system.db");
import("system.util");
import("Document_lib");
import("Bulkmail_lib");
if (vars.get("$context.currentTemplateType") != DocumentTemplate.types.EML)
var content = vars.get("$field.content");
var bindata = vars.get("$field.bindata");
var rowdata = vars.get("$local.rowdata");
var bulkMailId = rowdata["BULKMAIL.BULKMAILID"];
var templateId = rowdata["BULKMAIL.DOCUMENTTEMPLATE_ID"];
var bulkMailName = rowdata["BULKMAIL.NAME"];
var template = DocumentTemplate.getSelectedTemplate(templateId, new FileUpload(bindata), content, DocumentTemplate.types.HTML);
if (template.content)
{
if (!template.filename)
template.filename = bulkMailName + ".html";
db.insertBinary("BULKMAIL", "DOCUMENT", bulkMailId,
"", template.content, template.filename, "", "", SqlUtils.getBinariesAlias());
}
var contactIds = [];
if (vars.get("$param.CopyBulkMailId_param"))
{
var config = entities.createConfigForLoadingRows()
.entity("BulkMailRecipient_entity")
.provider("BulkMailRecipients")
.addParameter("BulkMailId_param", vars.get("$param.CopyBulkMailId_param"))
.fields(["CONTACT_ID"]);
var copiedRecipients = entities.getRows(config);
contactIds = copiedRecipients.map(function(pRecipient)
{
return pRecipient["CONTACT_ID"];
});
}
if (vars.getString("$param.PresetRecipients_param"))
contactIds = contactIds.concat(JSON.parse(vars.getString("$param.PresetRecipients_param")));
if (contactIds && contactIds.length > 0)
BulkMailUtils.addRecipients(bulkMailId, BulkMailUtils.filterNewRecipients(bulkMailId, contactIds));