23ded27c13ff3fcae1abbe6f3014495446e5ae0c
[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 _0x76a6=['exports','define','mail_interactions','fti_mail_interactions','subject','FULLTEXT','substatus','format','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','changed','substatusAt','models','get','MailMessage','then','utf8mb4','utf8mb4_unicode_ci','lodash','util','../../config/logger','bluebird','request-promise','rimraf','../../config/environment','./mailInteraction.attributes'];(function(_0x276f6d,_0x10a50e){var _0xda31b5=function(_0x5cfb89){while(--_0x5cfb89){_0x276f6d['push'](_0x276f6d['shift']());}};_0xda31b5(++_0x10a50e);}(_0x76a6,0xb5));var _0x676a=function(_0x422ac3,_0x48bbd4){_0x422ac3=_0x422ac3-0x0;var _0x53c0d4=_0x76a6[_0x422ac3];return _0x53c0d4;};'use strict';var _=require(_0x676a('0x0'));var util=require(_0x676a('0x1'));var logger=require(_0x676a('0x2'))('api');var moment=require('moment');var BPromise=require(_0x676a('0x3'));var rp=require(_0x676a('0x4'));var fs=require('fs');var path=require('path');var rimraf=require(_0x676a('0x5'));var config=require(_0x676a('0x6'));var attributes=require(_0x676a('0x7'));module[_0x676a('0x8')]=function(_0x4ec939,_0x449e2f){return _0x4ec939[_0x676a('0x9')]('MailInteraction',attributes,{'tableName':_0x676a('0xa'),'paranoid':![],'indexes':[{'name':_0x676a('0xb'),'fields':[_0x676a('0xc'),'to'],'type':_0x676a('0xd')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x34defd,_0x32a568,_0x4df681){if(_0x34defd[_0x676a('0xe')]){_0x34defd['substatusAt']=moment()[_0x676a('0xf')](_0x676a('0x10'));}if(_0x34defd[_0x676a('0x11')]){_0x34defd[_0x676a('0x12')]=moment()[_0x676a('0xf')](_0x676a('0x10'));}_0x4df681(null,_0x32a568);},'beforeUpdate':function(_0x231403,_0x4218ad,_0x368ed9){if(_0x231403[_0x676a('0x13')]('substatus')){_0x231403['substatusAt']=_0x231403[_0x676a('0xe')]?moment()[_0x676a('0xf')](_0x676a('0x10')):null;}if(_0x231403['changed'](_0x676a('0x11'))){_0x231403[_0x676a('0x12')]=moment()[_0x676a('0xf')](_0x676a('0x10'));_0x231403[_0x676a('0xe')]=null;_0x231403[_0x676a('0x14')]=null;}_0x368ed9(null,_0x231403);},'afterUpdate':function(_0x1a781c,_0x42391d,_0x598445){var _0x4c4d0f=_0x4ec939[_0x676a('0x15')];var _0xb77f97=_0x1a781c[_0x676a('0x16')]({'plain':!![]});if(_0xb77f97['closed']){return _0x4c4d0f[_0x676a('0x17')]['update']({'read':!![]},{'where':{'MailInteractionId':_0xb77f97['id']}})[_0x676a('0x18')](function(){_0x598445();})['catch'](function(_0x5b55d7){_0x598445(_0x5b55d7);});}else{_0x598445();}}},'charset':_0x676a('0x19'),'collate':_0x676a('0x1a')});};