f7efbdf59ffe4d1fe9ea328a9bacb21327a3ac8a
[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 _0x9c39=['MailMessage','then','catch','utf8mb4','utf8mb4_unicode_ci','lodash','util','../../config/logger','api','bluebird','path','rimraf','../../config/environment','exports','MailInteraction','mail_interactions','fti_mail_interactions','FULLTEXT','substatus','substatusAt','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','format','changed','models','get'];(function(_0x18d9bb,_0x46e4ab){var _0x2dd06f=function(_0x36288b){while(--_0x36288b){_0x18d9bb['push'](_0x18d9bb['shift']());}};_0x2dd06f(++_0x46e4ab);}(_0x9c39,0xdd));var _0x99c3=function(_0x307086,_0x3bfe4e){_0x307086=_0x307086-0x0;var _0x699043=_0x9c39[_0x307086];return _0x699043;};'use strict';var _=require(_0x99c3('0x0'));var util=require(_0x99c3('0x1'));var logger=require(_0x99c3('0x2'))(_0x99c3('0x3'));var moment=require('moment');var BPromise=require(_0x99c3('0x4'));var rp=require('request-promise');var fs=require('fs');var path=require(_0x99c3('0x5'));var rimraf=require(_0x99c3('0x6'));var config=require(_0x99c3('0x7'));var attributes=require('./mailInteraction.attributes');module[_0x99c3('0x8')]=function(_0x230629,_0x30a761){return _0x230629['define'](_0x99c3('0x9'),attributes,{'tableName':_0x99c3('0xa'),'paranoid':![],'indexes':[{'name':_0x99c3('0xb'),'fields':['subject','to'],'type':_0x99c3('0xc')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x460897,_0x10704d,_0x376a93){if(_0x460897[_0x99c3('0xd')]){_0x460897[_0x99c3('0xe')]=moment()['format'](_0x99c3('0xf'));}if(_0x460897[_0x99c3('0x10')]){_0x460897[_0x99c3('0x11')]=moment()[_0x99c3('0x12')](_0x99c3('0xf'));}_0x376a93(null,_0x10704d);},'beforeUpdate':function(_0x25714a,_0x324f24,_0x6f4d85){if(_0x25714a[_0x99c3('0x13')](_0x99c3('0xd'))){_0x25714a['substatusAt']=_0x25714a[_0x99c3('0xd')]?moment()[_0x99c3('0x12')]('YYYY-MM-DD\x20HH:mm:ss'):null;}if(_0x25714a[_0x99c3('0x13')](_0x99c3('0x10'))){_0x25714a['closedAt']=moment()[_0x99c3('0x12')]('YYYY-MM-DD\x20HH:mm:ss');_0x25714a[_0x99c3('0xd')]=null;_0x25714a['substatusAt']=null;}_0x6f4d85(null,_0x25714a);},'afterUpdate':function(_0x5efc25,_0x404b26,_0x5bb19d){var _0x16487f=_0x230629[_0x99c3('0x14')];var _0x53bd2f=_0x5efc25[_0x99c3('0x15')]({'plain':!![]});if(_0x53bd2f[_0x99c3('0x10')]){return _0x16487f[_0x99c3('0x16')]['update']({'read':!![]},{'where':{'MailInteractionId':_0x53bd2f['id']}})[_0x99c3('0x17')](function(){_0x5bb19d();})[_0x99c3('0x18')](function(_0x249abe){_0x5bb19d(_0x249abe);});}else{_0x5bb19d();}}},'charset':_0x99c3('0x19'),'collate':_0x99c3('0x1a')});};