6b5c65bda0560054f5e82ac802969d423352aeb9
[motion2.git] / server / api / mailInteraction / mailInteraction.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 _0x63c6=['substatusAt','format','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','changed','models','get','update','then','catch','utf8mb4','utf8mb4_unicode_ci','lodash','util','moment','bluebird','request-promise','path','rimraf','../../config/environment','./mailInteraction.attributes','exports','define','MailInteraction','mail_interactions','fti_mail_interactions','FULLTEXT','substatus'];(function(_0x539fd6,_0x123fb8){var _0x3c8d94=function(_0x1c4659){while(--_0x1c4659){_0x539fd6['push'](_0x539fd6['shift']());}};_0x3c8d94(++_0x123fb8);}(_0x63c6,0xbb));var _0x663c=function(_0x59b66a,_0x20ed99){_0x59b66a=_0x59b66a-0x0;var _0x619415=_0x63c6[_0x59b66a];return _0x619415;};'use strict';var _=require(_0x663c('0x0'));var util=require(_0x663c('0x1'));var logger=require('../../config/logger')('api');var moment=require(_0x663c('0x2'));var BPromise=require(_0x663c('0x3'));var rp=require(_0x663c('0x4'));var fs=require('fs');var path=require(_0x663c('0x5'));var rimraf=require(_0x663c('0x6'));var config=require(_0x663c('0x7'));var attributes=require(_0x663c('0x8'));module[_0x663c('0x9')]=function(_0x6bdbd1,_0x4fedf8){return _0x6bdbd1[_0x663c('0xa')](_0x663c('0xb'),attributes,{'tableName':_0x663c('0xc'),'paranoid':![],'indexes':[{'name':_0x663c('0xd'),'fields':['subject','to'],'type':_0x663c('0xe')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x4da574,_0x38dc88,_0x555aac){if(_0x4da574[_0x663c('0xf')]){_0x4da574[_0x663c('0x10')]=moment()[_0x663c('0x11')](_0x663c('0x12'));}if(_0x4da574[_0x663c('0x13')]){_0x4da574[_0x663c('0x14')]=moment()[_0x663c('0x11')]('YYYY-MM-DD\x20HH:mm:ss');}_0x555aac(null,_0x38dc88);},'beforeUpdate':function(_0x5453f7,_0x1dd3f0,_0xe80d02){if(_0x5453f7['changed'](_0x663c('0xf'))){_0x5453f7[_0x663c('0x10')]=_0x5453f7[_0x663c('0xf')]?moment()[_0x663c('0x11')]('YYYY-MM-DD\x20HH:mm:ss'):null;}if(_0x5453f7[_0x663c('0x15')](_0x663c('0x13'))){_0x5453f7['closedAt']=moment()[_0x663c('0x11')]('YYYY-MM-DD\x20HH:mm:ss');_0x5453f7[_0x663c('0xf')]=null;_0x5453f7[_0x663c('0x10')]=null;}_0xe80d02(null,_0x5453f7);},'afterUpdate':function(_0x2a7b0d,_0x14cb89,_0x1281e3){var _0x2d2a8f=_0x6bdbd1[_0x663c('0x16')];var _0x41cc9d=_0x2a7b0d[_0x663c('0x17')]({'plain':!![]});if(_0x41cc9d[_0x663c('0x13')]){return _0x2d2a8f['MailMessage'][_0x663c('0x18')]({'read':!![]},{'where':{'MailInteractionId':_0x41cc9d['id']}})[_0x663c('0x19')](function(){_0x1281e3();})[_0x663c('0x1a')](function(_0x49665e){_0x1281e3(_0x49665e);});}else{_0x1281e3();}}},'charset':_0x663c('0x1b'),'collate':_0x663c('0x1c')});};