8f364a34ca916bc6a78dbd6105aa1861445ffa98
[motion2.git] / server / api / mailMessage / mailMessage.model.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xd369=['update','createdAt','utf8mb4','lodash','util','../../config/logger','api','moment','bluebird','request-promise','path','rimraf','./mailMessage.attributes','exports','define','MailMessage','mail_messages','messageId','fti_mail_messages','plainBody','subject','FULLTEXT','body','get','direction','toLowerCase','out','secret','isNil','UserId','MailInteraction','findOne','MailInteractionId','then'];(function(_0x4ec1a7,_0x3f29a0){var _0x477952=function(_0x4a7760){while(--_0x4a7760){_0x4ec1a7['push'](_0x4ec1a7['shift']());}};_0x477952(++_0x3f29a0);}(_0xd369,0xcf));var _0x9d36=function(_0x53e3d5,_0x32a152){_0x53e3d5=_0x53e3d5-0x0;var _0x406586=_0xd369[_0x53e3d5];return _0x406586;};'use strict';var _=require(_0x9d36('0x0'));var util=require(_0x9d36('0x1'));var logger=require(_0x9d36('0x2'))(_0x9d36('0x3'));var moment=require(_0x9d36('0x4'));var BPromise=require(_0x9d36('0x5'));var rp=require(_0x9d36('0x6'));var htmlToText=require('html-to-text');var fs=require('fs');var path=require(_0x9d36('0x7'));var rimraf=require(_0x9d36('0x8'));var config=require('../../config/environment');var attributes=require(_0x9d36('0x9'));module[_0x9d36('0xa')]=function(_0x1e3c50,_0x1e861c){return _0x1e3c50[_0x9d36('0xb')](_0x9d36('0xc'),attributes,{'tableName':_0x9d36('0xd'),'paranoid':![],'indexes':[{'name':_0x9d36('0xe'),'fields':[_0x9d36('0xe')]},{'name':_0x9d36('0xf'),'fields':[_0x9d36('0x10'),_0x9d36('0x11')],'type':_0x9d36('0x12')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x53b81c,_0x5942b6,_0x40d524){if(_0x53b81c[_0x9d36('0x13')]){_0x53b81c[_0x9d36('0x10')]=htmlToText['fromString'](_0x53b81c[_0x9d36('0x13')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]});}_0x40d524(null,_0x5942b6);},'afterCreate':function(_0x198b7c,_0x233552,_0x280c21){var _0x235235=_0x1e3c50['models'];var _0x17adfc=_0x198b7c[_0x9d36('0x14')]({'plain':!![]});if(_0x17adfc['direction']['toLowerCase']()==='in'||_0x17adfc[_0x9d36('0x15')][_0x9d36('0x16')]()===_0x9d36('0x17')&&!_0x17adfc[_0x9d36('0x18')]&&!_[_0x9d36('0x19')](_0x17adfc[_0x9d36('0x1a')])){_0x235235[_0x9d36('0x1b')][_0x9d36('0x1c')]({'where':{'id':_0x17adfc[_0x9d36('0x1d')]}})[_0x9d36('0x1e')](function(_0xe1665b){if(_0xe1665b){_0xe1665b[_0x9d36('0x1f')]({'lastMsgAt':_0x17adfc[_0x9d36('0x20')],'lastMsgDirection':_0x17adfc[_0x9d36('0x15')]['toLowerCase']()});}})['catch'](function(_0x1f00dc){console['error'](_0x1f00dc);});}_0x280c21();}},'charset':_0x9d36('0x21'),'collate':'utf8mb4_unicode_ci'});};