26ab017f528c9953175a1b0ff9cbd04a3765f87f
[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 _0xffbb=['update','catch','error','utf8mb4_unicode_ci','util','moment','bluebird','request-promise','path','rimraf','../../config/environment','./mailMessage.attributes','exports','messageId','fti_mail_messages','plainBody','subject','FULLTEXT','body','fromString','models','direction','toLowerCase','out','secret','isNil','UserId','MailInteraction','findOne','then'];(function(_0x23f81c,_0x3c7833){var _0x31582b=function(_0x85354f){while(--_0x85354f){_0x23f81c['push'](_0x23f81c['shift']());}};_0x31582b(++_0x3c7833);}(_0xffbb,0x14e));var _0xbffb=function(_0x113ac2,_0x13d922){_0x113ac2=_0x113ac2-0x0;var _0x290f25=_0xffbb[_0x113ac2];return _0x290f25;};'use strict';var _=require('lodash');var util=require(_0xbffb('0x0'));var logger=require('../../config/logger')('api');var moment=require(_0xbffb('0x1'));var BPromise=require(_0xbffb('0x2'));var rp=require(_0xbffb('0x3'));var htmlToText=require('html-to-text');var fs=require('fs');var path=require(_0xbffb('0x4'));var rimraf=require(_0xbffb('0x5'));var config=require(_0xbffb('0x6'));var attributes=require(_0xbffb('0x7'));module[_0xbffb('0x8')]=function(_0x24e230,_0x18d595){return _0x24e230['define']('MailMessage',attributes,{'tableName':'mail_messages','paranoid':![],'indexes':[{'name':_0xbffb('0x9'),'fields':['messageId']},{'name':_0xbffb('0xa'),'fields':[_0xbffb('0xb'),_0xbffb('0xc')],'type':_0xbffb('0xd')}],'timestamps':!![],'hooks':{'beforeCreate':function(_0x1b27f9,_0x294030,_0x4f1c81){if(_0x1b27f9[_0xbffb('0xe')]){_0x1b27f9[_0xbffb('0xb')]=htmlToText[_0xbffb('0xf')](_0x1b27f9[_0xbffb('0xe')],{'preserveNewlines':!![],'singleNewLineParagraphs':!![],'uppercaseHeadings':![],'noLinkBrackets':!![],'ignoreImage':!![]});}_0x4f1c81(null,_0x294030);},'afterCreate':function(_0x160436,_0x8326d9,_0x29287a){var _0x39e3ae=_0x24e230[_0xbffb('0x10')];var _0x1b195c=_0x160436['get']({'plain':!![]});if(_0x1b195c[_0xbffb('0x11')]['toLowerCase']()==='in'||_0x1b195c[_0xbffb('0x11')][_0xbffb('0x12')]()===_0xbffb('0x13')&&!_0x1b195c[_0xbffb('0x14')]&&!_[_0xbffb('0x15')](_0x1b195c[_0xbffb('0x16')])){_0x39e3ae[_0xbffb('0x17')][_0xbffb('0x18')]({'where':{'id':_0x1b195c['MailInteractionId']}})[_0xbffb('0x19')](function(_0x35e1d4){if(_0x35e1d4){_0x35e1d4[_0xbffb('0x1a')]({'lastMsgAt':_0x1b195c['createdAt'],'lastMsgDirection':_0x1b195c[_0xbffb('0x11')][_0xbffb('0x12')](),'lastMsgBody':_0x1b195c['body']});}})[_0xbffb('0x1b')](function(_0x1cb11c){console[_0xbffb('0x1c')](_0x1cb11c);});}_0x29287a();}},'charset':'utf8mb4','collate':_0xbffb('0x1d')});};