Built motion from commit e0fa946e.|2.6.5
[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 _0x3316=['closedAt','YYYY-MM-DD\x20HH:mm:ss','changed','closed','models','get','MailMessage','update','then','catch','utf8mb4','utf8mb4_unicode_ci','lodash','util','api','moment','bluebird','rimraf','../../config/environment','./mailInteraction.attributes','mail_interactions','fti_mail_interactions','subject','FULLTEXT','substatus','substatusAt','format'];(function(_0x2faddb,_0xc18b78){var _0x273c05=function(_0x1a3785){while(--_0x1a3785){_0x2faddb['push'](_0x2faddb['shift']());}};_0x273c05(++_0xc18b78);}(_0x3316,0xe4));var _0x6331=function(_0x5e7e1a,_0x38a7c6){_0x5e7e1a=_0x5e7e1a-0x0;var _0x46b94f=_0x3316[_0x5e7e1a];return _0x46b94f;};'use strict';var _=require(_0x6331('0x0'));var util=require(_0x6331('0x1'));var logger=require('../../config/logger')(_0x6331('0x2'));var moment=require(_0x6331('0x3'));var BPromise=require(_0x6331('0x4'));var rp=require('request-promise');var fs=require('fs');var path=require('path');var rimraf=require(_0x6331('0x5'));var config=require(_0x6331('0x6'));var attributes=require(_0x6331('0x7'));module['exports']=function(_0x1069df,_0x4ebbc1){return _0x1069df['define']('MailInteraction',attributes,{'tableName':_0x6331('0x8'),'paranoid':![],'indexes':[{'name':_0x6331('0x9'),'fields':[_0x6331('0xa'),'to'],'type':_0x6331('0xb')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x38cad8,_0x153b8b,_0x2fdc5c){if(_0x38cad8[_0x6331('0xc')]){_0x38cad8[_0x6331('0xd')]=moment()[_0x6331('0xe')]('YYYY-MM-DD\x20HH:mm:ss');}if(_0x38cad8['closed']){_0x38cad8[_0x6331('0xf')]=moment()['format'](_0x6331('0x10'));}_0x2fdc5c(null,_0x153b8b);},'beforeUpdate':function(_0x32f6c8,_0x5280e8,_0x5ee741){if(_0x32f6c8['changed'](_0x6331('0xc'))){_0x32f6c8[_0x6331('0xd')]=_0x32f6c8[_0x6331('0xc')]?moment()['format'](_0x6331('0x10')):null;}if(_0x32f6c8[_0x6331('0x11')](_0x6331('0x12'))){_0x32f6c8['closedAt']=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');_0x32f6c8[_0x6331('0xc')]=null;_0x32f6c8['substatusAt']=null;}_0x5ee741(null,_0x32f6c8);},'afterUpdate':function(_0x57af66,_0x511bcf,_0x32a0aa){var _0x106830=_0x1069df[_0x6331('0x13')];var _0x19f26e=_0x57af66[_0x6331('0x14')]({'plain':!![]});if(_0x19f26e[_0x6331('0x12')]){return _0x106830[_0x6331('0x15')][_0x6331('0x16')]({'read':!![]},{'where':{'MailInteractionId':_0x19f26e['id']}})[_0x6331('0x17')](function(){_0x32a0aa();})[_0x6331('0x18')](function(_0xcf9a60){_0x32a0aa(_0xcf9a60);});}else{_0x32a0aa();}}},'charset':_0x6331('0x19'),'collate':_0x6331('0x1a')});};