d9ab18efe407075732cf27a79f8cd10ceed00e6a
[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 _0xf9b3=['isNil','MailInteraction','findOne','MailInteractionId','update','catch','error','utf8mb4_unicode_ci','lodash','util','moment','request-promise','rimraf','./mailMessage.attributes','define','MailMessage','mail_messages','messageId','fti_mail_messages','plainBody','subject','FULLTEXT','body','fromString','models','get','direction','toLowerCase','secret'];(function(_0x45d55e,_0x2fede3){var _0x29812a=function(_0x3c6830){while(--_0x3c6830){_0x45d55e['push'](_0x45d55e['shift']());}};_0x29812a(++_0x2fede3);}(_0xf9b3,0x7c));var _0x3f9b=function(_0x48a284,_0x5099e5){_0x48a284=_0x48a284-0x0;var _0x3c88c1=_0xf9b3[_0x48a284];return _0x3c88c1;};'use strict';var _=require(_0x3f9b('0x0'));var util=require(_0x3f9b('0x1'));var logger=require('../../config/logger')('api');var moment=require(_0x3f9b('0x2'));var BPromise=require('bluebird');var rp=require(_0x3f9b('0x3'));var htmlToText=require('html-to-text');var fs=require('fs');var path=require('path');var rimraf=require(_0x3f9b('0x4'));var config=require('../../config/environment');var attributes=require(_0x3f9b('0x5'));module['exports']=function(_0x422759,_0x4b2630){return _0x422759[_0x3f9b('0x6')](_0x3f9b('0x7'),attributes,{'tableName':_0x3f9b('0x8'),'paranoid':![],'indexes':[{'name':_0x3f9b('0x9'),'fields':[_0x3f9b('0x9')]},{'name':_0x3f9b('0xa'),'fields':[_0x3f9b('0xb'),_0x3f9b('0xc')],'type':_0x3f9b('0xd')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x4db530,_0x5de938,_0x35dd9b){if(_0x4db530[_0x3f9b('0xe')]){_0x4db530['plainBody']=htmlToText[_0x3f9b('0xf')](_0x4db530['body'],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]});}_0x35dd9b(null,_0x5de938);},'afterCreate':function(_0x2515cd,_0x79f080,_0x478d07){var _0x4c03e4=_0x422759[_0x3f9b('0x10')];var _0x38f6c7=_0x2515cd[_0x3f9b('0x11')]({'plain':!![]});if(_0x38f6c7[_0x3f9b('0x12')][_0x3f9b('0x13')]()==='in'||_0x38f6c7[_0x3f9b('0x12')]['toLowerCase']()==='out'&&!_0x38f6c7[_0x3f9b('0x14')]&&!_[_0x3f9b('0x15')](_0x38f6c7['UserId'])){_0x4c03e4[_0x3f9b('0x16')][_0x3f9b('0x17')]({'where':{'id':_0x38f6c7[_0x3f9b('0x18')]}})['then'](function(_0x1543a0){if(_0x1543a0){_0x1543a0[_0x3f9b('0x19')]({'lastMsgAt':_0x38f6c7['createdAt'],'lastMsgDirection':_0x38f6c7[_0x3f9b('0x12')][_0x3f9b('0x13')]()});}})[_0x3f9b('0x1a')](function(_0xff3977){console[_0x3f9b('0x1b')](_0xff3977);});}_0x478d07();}},'charset':'utf8mb4','collate':_0x3f9b('0x1c')});};