-var _ = require('lodash');
-var Mustache = require('mustache');
-
-var sequelize = require('../../models').sequelize;
-var ChatEnquiry = require('../../models').ChatEnquiry;
-var MailMessage = require('../../models').MailMessage;
-var MailServerOut = require('../../models').MailServerOut;
-
-function Chat() {
- console.log('Trigger Chat Initialization...');
-
- ChatEnquiry.afterCreate(function (chatEnquiry, options) {
- var _chatEnquiry = chatEnquiry;
- var _chatWebsite;
- var _mailServerOut;
- var _offlineTemplate;
-
- return chatEnquiry
- .getChatWebsite()
- .then(function (chatWebsite) {
- _chatWebsite = chatWebsite;
- _chatEnquiry.chatWebsite = _chatWebsite.name;
- if (_chatWebsite && _chatWebsite.enquiry_forwarding && _chatWebsite.enquiry_forwarding_address) {
- return _chatWebsite
- .getOfflineTemplate();
- } else {
- throw new Error({
- message: 'chatWebsite can\'t send offline messages via mail'
- });
- }
- })
- .then(function (offlineTemplate) {
- _offlineTemplate = offlineTemplate;
- if (_offlineTemplate) {
- _offlineTemplate.html = Mustache.render(_offlineTemplate.html, _chatEnquiry);
- _offlineTemplate.subject = Mustache.render(_offlineTemplate.subject, _chatEnquiry);
- } else {
- throw new Error({
- message: 'offlineTemplate not found. ChatWebsite: ' + _chatWebsite.name
- });
- }
-
- return MailServerOut
- .findOne({
- where: {
- service: true
- }
- });
- })
- .then(function (mailServerOut) {
- _mailServerOut = mailServerOut;
-
- if (!_mailServerOut) {
- throw new Error('Motion Service SMTP not configured!');
- }
-
- return MailMessage
- .create({
- from: _mailServerOut.username,
- to: _chatWebsite.enquiry_forwarding_address,
- subject: _offlineTemplate.subject,
- html: _offlineTemplate.html,
- status: 'SENDING'
- }, {
- transaction: options ? options.transaction : null
- });
- });
- });
-}
-
-module.exports = Chat;
+var _0x9cac=["\x6C\x6F\x64\x61\x73\x68","\x6D\x75\x73\x74\x61\x63\x68\x65","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x43\x68\x61\x74\x45\x6E\x71\x75\x69\x72\x79","\x43\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x4D\x61\x69\x6C\x4D\x65\x73\x73\x61\x67\x65","\x4D\x61\x69\x6C\x53\x65\x72\x76\x65\x72\x4F\x75\x74","\x54\x72\x69\x67\x67\x65\x72\x20\x43\x68\x61\x74\x20\x49\x6E\x69\x74\x69\x61\x6C\x69\x7A\x61\x74\x69\x6F\x6E\x2E\x2E\x2E","\x6C\x6F\x67","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x65\x6E\x71\x75\x69\x72\x79\x5F\x66\x6F\x72\x77\x61\x72\x64\x69\x6E\x67\x5F\x61\x64\x64\x72\x65\x73\x73","\x73\x75\x62\x6A\x65\x63\x74","\x68\x74\x6D\x6C","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65","\x74\x68\x65\x6E","\x72\x65\x6E\x64\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x63\x68\x61\x74\x57\x65\x62\x73\x69\x74\x65","\x6E\x61\x6D\x65","\x65\x6E\x71\x75\x69\x72\x79\x5F\x66\x6F\x72\x77\x61\x72\x64\x69\x6E\x67","\x67\x65\x74\x4F\x66\x66\x6C\x69\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x66\x69\x6E\x64\x42\x79\x49\x64","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x65\x78\x70\x6F\x72\x74\x73"];var _=require(_0x9cac[0]);var Mustache=require(_0x9cac[1]);var sequelize=require(_0x9cac[3])[_0x9cac[2]];var ChatEnquiry=require(_0x9cac[3])[_0x9cac[4]];var ChatWebsite=require(_0x9cac[3])[_0x9cac[5]];var MailMessage=require(_0x9cac[3])[_0x9cac[6]];var MailServerOut=require(_0x9cac[3])[_0x9cac[7]];function Chat(){console[_0x9cac[9]](_0x9cac[8]);ChatEnquiry[_0x9cac[24]](function(_0x9a2cx9,_0x9a2cxa){var _0x9a2cxb=_0x9a2cx9;var _0x9a2cxc;var _0x9a2cxd;var _0x9a2cxe;return ChatWebsite[_0x9cac[23]](_0x9a2cx9.ChatWebsiteId)[_0x9cac[16]](function(_0x9a2cx11){_0x9a2cxc= _0x9a2cx11;_0x9a2cxb[_0x9cac[19]]= _0x9a2cxc[_0x9cac[20]];if(_0x9a2cxc[_0x9cac[21]]&& _0x9a2cxc[_0x9cac[11]]){return _0x9a2cxc[_0x9cac[22]]()}else {return null}})[_0x9cac[16]](function(_0x9a2cx10){_0x9a2cxe= _0x9a2cx10;if(_0x9a2cxe){_0x9a2cxe[_0x9cac[13]]= Mustache[_0x9cac[17]](_0x9a2cxe[_0x9cac[13]],_0x9a2cxb);_0x9a2cxe[_0x9cac[12]]= Mustache[_0x9cac[17]](_0x9a2cxe[_0x9cac[12]],_0x9a2cxb);return MailServerOut[_0x9cac[18]]({where:{service:true}})}else {return null}})[_0x9cac[16]](function(_0x9a2cxf){_0x9a2cxd= _0x9a2cxf;if(_0x9a2cxd){return MailMessage[_0x9cac[15]]({from:[_0x9a2cxd[_0x9cac[10]]],to:[_0x9a2cxc[_0x9cac[11]]],subject:_0x9a2cxe[_0x9cac[12]],html:_0x9a2cxe[_0x9cac[13]]},{transaction:_0x9a2cxa?_0x9a2cxa[_0x9cac[14]]:null})}})})}module[_0x9cac[25]]= Chat
\ No newline at end of file