-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 _0x843d=["\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(_0x843d[0]);var Mustache=require(_0x843d[1]);var sequelize=require(_0x843d[3])[_0x843d[2]];var ChatEnquiry=require(_0x843d[3])[_0x843d[4]];var ChatWebsite=require(_0x843d[3])[_0x843d[5]];var MailMessage=require(_0x843d[3])[_0x843d[6]];var MailServerOut=require(_0x843d[3])[_0x843d[7]];function Chat(){console[_0x843d[9]](_0x843d[8]);ChatEnquiry[_0x843d[24]](function(_0xd6efx9,_0xd6efxa){var _0xd6efxb=_0xd6efx9;var _0xd6efxc;var _0xd6efxd;var _0xd6efxe;return ChatWebsite[_0x843d[23]](_0xd6efx9.ChatWebsiteId)[_0x843d[16]](function(_0xd6efx11){_0xd6efxc=_0xd6efx11;_0xd6efxb[_0x843d[19]]=_0xd6efxc[_0x843d[20]];if(_0xd6efxc[_0x843d[21]]&&_0xd6efxc[_0x843d[11]]){return _0xd6efxc[_0x843d[22]]()}else {return null}})[_0x843d[16]](function(_0xd6efx10){_0xd6efxe=_0xd6efx10;if(_0xd6efxe){_0xd6efxe[_0x843d[13]]=Mustache[_0x843d[17]](_0xd6efxe[_0x843d[13]],_0xd6efxb);_0xd6efxe[_0x843d[12]]=Mustache[_0x843d[17]](_0xd6efxe[_0x843d[12]],_0xd6efxb);return MailServerOut[_0x843d[18]]({where:{service:true}})}else {return null}})[_0x843d[16]](function(_0xd6efxf){_0xd6efxd=_0xd6efxf;if(_0xd6efxd){return MailMessage[_0x843d[15]]({from:[_0xd6efxd[_0x843d[10]]],to:[_0xd6efxc[_0x843d[11]]],subject:_0xd6efxe[_0x843d[12]],html:_0xd6efxe[_0x843d[13]]},{transaction:_0xd6efxa?_0xd6efxa[_0x843d[14]]:null})}})})}module[_0x843d[25]]=Chat
\ No newline at end of file