592c3b71491933c3747e4a9d9fd00cbd03527a46
[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 _0x3775=['substatus','substatusAt','closed','closedAt','YYYY-MM-DD\x20HH:mm:ss','format','changed','get','then','api','moment','request-promise','path','rimraf','../../config/environment','./mailInteraction.attributes','exports','define','MailInteraction','mail_interactions','fti_mail_interactions','FULLTEXT'];(function(_0x211632,_0x378e2e){var _0x5a1da1=function(_0x44aff2){while(--_0x44aff2){_0x211632['push'](_0x211632['shift']());}};_0x5a1da1(++_0x378e2e);}(_0x3775,0x77));var _0x5377=function(_0x55b93b,_0x10b243){_0x55b93b=_0x55b93b-0x0;var _0x4fa7a5=_0x3775[_0x55b93b];return _0x4fa7a5;};'use strict';var _=require('lodash');var util=require('util');var logger=require('../../config/logger')(_0x5377('0x0'));var moment=require(_0x5377('0x1'));var BPromise=require('bluebird');var rp=require(_0x5377('0x2'));var fs=require('fs');var path=require(_0x5377('0x3'));var rimraf=require(_0x5377('0x4'));var config=require(_0x5377('0x5'));var attributes=require(_0x5377('0x6'));module[_0x5377('0x7')]=function(_0xf9b5ab,_0x2928f7){return _0xf9b5ab[_0x5377('0x8')](_0x5377('0x9'),attributes,{'tableName':_0x5377('0xa'),'paranoid':![],'indexes':[{'name':_0x5377('0xb'),'fields':['subject','to'],'type':_0x5377('0xc')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x335af6,_0x241a26,_0xa5c588){if(_0x335af6[_0x5377('0xd')]){_0x335af6[_0x5377('0xe')]=moment()['format']('YYYY-MM-DD\x20HH:mm:ss');}if(_0x335af6[_0x5377('0xf')]){_0x335af6[_0x5377('0x10')]=moment()['format'](_0x5377('0x11'));}_0xa5c588(null,_0x241a26);},'beforeUpdate':function(_0x41b032,_0x5cd4bd,_0x20da3c){if(_0x41b032['changed'](_0x5377('0xd'))){_0x41b032[_0x5377('0xe')]=_0x41b032[_0x5377('0xd')]?moment()[_0x5377('0x12')](_0x5377('0x11')):null;}if(_0x41b032[_0x5377('0x13')](_0x5377('0xf'))){_0x41b032['closedAt']=moment()[_0x5377('0x12')](_0x5377('0x11'));_0x41b032[_0x5377('0xd')]=null;_0x41b032[_0x5377('0xe')]=null;}_0x20da3c(null,_0x41b032);},'afterUpdate':function(_0x53154a,_0x4cc343,_0x6c5186){var _0x324cea=_0xf9b5ab['models'];var _0x31588a=_0x53154a[_0x5377('0x14')]({'plain':!![]});if(_0x31588a[_0x5377('0xf')]){return _0x324cea['MailMessage']['update']({'read':!![]},{'where':{'MailInteractionId':_0x31588a['id']}})[_0x5377('0x15')](function(){_0x6c5186();})['catch'](function(_0x2019ac){_0x6c5186(_0x2019ac);});}else{_0x6c5186();}}},'charset':'utf8mb4','collate':'utf8mb4_unicode_ci'});};