d1a7734d778052d1ae45586e32664da26b6f1358
[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 _0xd4b8=['path','rimraf','../../config/environment','./mailInteraction.attributes','define','MailInteraction','mail_interactions','subject','FULLTEXT','substatus','substatusAt','format','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','changed','models','get','update','catch','utf8mb4','util','../../config/logger','api','moment','request-promise'];(function(_0x64fed3,_0xdfcc08){var _0x5a22fb=function(_0x6cff16){while(--_0x6cff16){_0x64fed3['push'](_0x64fed3['shift']());}};_0x5a22fb(++_0xdfcc08);}(_0xd4b8,0x1cf));var _0x8d4b=function(_0x417459,_0xc2b71a){_0x417459=_0x417459-0x0;var _0x1f1bc6=_0xd4b8[_0x417459];return _0x1f1bc6;};'use strict';var _=require('lodash');var util=require(_0x8d4b('0x0'));var logger=require(_0x8d4b('0x1'))(_0x8d4b('0x2'));var moment=require(_0x8d4b('0x3'));var BPromise=require('bluebird');var rp=require(_0x8d4b('0x4'));var fs=require('fs');var path=require(_0x8d4b('0x5'));var rimraf=require(_0x8d4b('0x6'));var config=require(_0x8d4b('0x7'));var attributes=require(_0x8d4b('0x8'));module['exports']=function(_0x216af1,_0xa3002b){return _0x216af1[_0x8d4b('0x9')](_0x8d4b('0xa'),attributes,{'tableName':_0x8d4b('0xb'),'paranoid':![],'indexes':[{'name':'fti_mail_interactions','fields':[_0x8d4b('0xc'),'to'],'type':_0x8d4b('0xd')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x1b9474,_0xfd9d53,_0x4ab5ef){if(_0x1b9474[_0x8d4b('0xe')]){_0x1b9474[_0x8d4b('0xf')]=moment()[_0x8d4b('0x10')](_0x8d4b('0x11'));}if(_0x1b9474[_0x8d4b('0x12')]){_0x1b9474[_0x8d4b('0x13')]=moment()[_0x8d4b('0x10')](_0x8d4b('0x11'));}_0x4ab5ef(null,_0xfd9d53);},'beforeUpdate':function(_0x2e44b1,_0x3d7639,_0x5b444d){if(_0x2e44b1[_0x8d4b('0x14')]('substatus')){_0x2e44b1[_0x8d4b('0xf')]=_0x2e44b1[_0x8d4b('0xe')]?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):null;}if(_0x2e44b1[_0x8d4b('0x14')](_0x8d4b('0x12'))){_0x2e44b1[_0x8d4b('0x13')]=moment()[_0x8d4b('0x10')]('YYYY-MM-DD\x20HH:mm:ss');_0x2e44b1[_0x8d4b('0xe')]=null;_0x2e44b1[_0x8d4b('0xf')]=null;}_0x5b444d(null,_0x2e44b1);},'afterUpdate':function(_0xe38d03,_0x541ce6,_0x365dab){var _0x23d417=_0x216af1[_0x8d4b('0x15')];var _0x317c85=_0xe38d03[_0x8d4b('0x16')]({'plain':!![]});if(_0x317c85[_0x8d4b('0x12')]){return _0x23d417['MailMessage'][_0x8d4b('0x17')]({'read':!![]},{'where':{'MailInteractionId':_0x317c85['id']}})['then'](function(){_0x365dab();})[_0x8d4b('0x18')](function(_0x2b955d){_0x365dab(_0x2b955d);});}else{_0x365dab();}}},'charset':_0x8d4b('0x19'),'collate':'utf8mb4_unicode_ci'});};