73c51ca44c9988d5c401a2b4bb18cfec20963805
[motion2.git] / server / api / mailMessage / mailMessage.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 _0xc009=['get','direction','toLowerCase','out','secret','UserId','MailInteraction','findOne','then','createdAt','error','utf8mb4_unicode_ci','lodash','util','moment','bluebird','request-promise','html-to-text','path','../../config/environment','./mailMessage.attributes','exports','define','MailMessage','messageId','fti_mail_messages','plainBody','subject','FULLTEXT','body','models'];(function(_0x4d7241,_0x32aa1f){var _0x59d9e2=function(_0x30e273){while(--_0x30e273){_0x4d7241['push'](_0x4d7241['shift']());}};_0x59d9e2(++_0x32aa1f);}(_0xc009,0x104));var _0x9c00=function(_0x1a165f,_0xaf7889){_0x1a165f=_0x1a165f-0x0;var _0x17d3ae=_0xc009[_0x1a165f];return _0x17d3ae;};'use strict';var _=require(_0x9c00('0x0'));var util=require(_0x9c00('0x1'));var logger=require('../../config/logger')('api');var moment=require(_0x9c00('0x2'));var BPromise=require(_0x9c00('0x3'));var rp=require(_0x9c00('0x4'));var htmlToText=require(_0x9c00('0x5'));var fs=require('fs');var path=require(_0x9c00('0x6'));var rimraf=require('rimraf');var config=require(_0x9c00('0x7'));var attributes=require(_0x9c00('0x8'));module[_0x9c00('0x9')]=function(_0x2be6b9,_0x94c84e){return _0x2be6b9[_0x9c00('0xa')](_0x9c00('0xb'),attributes,{'tableName':'mail_messages','paranoid':![],'indexes':[{'name':_0x9c00('0xc'),'fields':[_0x9c00('0xc')]},{'name':_0x9c00('0xd'),'fields':[_0x9c00('0xe'),_0x9c00('0xf')],'type':_0x9c00('0x10')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x20936d,_0x25be63,_0x56ef2b){if(_0x20936d['body']){_0x20936d[_0x9c00('0xe')]=htmlToText['fromString'](_0x20936d[_0x9c00('0x11')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]});}_0x56ef2b(null,_0x25be63);},'afterCreate':function(_0x38a0e2,_0x33a1aa,_0x34e7de){var _0x46337f=_0x2be6b9[_0x9c00('0x12')];var _0x2beaf0=_0x38a0e2[_0x9c00('0x13')]({'plain':!![]});if(_0x2beaf0[_0x9c00('0x14')][_0x9c00('0x15')]()==='in'||_0x2beaf0[_0x9c00('0x14')][_0x9c00('0x15')]()===_0x9c00('0x16')&&!_0x2beaf0[_0x9c00('0x17')]&&!_['isNil'](_0x2beaf0[_0x9c00('0x18')])){_0x46337f[_0x9c00('0x19')][_0x9c00('0x1a')]({'where':{'id':_0x2beaf0['MailInteractionId']}})[_0x9c00('0x1b')](function(_0xf65bf5){if(_0xf65bf5){_0xf65bf5['update']({'lastMsgAt':_0x2beaf0[_0x9c00('0x1c')],'lastMsgDirection':_0x2beaf0[_0x9c00('0x14')][_0x9c00('0x15')]()});}})['catch'](function(_0x1df978){console[_0x9c00('0x1d')](_0x1df978);});}_0x34e7de();}},'charset':'utf8mb4','collate':_0x9c00('0x1e')});};