181cfca123e55676ca3ba773f995f7f82091f2df
[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 _0x402f=['closed','YYYY-MM-DD\x20HH:mm:ss','changed','closedAt','models','get','MailMessage','update','then','catch','utf8mb4_unicode_ci','lodash','../../config/logger','bluebird','request-promise','path','../../config/environment','exports','define','MailInteraction','subject','FULLTEXT','substatus','substatusAt','format'];(function(_0x26e0c6,_0x121234){var _0x590da4=function(_0x484e5a){while(--_0x484e5a){_0x26e0c6['push'](_0x26e0c6['shift']());}};_0x590da4(++_0x121234);}(_0x402f,0x6f));var _0xf402=function(_0x4ab023,_0x32de5e){_0x4ab023=_0x4ab023-0x0;var _0x903e2f=_0x402f[_0x4ab023];return _0x903e2f;};'use strict';var _=require(_0xf402('0x0'));var util=require('util');var logger=require(_0xf402('0x1'))('api');var moment=require('moment');var BPromise=require(_0xf402('0x2'));var rp=require(_0xf402('0x3'));var fs=require('fs');var path=require(_0xf402('0x4'));var rimraf=require('rimraf');var config=require(_0xf402('0x5'));var attributes=require('./mailInteraction.attributes');module[_0xf402('0x6')]=function(_0x270766,_0x3a1d11){return _0x270766[_0xf402('0x7')](_0xf402('0x8'),attributes,{'tableName':'mail_interactions','paranoid':![],'indexes':[{'name':'fti_mail_interactions','fields':[_0xf402('0x9'),'to'],'type':_0xf402('0xa')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x38b07c,_0xdc18e0,_0x18c918){if(_0x38b07c[_0xf402('0xb')]){_0x38b07c[_0xf402('0xc')]=moment()[_0xf402('0xd')]('YYYY-MM-DD\x20HH:mm:ss');}if(_0x38b07c[_0xf402('0xe')]){_0x38b07c['closedAt']=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');}_0x18c918(null,_0xdc18e0);},'beforeUpdate':function(_0x5d5426,_0x57734a,_0x46758d){if(_0x5d5426['changed']('substatus')){_0x5d5426['substatusAt']=_0x5d5426[_0xf402('0xb')]?moment()['format'](_0xf402('0xf')):null;}if(_0x5d5426[_0xf402('0x10')](_0xf402('0xe'))){_0x5d5426[_0xf402('0x11')]=moment()['format'](_0xf402('0xf'));_0x5d5426['substatus']=null;_0x5d5426[_0xf402('0xc')]=null;}_0x46758d(null,_0x5d5426);},'afterUpdate':function(_0x5e38d8,_0x5cc240,_0x545d1a){var _0xb45d00=_0x270766[_0xf402('0x12')];var _0xd406bf=_0x5e38d8[_0xf402('0x13')]({'plain':!![]});if(_0xd406bf[_0xf402('0xe')]){return _0xb45d00[_0xf402('0x14')][_0xf402('0x15')]({'read':!![]},{'where':{'MailInteractionId':_0xd406bf['id']}})[_0xf402('0x16')](function(){_0x545d1a();})[_0xf402('0x17')](function(_0x14c89c){_0x545d1a(_0x14c89c);});}else{_0x545d1a();}}},'charset':'utf8mb4','collate':_0xf402('0x18')});};