428cb56aa595112ec079ca0debb904abeb061cb4
[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 _0xffdc=['./mailInteraction.attributes','define','MailInteraction','mail_interactions','fti_mail_interactions','FULLTEXT','substatus','substatusAt','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','format','changed','models','update','then','catch','utf8mb4','utf8mb4_unicode_ci','lodash','util','api','moment','request-promise','path','rimraf','../../config/environment'];(function(_0x397f34,_0x3ac328){var _0x272cda=function(_0x2c9756){while(--_0x2c9756){_0x397f34['push'](_0x397f34['shift']());}};_0x272cda(++_0x3ac328);}(_0xffdc,0x7f));var _0xcffd=function(_0x4cc815,_0x1d6f0c){_0x4cc815=_0x4cc815-0x0;var _0x34731e=_0xffdc[_0x4cc815];return _0x34731e;};'use strict';var _=require(_0xcffd('0x0'));var util=require(_0xcffd('0x1'));var logger=require('../../config/logger')(_0xcffd('0x2'));var moment=require(_0xcffd('0x3'));var BPromise=require('bluebird');var rp=require(_0xcffd('0x4'));var fs=require('fs');var path=require(_0xcffd('0x5'));var rimraf=require(_0xcffd('0x6'));var config=require(_0xcffd('0x7'));var attributes=require(_0xcffd('0x8'));module['exports']=function(_0x1a1bce,_0x963fad){return _0x1a1bce[_0xcffd('0x9')](_0xcffd('0xa'),attributes,{'tableName':_0xcffd('0xb'),'paranoid':![],'indexes':[{'name':_0xcffd('0xc'),'fields':['subject','to'],'type':_0xcffd('0xd')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x7eccec,_0x5dec7e,_0x423ec6){if(_0x7eccec[_0xcffd('0xe')]){_0x7eccec[_0xcffd('0xf')]=moment()['format'](_0xcffd('0x10'));}if(_0x7eccec[_0xcffd('0x11')]){_0x7eccec[_0xcffd('0x12')]=moment()[_0xcffd('0x13')]('YYYY-MM-DD\x20HH:mm:ss');}_0x423ec6(null,_0x5dec7e);},'beforeUpdate':function(_0x55a51a,_0x1d010a,_0x187ca8){if(_0x55a51a[_0xcffd('0x14')]('substatus')){_0x55a51a[_0xcffd('0xf')]=_0x55a51a['substatus']?moment()['format'](_0xcffd('0x10')):null;}if(_0x55a51a[_0xcffd('0x14')]('closed')){_0x55a51a[_0xcffd('0x12')]=moment()[_0xcffd('0x13')](_0xcffd('0x10'));_0x55a51a[_0xcffd('0xe')]=null;_0x55a51a['substatusAt']=null;}_0x187ca8(null,_0x55a51a);},'afterUpdate':function(_0x4921d1,_0xb5ffdc,_0x2e1837){var _0x1da405=_0x1a1bce[_0xcffd('0x15')];var _0x867e85=_0x4921d1['get']({'plain':!![]});if(_0x867e85[_0xcffd('0x11')]){return _0x1da405['MailMessage'][_0xcffd('0x16')]({'read':!![]},{'where':{'MailInteractionId':_0x867e85['id']}})[_0xcffd('0x17')](function(){_0x2e1837();})[_0xcffd('0x18')](function(_0x3e4a1d){_0x2e1837(_0x3e4a1d);});}else{_0x2e1837();}}},'charset':_0xcffd('0x19'),'collate':_0xcffd('0x1a')});};