@openinc/parse-server-opendash
Version:
Parse Server Cloud Code for open.INC Stack.
39 lines (38 loc) • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.init = init;
const __1 = require("..");
const config_1 = require("../features/config");
const notifications_1 = require("../features/notifications");
const types_1 = require("../types");
async function init() {
(0, __1.beforeSaveHook)(types_1.Core_Email, async (request) => {
const { object } = request;
object.setACL(new Parse.ACL());
const emailState = notifications_1.EmailState.getInstance();
const transport = emailState.getTransport();
if (!transport) {
object.sent = false;
object.success = false;
object.error = false;
}
else {
try {
const response = await transport.sendMail({
...object.payload,
from: config_1.ConfigInstance.getInstance().get("SMTP_FROM"),
});
object.response = response;
object.sent = true;
object.success = true;
object.error = false;
}
catch (error) {
object.response = JSON.parse(JSON.stringify(error));
object.sent = true;
object.success = false;
object.error = true;
}
}
});
}