85ff45b961bcad6fbb43c123e6c1a6aeb6163e67
[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 _0x3f97=['substatusAt','format','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','update','then','catch','utf8mb4','utf8mb4_unicode_ci','lodash','util','../../config/logger','moment','bluebird','request-promise','path','rimraf','../../config/environment','exports','define','mail_interactions','FULLTEXT','substatus'];(function(_0x4ef736,_0x57f928){var _0x30fbb6=function(_0x15f64c){while(--_0x15f64c){_0x4ef736['push'](_0x4ef736['shift']());}};_0x30fbb6(++_0x57f928);}(_0x3f97,0xb2));var _0x73f9=function(_0x527f65,_0x427fe0){_0x527f65=_0x527f65-0x0;var _0x2c4691=_0x3f97[_0x527f65];return _0x2c4691;};'use strict';var _=require(_0x73f9('0x0'));var util=require(_0x73f9('0x1'));var logger=require(_0x73f9('0x2'))('api');var moment=require(_0x73f9('0x3'));var BPromise=require(_0x73f9('0x4'));var rp=require(_0x73f9('0x5'));var fs=require('fs');var path=require(_0x73f9('0x6'));var rimraf=require(_0x73f9('0x7'));var config=require(_0x73f9('0x8'));var attributes=require('./mailInteraction.attributes');module[_0x73f9('0x9')]=function(_0x4a3cdc,_0x502923){return _0x4a3cdc[_0x73f9('0xa')]('MailInteraction',attributes,{'tableName':_0x73f9('0xb'),'paranoid':![],'indexes':[{'name':'fti_mail_interactions','fields':['subject','to'],'type':_0x73f9('0xc')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x430da5,_0x411fc9,_0x3de7b8){if(_0x430da5[_0x73f9('0xd')]){_0x430da5[_0x73f9('0xe')]=moment()[_0x73f9('0xf')](_0x73f9('0x10'));}if(_0x430da5[_0x73f9('0x11')]){_0x430da5[_0x73f9('0x12')]=moment()[_0x73f9('0xf')](_0x73f9('0x10'));}_0x3de7b8(null,_0x411fc9);},'beforeUpdate':function(_0x49c6a4,_0x34f7ce,_0x185983){if(_0x49c6a4['changed']('substatus')){_0x49c6a4[_0x73f9('0xe')]=_0x49c6a4[_0x73f9('0xd')]?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):null;}if(_0x49c6a4['changed']('closed')){_0x49c6a4[_0x73f9('0x12')]=moment()[_0x73f9('0xf')](_0x73f9('0x10'));_0x49c6a4[_0x73f9('0xd')]=null;_0x49c6a4[_0x73f9('0xe')]=null;}_0x185983(null,_0x49c6a4);},'afterUpdate':function(_0x3a3d28,_0x33020b,_0x4e9486){var _0x1fe6cd=_0x4a3cdc['models'];var _0x415d06=_0x3a3d28['get']({'plain':!![]});if(_0x415d06[_0x73f9('0x11')]){return _0x1fe6cd['MailMessage'][_0x73f9('0x13')]({'read':!![]},{'where':{'MailInteractionId':_0x415d06['id']}})[_0x73f9('0x14')](function(){_0x4e9486();})[_0x73f9('0x15')](function(_0x2edb32){_0x4e9486(_0x2edb32);});}else{_0x4e9486();}}},'charset':_0x73f9('0x16'),'collate':_0x73f9('0x17')});};