5e91280feb4ab0d3ce201b47025986fe82847798
[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 _0xca66=['YYYY-MM-DD\x20HH:mm:ss','changed','models','MailMessage','update','then','catch','utf8mb4','utf8mb4_unicode_ci','lodash','api','moment','bluebird','path','../../config/environment','exports','define','MailInteraction','mail_interactions','fti_mail_interactions','FULLTEXT','substatus','substatusAt','format','closed','closedAt'];(function(_0x3203a1,_0x46c498){var _0x24215e=function(_0x4ffab0){while(--_0x4ffab0){_0x3203a1['push'](_0x3203a1['shift']());}};_0x24215e(++_0x46c498);}(_0xca66,0x8b));var _0x6ca6=function(_0x45a705,_0x2ff858){_0x45a705=_0x45a705-0x0;var _0x5afd2d=_0xca66[_0x45a705];return _0x5afd2d;};'use strict';var _=require(_0x6ca6('0x0'));var util=require('util');var logger=require('../../config/logger')(_0x6ca6('0x1'));var moment=require(_0x6ca6('0x2'));var BPromise=require(_0x6ca6('0x3'));var rp=require('request-promise');var fs=require('fs');var path=require(_0x6ca6('0x4'));var rimraf=require('rimraf');var config=require(_0x6ca6('0x5'));var attributes=require('./mailInteraction.attributes');module[_0x6ca6('0x6')]=function(_0x27d8c6,_0x34836f){return _0x27d8c6[_0x6ca6('0x7')](_0x6ca6('0x8'),attributes,{'tableName':_0x6ca6('0x9'),'paranoid':![],'indexes':[{'name':_0x6ca6('0xa'),'fields':['subject','to'],'type':_0x6ca6('0xb')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x115635,_0x34b71b,_0x4352a5){if(_0x115635[_0x6ca6('0xc')]){_0x115635[_0x6ca6('0xd')]=moment()[_0x6ca6('0xe')]('YYYY-MM-DD\x20HH:mm:ss');}if(_0x115635[_0x6ca6('0xf')]){_0x115635[_0x6ca6('0x10')]=moment()[_0x6ca6('0xe')](_0x6ca6('0x11'));}_0x4352a5(null,_0x34b71b);},'beforeUpdate':function(_0x444243,_0x41e903,_0x4c05e9){if(_0x444243[_0x6ca6('0x12')](_0x6ca6('0xc'))){_0x444243['substatusAt']=_0x444243[_0x6ca6('0xc')]?moment()[_0x6ca6('0xe')](_0x6ca6('0x11')):null;}if(_0x444243[_0x6ca6('0x12')](_0x6ca6('0xf'))){_0x444243[_0x6ca6('0x10')]=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');_0x444243['substatus']=null;_0x444243[_0x6ca6('0xd')]=null;}_0x4c05e9(null,_0x444243);},'afterUpdate':function(_0x19e94f,_0x260b56,_0x3f03e6){var _0x2c4a5c=_0x27d8c6[_0x6ca6('0x13')];var _0x25dc6c=_0x19e94f['get']({'plain':!![]});if(_0x25dc6c[_0x6ca6('0xf')]){return _0x2c4a5c[_0x6ca6('0x14')][_0x6ca6('0x15')]({'read':!![]},{'where':{'MailInteractionId':_0x25dc6c['id']}})[_0x6ca6('0x16')](function(){_0x3f03e6();})[_0x6ca6('0x17')](function(_0x2b0a8c){_0x3f03e6(_0x2b0a8c);});}else{_0x3f03e6();}}},'charset':_0x6ca6('0x18'),'collate':_0x6ca6('0x19')});};