99a2c867b01d47fc29e05535c01519154fce0a5d
[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 _0x22ef=['lodash','util','moment','bluebird','path','rimraf','../../config/environment','./mailInteraction.attributes','exports','define','MailInteraction','mail_interactions','fti_mail_interactions','subject','FULLTEXT','substatus','YYYY-MM-DD\x20HH:mm:ss','changed','substatusAt','format','closed','closedAt','models','MailMessage','then','utf8mb4','utf8mb4_unicode_ci'];(function(_0x13d691,_0xa37429){var _0x3e4eb7=function(_0x2af523){while(--_0x2af523){_0x13d691['push'](_0x13d691['shift']());}};_0x3e4eb7(++_0xa37429);}(_0x22ef,0xd8));var _0xf22e=function(_0x39bac2,_0x5afee4){_0x39bac2=_0x39bac2-0x0;var _0x19291b=_0x22ef[_0x39bac2];return _0x19291b;};'use strict';var _=require(_0xf22e('0x0'));var util=require(_0xf22e('0x1'));var logger=require('../../config/logger')('api');var moment=require(_0xf22e('0x2'));var BPromise=require(_0xf22e('0x3'));var rp=require('request-promise');var fs=require('fs');var path=require(_0xf22e('0x4'));var rimraf=require(_0xf22e('0x5'));var config=require(_0xf22e('0x6'));var attributes=require(_0xf22e('0x7'));module[_0xf22e('0x8')]=function(_0x3a6ef1,_0x2be8a1){return _0x3a6ef1[_0xf22e('0x9')](_0xf22e('0xa'),attributes,{'tableName':_0xf22e('0xb'),'paranoid':![],'indexes':[{'name':_0xf22e('0xc'),'fields':[_0xf22e('0xd'),'to'],'type':_0xf22e('0xe')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0xa6cd0a,_0x5e0bfd,_0x2edaa2){if(_0xa6cd0a[_0xf22e('0xf')]){_0xa6cd0a['substatusAt']=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');}if(_0xa6cd0a['closed']){_0xa6cd0a['closedAt']=moment()['format'](_0xf22e('0x10'));}_0x2edaa2(null,_0x5e0bfd);},'beforeUpdate':function(_0x2b1de9,_0x18df9d,_0x386074){if(_0x2b1de9[_0xf22e('0x11')](_0xf22e('0xf'))){_0x2b1de9[_0xf22e('0x12')]=_0x2b1de9['substatus']?moment()[_0xf22e('0x13')](_0xf22e('0x10')):null;}if(_0x2b1de9[_0xf22e('0x11')](_0xf22e('0x14'))){_0x2b1de9[_0xf22e('0x15')]=moment()['format'](_0xf22e('0x10'));_0x2b1de9[_0xf22e('0xf')]=null;_0x2b1de9[_0xf22e('0x12')]=null;}_0x386074(null,_0x2b1de9);},'afterUpdate':function(_0x56575d,_0x25098b,_0x54162e){var _0x5052fa=_0x3a6ef1[_0xf22e('0x16')];var _0x5adf35=_0x56575d['get']({'plain':!![]});if(_0x5adf35[_0xf22e('0x14')]){return _0x5052fa[_0xf22e('0x17')]['update']({'read':!![]},{'where':{'MailInteractionId':_0x5adf35['id']}})[_0xf22e('0x18')](function(){_0x54162e();})['catch'](function(_0x1487fa){_0x54162e(_0x1487fa);});}else{_0x54162e();}}},'charset':_0xf22e('0x19'),'collate':_0xf22e('0x1a')});};