03191393bd842cd9696adbd4ba27e52bd614fc8a
[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 _0x8232=['utf8mb4','utf8mb4_unicode_ci','lodash','api','moment','bluebird','request-promise','html-to-text','path','rimraf','../../config/environment','exports','define','MailMessage','mail_messages','messageId','fti_mail_messages','plainBody','subject','FULLTEXT','body','fromString','models','get','direction','toLowerCase','secret','isNil','UserId','MailInteraction','findOne','MailInteractionId','then','update','createdAt','catch'];(function(_0x37e550,_0x685fcc){var _0x30bc4e=function(_0xf073fd){while(--_0xf073fd){_0x37e550['push'](_0x37e550['shift']());}};_0x30bc4e(++_0x685fcc);}(_0x8232,0x1b2));var _0x2823=function(_0x521929,_0x479be5){_0x521929=_0x521929-0x0;var _0x632436=_0x8232[_0x521929];return _0x632436;};'use strict';var _=require(_0x2823('0x0'));var util=require('util');var logger=require('../../config/logger')(_0x2823('0x1'));var moment=require(_0x2823('0x2'));var BPromise=require(_0x2823('0x3'));var rp=require(_0x2823('0x4'));var htmlToText=require(_0x2823('0x5'));var fs=require('fs');var path=require(_0x2823('0x6'));var rimraf=require(_0x2823('0x7'));var config=require(_0x2823('0x8'));var attributes=require('./mailMessage.attributes');module[_0x2823('0x9')]=function(_0xa2f10f,_0x5a6089){return _0xa2f10f[_0x2823('0xa')](_0x2823('0xb'),attributes,{'tableName':_0x2823('0xc'),'paranoid':![],'indexes':[{'name':_0x2823('0xd'),'fields':[_0x2823('0xd')]},{'name':_0x2823('0xe'),'fields':[_0x2823('0xf'),_0x2823('0x10')],'type':_0x2823('0x11')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x12955f,_0x40ef03,_0x148d18){if(_0x12955f[_0x2823('0x12')]){_0x12955f[_0x2823('0xf')]=htmlToText[_0x2823('0x13')](_0x12955f[_0x2823('0x12')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]});}_0x148d18(null,_0x40ef03);},'afterCreate':function(_0x1e13a6,_0x172e39,_0xb80252){var _0x4c5073=_0xa2f10f[_0x2823('0x14')];var _0x508f28=_0x1e13a6[_0x2823('0x15')]({'plain':!![]});if(_0x508f28[_0x2823('0x16')][_0x2823('0x17')]()==='in'||_0x508f28['direction'][_0x2823('0x17')]()==='out'&&!_0x508f28[_0x2823('0x18')]&&!_[_0x2823('0x19')](_0x508f28[_0x2823('0x1a')])){_0x4c5073[_0x2823('0x1b')][_0x2823('0x1c')]({'where':{'id':_0x508f28[_0x2823('0x1d')]}})[_0x2823('0x1e')](function(_0x26ea6c){if(_0x26ea6c){_0x26ea6c[_0x2823('0x1f')]({'lastMsgAt':_0x508f28[_0x2823('0x20')],'lastMsgDirection':_0x508f28[_0x2823('0x16')][_0x2823('0x17')]()});}})[_0x2823('0x21')](function(_0x5c045d){console['error'](_0x5c045d);});}_0xb80252();}},'charset':_0x2823('0x22'),'collate':_0x2823('0x23')});};