a1abf5e3100e7ddbffaf8598a5524cd8dbb609eb
[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 _0xe74d=['models','closed','MailMessage','then','catch','utf8mb4','util','moment','request-promise','path','./mailInteraction.attributes','define','MailInteraction','fti_mail_interactions','subject','substatusAt','format','YYYY-MM-DD\x20HH:mm:ss','closedAt','substatus','changed'];(function(_0x267d8d,_0xe90f65){var _0x11a98f=function(_0x5703c9){while(--_0x5703c9){_0x267d8d['push'](_0x267d8d['shift']());}};_0x11a98f(++_0xe90f65);}(_0xe74d,0x1e9));var _0xde74=function(_0x38fb8b,_0x70dd0a){_0x38fb8b=_0x38fb8b-0x0;var _0x1ec681=_0xe74d[_0x38fb8b];return _0x1ec681;};'use strict';var _=require('lodash');var util=require(_0xde74('0x0'));var logger=require('../../config/logger')('api');var moment=require(_0xde74('0x1'));var BPromise=require('bluebird');var rp=require(_0xde74('0x2'));var fs=require('fs');var path=require(_0xde74('0x3'));var rimraf=require('rimraf');var config=require('../../config/environment');var attributes=require(_0xde74('0x4'));module['exports']=function(_0x46ef77,_0x33a6af){return _0x46ef77[_0xde74('0x5')](_0xde74('0x6'),attributes,{'tableName':'mail_interactions','paranoid':![],'indexes':[{'name':_0xde74('0x7'),'fields':[_0xde74('0x8'),'to'],'type':'FULLTEXT'}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x11a988,_0x2e09e3,_0x16ccb8){if(_0x11a988['substatus']){_0x11a988[_0xde74('0x9')]=moment()[_0xde74('0xa')](_0xde74('0xb'));}if(_0x11a988['closed']){_0x11a988[_0xde74('0xc')]=moment()[_0xde74('0xa')]('YYYY-MM-DD\x20HH:mm:ss');}_0x16ccb8(null,_0x2e09e3);},'beforeUpdate':function(_0x17c278,_0x4cbc45,_0x2b704f){if(_0x17c278['changed']('substatus')){_0x17c278[_0xde74('0x9')]=_0x17c278[_0xde74('0xd')]?moment()[_0xde74('0xa')]('YYYY-MM-DD\x20HH:mm:ss'):null;}if(_0x17c278[_0xde74('0xe')]('closed')){_0x17c278['closedAt']=moment()[_0xde74('0xa')](_0xde74('0xb'));_0x17c278[_0xde74('0xd')]=null;_0x17c278[_0xde74('0x9')]=null;}_0x2b704f(null,_0x17c278);},'afterUpdate':function(_0x4cdfc8,_0x29d73f,_0x5af028){var _0x24e38c=_0x46ef77[_0xde74('0xf')];var _0x313fd1=_0x4cdfc8['get']({'plain':!![]});if(_0x313fd1[_0xde74('0x10')]){return _0x24e38c[_0xde74('0x11')]['update']({'read':!![]},{'where':{'MailInteractionId':_0x313fd1['id']}})[_0xde74('0x12')](function(){_0x5af028();})[_0xde74('0x13')](function(_0x384ccd){_0x5af028(_0x384ccd);});}else{_0x5af028();}}},'charset':_0xde74('0x14'),'collate':'utf8mb4_unicode_ci'});};