75d30dd1cd378adef047762f7514fd5ece834416
[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 _0x28b8=['closedAt','changed','models','get','MailMessage','update','catch','utf8mb4','utf8mb4_unicode_ci','lodash','util','../../config/logger','api','bluebird','request-promise','path','rimraf','../../config/environment','./mailInteraction.attributes','define','fti_mail_interactions','FULLTEXT','substatus','substatusAt','format','YYYY-MM-DD\x20HH:mm:ss','closed'];(function(_0x2134b7,_0x1eb5e2){var _0x6c5914=function(_0x1da201){while(--_0x1da201){_0x2134b7['push'](_0x2134b7['shift']());}};_0x6c5914(++_0x1eb5e2);}(_0x28b8,0x132));var _0x828b=function(_0x566f07,_0xd04c83){_0x566f07=_0x566f07-0x0;var _0xb77fed=_0x28b8[_0x566f07];return _0xb77fed;};'use strict';var _=require(_0x828b('0x0'));var util=require(_0x828b('0x1'));var logger=require(_0x828b('0x2'))(_0x828b('0x3'));var moment=require('moment');var BPromise=require(_0x828b('0x4'));var rp=require(_0x828b('0x5'));var fs=require('fs');var path=require(_0x828b('0x6'));var rimraf=require(_0x828b('0x7'));var config=require(_0x828b('0x8'));var attributes=require(_0x828b('0x9'));module['exports']=function(_0x20a7ad,_0x13dfe6){return _0x20a7ad[_0x828b('0xa')]('MailInteraction',attributes,{'tableName':'mail_interactions','paranoid':![],'indexes':[{'name':_0x828b('0xb'),'fields':['subject','to'],'type':_0x828b('0xc')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x229ab6,_0x34ae0e,_0xa625cc){if(_0x229ab6[_0x828b('0xd')]){_0x229ab6[_0x828b('0xe')]=moment()[_0x828b('0xf')](_0x828b('0x10'));}if(_0x229ab6[_0x828b('0x11')]){_0x229ab6[_0x828b('0x12')]=moment()[_0x828b('0xf')]('YYYY-MM-DD\x20HH:mm:ss');}_0xa625cc(null,_0x34ae0e);},'beforeUpdate':function(_0x486991,_0x1ce7f0,_0x1b2fba){if(_0x486991[_0x828b('0x13')]('substatus')){_0x486991[_0x828b('0xe')]=_0x486991[_0x828b('0xd')]?moment()[_0x828b('0xf')](_0x828b('0x10')):null;}if(_0x486991[_0x828b('0x13')](_0x828b('0x11'))){_0x486991['closedAt']=moment()[_0x828b('0xf')](_0x828b('0x10'));_0x486991[_0x828b('0xd')]=null;_0x486991[_0x828b('0xe')]=null;}_0x1b2fba(null,_0x486991);},'afterUpdate':function(_0x3357c4,_0x198ea4,_0x1ad42a){var _0x5c6b93=_0x20a7ad[_0x828b('0x14')];var _0x59b9fc=_0x3357c4[_0x828b('0x15')]({'plain':!![]});if(_0x59b9fc[_0x828b('0x11')]){return _0x5c6b93[_0x828b('0x16')][_0x828b('0x17')]({'read':!![]},{'where':{'MailInteractionId':_0x59b9fc['id']}})['then'](function(){_0x1ad42a();})[_0x828b('0x18')](function(_0x1e0ba7){_0x1ad42a(_0x1e0ba7);});}else{_0x1ad42a();}}},'charset':_0x828b('0x19'),'collate':_0x828b('0x1a')});};