64dfa6a0e3ffa8cbd8e29c8bc56f845962320aa4
[motion2.git] / server / components / interaction / sql-utils.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 _0xbb60=['body','plainBody','keys','some','concat','createdAt','$gte','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','resolve','then','filter','capitalize','chat','Websites','Accounts','\x20IS\x20NOT\x20NULL','i.thirdDisposition','i.secondDisposition','i.disposition','unshift','i.substatus','closed','shift','join','Sequelize','SELECT','sequelize','query','toString','merge','fields','attributes','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','Account.email','CASE\x20WHEN\x20i.to\x20IS\x20NOT\x20NULL\x20AND\x20i.to\x20<>\x20\x27\x27\x20AND\x20i.to\x20NOT\x20LIKE\x20CONCAT(\x27%\x27,\x20a.email,\x20\x27%\x27)\x20THEN\x20TRIM(SUBSTRING_INDEX(i.to,\x20\x27<\x27,\x201))\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','contactName','i.id','i.createdAt','i.updatedAt','i.closedAt','i.attach','i.lastMsgAt','i.lastMsgDirection','i.to','i.ContactId','i.MailAccountId','i.UserId','CASE\x20WHEN\x20i.from\x20IS\x20NOT\x20NULL\x20AND\x20i.from\x20<>\x20\x27\x27\x20THEN\x20i.from\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','i.*','c.firstName','c.lastName','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','limit','offset','groupBy','Setting','findOne','all','clone','COUNT(*)','isEmpty','t.id\x20IN\x20?','QueryTypes','exports','lodash','squel','../parsers/advancedSearch','./update-interaction','updateInteraction','./utils','../../mysqldb','getAccountFK','role','agent','search','select','field','name','tools_tags','getInteractionFK','u.id','u.fullname','ui.','u.id\x20=\x20ui.UserId','length','where','\x20IN\x20?','map','getInteractionsTables','from','interactions','left_join','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','users','o.id\x20=\x20i.UserId','accounts','a.id\x20=\x20i.','messages','\x20=\x20i.id','interactionsTags','t.id\x20=\x20it.TagId','expr','getSelectedTags','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','unreadMessages\x20{OPERATOR}\x200','replace','{OPERATOR}','escapeLIKESpecialChars','i.id\x20LIKE\x20?','sms','whatsapp','includes','fax','i.fax\x20LIKE\x20?','openchannel','i.from\x20LIKE\x20?','mail','isEmail','c.email\x20LIKE\x20?','getFullTextValue','MATCH\x20(me.plainBody,\x20me.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','sqlOperator','conditions','buildExpression','type','default','text','value','start','end','unreadMessages','read','Contact','$substring','contact','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','Tag','split','tags','clause','and','ids','User','operator','user','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname,\x20o.internal)\x20LIKE\x20?','UserId'];(function(_0x42c7e7,_0x357294){var _0x4f17aa=function(_0x1d158d){while(--_0x1d158d){_0x42c7e7['push'](_0x42c7e7['shift']());}};_0x4f17aa(++_0x357294);}(_0xbb60,0x100));var _0x0bb6=function(_0x46f80c,_0x4dface){_0x46f80c=_0x46f80c-0x0;var _0x5b2d2f=_0xbb60[_0x46f80c];return _0x5b2d2f;};'use strict';var _=require(_0x0bb6('0x0'));var squel=require(_0x0bb6('0x1'));var as=require(_0x0bb6('0x2'));var qs=require('../parsers/qs');var updateInteraction=require(_0x0bb6('0x3'))[_0x0bb6('0x4')];var utils=require(_0x0bb6('0x5'));var db=require(_0x0bb6('0x6'))['db'];function skipInteractionsQuery(_0x56a4d7,_0x578330,_0x2e06ba){var _0x3a8d4d=![];var _0x25ecee=utils[_0x0bb6('0x7')](_0x56a4d7);if(_0x578330[_0x0bb6('0x8')]===_0x0bb6('0x9')&&!_0x2e06ba[_0x0bb6('0xa')]&&!_0x2e06ba[_0x25ecee]){_0x3a8d4d=!![];}return _0x3a8d4d;}function getTagsQuery(){return squel[_0x0bb6('0xb')]()[_0x0bb6('0xc')]('id')[_0x0bb6('0xc')](_0x0bb6('0xd'))[_0x0bb6('0xc')]('color')['from'](_0x0bb6('0xe'));}function getUsersQuery(_0x2f149c,_0xf85227){var _0x175bb8=utils[_0x0bb6('0xf')](_0x2f149c);var _0x58a45d='user_has_'+_0x2f149c+'_interactions';var _0x7741fa=squel[_0x0bb6('0xb')]()['field'](_0x0bb6('0x10'))[_0x0bb6('0xc')](_0x0bb6('0x11'))['field'](_0x0bb6('0x12')+_0x175bb8)['from'](_0x58a45d,'ui')['left_join']('users','u',_0x0bb6('0x13'));if(_0xf85227[_0x0bb6('0x14')]>0x0){_0x7741fa[_0x0bb6('0x15')](_0x0bb6('0x12')+_0x175bb8+_0x0bb6('0x16'),_[_0x0bb6('0x17')](_0xf85227,'id'));}return _0x7741fa;}function getInteractionsQuery(_0x2c75b6){var _0x32aaf4=utils[_0x0bb6('0x18')](_0x2c75b6);var _0x31c190=utils[_0x0bb6('0x7')](_0x2c75b6);var _0xee7f32=utils['getInteractionFK'](_0x2c75b6);return squel['select']()[_0x0bb6('0x19')](_0x32aaf4[_0x0bb6('0x1a')],'i')[_0x0bb6('0x1b')](_0x0bb6('0x1c'),'c',_0x0bb6('0x1d'))['left_join'](_0x0bb6('0x1e'),'o',_0x0bb6('0x1f'))[_0x0bb6('0x1b')](_0x32aaf4[_0x0bb6('0x20')],'a',_0x0bb6('0x21')+_0x31c190)[_0x0bb6('0x1b')](_0x32aaf4[_0x0bb6('0x22')],'me','me.'+_0xee7f32+_0x0bb6('0x23'))[_0x0bb6('0x1b')](_0x32aaf4[_0x0bb6('0x24')],'it','it.'+_0xee7f32+_0x0bb6('0x23'))[_0x0bb6('0x1b')](_0x0bb6('0xe'),'t',_0x0bb6('0x25'));}function getSqlClauses(){var _0x3310f2={'body':squel[_0x0bb6('0x26')](),'contact':squel[_0x0bb6('0x26')](),'default':squel[_0x0bb6('0x26')](),'fields':squel[_0x0bb6('0x26')](),'filter':squel[_0x0bb6('0x26')](),'read':squel[_0x0bb6('0x26')](),'tags':{'clause':squel['expr'](),'ids':null},'user':squel[_0x0bb6('0x26')]()};return _0x3310f2;}function parseTagParameter(_0x11f6a4){var _0x7569a3=squel['expr']();if(_0x11f6a4){var _0x2a16dc=utils[_0x0bb6('0x27')](_0x11f6a4);_0x2a16dc[_0x0bb6('0x28')](function(_0x18cfa6){_0x7569a3['or'](_0x0bb6('0x29'),'%,'+_0x18cfa6+',%');});}return _0x7569a3;}function parseReadParameter(_0x5384ef){var _0x5d7e24='';if(_0x5384ef){_0x5d7e24=_0x0bb6('0x2a');if(_0x5384ef==='1'){_0x5d7e24=_0x5d7e24[_0x0bb6('0x2b')]('{OPERATOR}','=');}else{_0x5d7e24=_0x5d7e24[_0x0bb6('0x2b')](_0x0bb6('0x2c'),'>');}}return _0x5d7e24;}function parseSearchFilter(_0x4a5e07,_0x912d7c){var _0x766ec2=squel[_0x0bb6('0x26')]();if(_0x912d7c){var _0x5bc6d8=_0x912d7c[_0x0bb6('0x2b')]('\x5c','\x5c\x5c')[_0x0bb6('0x2b')](/'/g,'\x27\x27');var _0x1a9d1e=qs[_0x0bb6('0x2d')](_0x5bc6d8);if(qs['isNumeric'](_0x5bc6d8)){_0x766ec2['or'](_0x0bb6('0x2e'),_0x1a9d1e+'%');if([_0x0bb6('0x2f'),_0x0bb6('0x30')][_0x0bb6('0x31')](_0x4a5e07)){_0x766ec2['or']('i.phone\x20LIKE\x20?',_0x1a9d1e+'%');}else if(_0x4a5e07===_0x0bb6('0x32')){_0x766ec2['or'](_0x0bb6('0x33'),_0x1a9d1e+'%');}else if(_0x4a5e07===_0x0bb6('0x34')){_0x766ec2['or'](_0x0bb6('0x35'),_0x1a9d1e+'%');}}else if(_0x4a5e07===_0x0bb6('0x36')&&qs[_0x0bb6('0x37')](_0x5bc6d8)){_0x766ec2['or'](_0x0bb6('0x38'),_0x1a9d1e+'%');}else{if(_0x4a5e07==='mail'){_0x766ec2['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x0bb6('0x39')](_0x5bc6d8,!![]))['or'](_0x0bb6('0x3a'),qs[_0x0bb6('0x39')](_0x5bc6d8));}else if(_0x4a5e07!=='fax'){_0x766ec2['or'](_0x0bb6('0x3b'),qs[_0x0bb6('0x39')](_0x5bc6d8));}_0x766ec2['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x0bb6('0x39')](_0x5bc6d8,!![]),null);}}return _0x766ec2;}function parseAdvancedSearchFilter(_0x5cd9d9,_0x5cc04f){var _0xee74dd=getSqlClauses();var _0x361d35=as['parseSearch'](_0x5cd9d9);var _0x536e3c=_0x361d35[_0x0bb6('0x3c')];for(var _0x21cda3=0x0;_0x21cda3<_0x361d35[_0x0bb6('0x3d')]['length'];_0x21cda3++){var _0x53d5c9=_0x361d35[_0x0bb6('0x3d')][_0x21cda3];var _0x13a482='i';var _0x599429=_['find'](_0x5cc04f,[_0x0bb6('0xd'),_0x53d5c9[_0x0bb6('0xc')]]);if(_0x599429){var _0x2c1c00=as[_0x0bb6('0x3e')](_0x13a482,_0x599429[_0x0bb6('0x3f')],_0x53d5c9);_0xee74dd[_0x0bb6('0x40')][_0x536e3c](_0x2c1c00[_0x0bb6('0x41')],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x43')],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x44')]);}else{switch(_0x53d5c9[_0x0bb6('0xc')]){case _0x0bb6('0x45'):var _0x398679=parseReadParameter(_0x53d5c9['value']);_0xee74dd[_0x0bb6('0x46')]['and'](_0x398679);break;case _0x0bb6('0x47'):if(_0x53d5c9['operator']===_0x0bb6('0x48')){if(_0x53d5c9[_0x0bb6('0x42')]['split']('\x20')['length']>0x1){_0xee74dd[_0x0bb6('0x49')][_0x536e3c]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x53d5c9[_0x0bb6('0x42')],!![]),null);}else{var _0x351b2e='%'+_0x53d5c9[_0x0bb6('0x42')]+'%';_0xee74dd['contact'][_0x536e3c](_0x0bb6('0x4a'),_0x351b2e,_0x351b2e,_0x351b2e);}}else{_0x599429=_[_0x0bb6('0x4b')](_0x5cc04f,[_0x0bb6('0xd'),_0x0bb6('0x4c')]);_0x53d5c9[_0x0bb6('0xc')]=_0x0bb6('0x4c');_0x2c1c00=as[_0x0bb6('0x3e')](_0x13a482,_0x599429[_0x0bb6('0x3f')],_0x53d5c9);_0xee74dd['contact'][_0x536e3c](_0x2c1c00['text'],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x43')],_0x2c1c00[_0x0bb6('0x42')]['end']);}break;case _0x0bb6('0x4d'):var _0x4fe920=_0x53d5c9[_0x0bb6('0x42')][_0x0bb6('0x4e')](',')[_0x0bb6('0x17')](function(_0x430b72){return Number(_0x430b72);});var _0x589f50=parseTagParameter(_0x4fe920);_0xee74dd[_0x0bb6('0x4f')][_0x0bb6('0x50')][_0x0bb6('0x51')](_0x589f50);_0xee74dd['tags'][_0x0bb6('0x52')]=_0x4fe920;break;case _0x0bb6('0x53'):if(_0x53d5c9[_0x0bb6('0x54')]===_0x0bb6('0x48')){_0xee74dd[_0x0bb6('0x55')][_0x536e3c](_0x0bb6('0x56'),'%'+_0x53d5c9['value']+'%',null);}else{_0x599429=_[_0x0bb6('0x4b')](_0x5cc04f,[_0x0bb6('0xd'),_0x0bb6('0x57')]);_0x53d5c9['field']=_0x0bb6('0x57');_0x2c1c00=as[_0x0bb6('0x3e')](_0x13a482,_0x599429[_0x0bb6('0x3f')],_0x53d5c9);_0xee74dd['user'][_0x536e3c](_0x2c1c00['text'],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x43')],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x44')]);}break;case _0x0bb6('0x58'):case _0x0bb6('0x59'):_0x2c1c00=as[_0x0bb6('0x3e')]('me',null,_0x53d5c9);_0xee74dd[_0x0bb6('0x58')][_0x536e3c](_0x2c1c00[_0x0bb6('0x41')],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x43')],_0x2c1c00[_0x0bb6('0x42')][_0x0bb6('0x44')]);break;}}}return _0xee74dd;}function parseModelFields(_0x3d9c22,_0x44b944,_0xe12c6f){var _0xe4add7=utils['getAccountFK'](_0x3d9c22);var _0x1212ea=squel['expr']();var _0x5af66b=_(_0x44b944)[_0x0bb6('0x5a')]()[_0x0bb6('0x17')](function(_0x48dcc3){return _[_0x0bb6('0x5b')](_0xe12c6f,['name',_0x48dcc3])?_0x48dcc3:undefined;})['compact']()['value']();if(_0x5af66b[_0x0bb6('0x14')]>0x0){_0x5af66b['forEach'](function(_0x103083){if(_0x103083===_0xe4add7){_0x1212ea[_0x0bb6('0x51')]('i.'+_0xe4add7+'\x20IN\x20?',[][_0x0bb6('0x5c')](_0x44b944[_0x103083]));}else if(_0x103083===_0x0bb6('0x5d')){var _0x55436f=JSON['parse'](_0x44b944[_0x103083])[_0x0bb6('0x5e')];var _0x24af7b=JSON[_0x0bb6('0x5f')](_0x44b944[_0x103083])[_0x0bb6('0x60')];_0x1212ea[_0x0bb6('0x51')](_0x0bb6('0x61'),_0x55436f,_0x24af7b);}else{if(_0x44b944[_0x103083]===_0x0bb6('0x62')){_0x1212ea[_0x0bb6('0x51')]('i.'+_0x103083+_0x0bb6('0x63'));}else{_0x1212ea[_0x0bb6('0x51')]('i.'+_0x103083+'\x20=\x20?',_0x44b944[_0x103083]);}}});}return _0x1212ea;}function parseQueryParameters(_0x2e3760,_0x9a7d9,_0xaf61ca){var _0x2c448c=getSqlClauses();return Promise[_0x0bb6('0x64')]()['then'](function(){return parseModelFields(_0x2e3760,_0x9a7d9,_0xaf61ca);})[_0x0bb6('0x65')](function(_0x384594){_0x2c448c['fields'][_0x0bb6('0x51')](_0x384594);return parseReadParameter(_0x9a7d9[_0x0bb6('0x46')]);})['then'](function(_0x5b86a0){_0x2c448c[_0x0bb6('0x46')]['and'](_0x5b86a0);return parseTagParameter(_0x9a7d9['tag']);})['then'](function(_0x1f59cf){_0x2c448c['tags']['clause'][_0x0bb6('0x51')](_0x1f59cf);return parseSearchFilter(_0x2e3760,_0x9a7d9[_0x0bb6('0x66')]);})[_0x0bb6('0x65')](function(_0x3005c5){_0x2c448c[_0x0bb6('0x66')]=_0x3005c5;return _0x2c448c;});}function checkAccountsRestrictions(_0x46f078,_0x2e8c84,_0x3b4b40){var _0x421722=utils['getAccountFK'](_0x46f078);var _0x3dd643='get'+_[_0x0bb6('0x67')](_0x46f078)+(_0x46f078===_0x0bb6('0x68')?_0x0bb6('0x69'):_0x0bb6('0x6a'));var _0x4583f1=squel[_0x0bb6('0x26')]();return Promise['resolve']()[_0x0bb6('0x65')](function(){if(_0x3b4b40[_0x0bb6('0xa')]&&_0x2e8c84['role']===_0x0bb6('0x9')){return _0x2e8c84[_0x3dd643]({'attributes':['id'],'raw':!![]});}})['then'](function(_0x2f2615){if(_0x2f2615){if(_0x2f2615[_0x0bb6('0x14')]===0x0){_0x4583f1[_0x0bb6('0x51')]('i.'+_0x421722+_0x0bb6('0x63'));}else{_0x4583f1[_0x0bb6('0x51')]('i.'+_0x421722+_0x0bb6('0x16'),_['map'](_0x2f2615,'id'));}}else if(!_0x3b4b40[_0x421722]){_0x4583f1[_0x0bb6('0x51')]('i.'+_0x421722+_0x0bb6('0x6b'));}})[_0x0bb6('0x65')](function(){return _0x4583f1;});}function getClosedOrderClause(_0x210920,_0x4cc598){var _0x1c9508='';var _0x377182=[_0x0bb6('0x6c'),_0x0bb6('0x6d'),_0x0bb6('0x6e')];if(_0x210920===_0x0bb6('0x36')){_0x377182[_0x0bb6('0x6f')]('i.substatus');}if(_0x4cc598['closed']==='0'&&_0x210920===_0x0bb6('0x36')){_0x1c9508=_0x0bb6('0x70');}else{if(_0x4cc598[_0x0bb6('0x71')]==='1'){_0x377182[_0x0bb6('0x72')]();}_0x1c9508='CONCAT_WS(\x27\x27,\x20'+_0x377182[_0x0bb6('0x73')](',\x20')+')';}return _0x1c9508;}function getFilteredInteractions(_0x1807ce,_0x23e566,_0x5bda15,_0x2760cf){var _0x632600=utils['getInteractionFK'](_0x1807ce);var _0x484c98=_['capitalize'](_0x1807ce)+'Interaction';var _0x2f803a=[];var _0x80301e=getTagsQuery();var _0x560d7f={'type':db[_0x0bb6('0x74')]['QueryTypes'][_0x0bb6('0x75')],'raw':!![]};var _0x152c82=[];var _0x2585ff=[];return db[_0x0bb6('0x76')][_0x0bb6('0x77')](_0x80301e[_0x0bb6('0x78')](),_0x560d7f)['then'](function(_0x5035f8){_0x2f803a=_['keyBy'](_0x5035f8,'id');_0x560d7f=_[_0x0bb6('0x79')](_0x560d7f,{'model':db[_0x484c98],'mapToModel':!![],'nest':!![]});if(_0x5bda15[_0x0bb6('0x7a')]){_0x2760cf[_0x0bb6('0x7b')][_0x0bb6('0x28')](function(_0x5265df){_0x23e566['field']('i.'+_0x5265df);});}else{_0x23e566['field'](_0x0bb6('0x7c'),_0x0bb6('0x45'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x7d'),_0x0bb6('0x7e'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x7f'),_0x0bb6('0x80'));if(_0x1807ce===_0x0bb6('0x36')){_0x23e566[_0x0bb6('0xc')]('a.email',_0x0bb6('0x81'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x82'),_0x0bb6('0x83'));_0x23e566['field'](_0x0bb6('0x84'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x85'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x86'));_0x23e566['field']('i.closed');_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x87'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x88'));_0x23e566['field'](_0x0bb6('0x89'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x8a'));_0x23e566[_0x0bb6('0xc')]('i.subject');_0x23e566[_0x0bb6('0xc')]('i.disposition');_0x23e566[_0x0bb6('0xc')]('i.secondDisposition');_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x6c'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x70'));_0x23e566['field'](_0x0bb6('0x8b'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x8c'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x8d'));_0x23e566['field'](_0x0bb6('0x8e'));}else if(_0x1807ce===_0x0bb6('0x34')){_0x23e566['field'](_0x0bb6('0x8f'),_0x0bb6('0x83'));}else{_0x23e566[_0x0bb6('0xc')]('CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','contactName');}if(_0x1807ce!==_0x0bb6('0x36')){_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x90'));}_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x91'),'Contact.firstName');_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x92'),'Contact.lastName');_0x23e566[_0x0bb6('0xc')]('c.email',_0x0bb6('0x93'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x94'),_0x0bb6('0x95'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x96'),_0x0bb6('0x97'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x98'),_0x0bb6('0x99'));_0x23e566[_0x0bb6('0xc')](_0x0bb6('0x9a'),_0x0bb6('0x9b'));_0x23e566['field'](_0x0bb6('0x9c'),_0x0bb6('0x9d'));_0x23e566['field'](_0x0bb6('0x9e'),_0x0bb6('0x9f'));}if(_0x2760cf['limit']){_0x23e566[_0x0bb6('0xa0')](_0x2760cf[_0x0bb6('0xa0')]);}if(_0x2760cf[_0x0bb6('0xa1')]){_0x23e566[_0x0bb6('0xa1')](_0x2760cf[_0x0bb6('0xa1')]);}return db[_0x0bb6('0x76')][_0x0bb6('0x77')](_0x23e566[_0x0bb6('0x78')](),_0x560d7f);})[_0x0bb6('0x65')](function(_0x2504af){_0x152c82=_0x2504af;var _0x32d3cc=getUsersQuery(_0x1807ce,_0x152c82);return db[_0x0bb6('0x76')][_0x0bb6('0x77')](_0x32d3cc[_0x0bb6('0x78')](),_0x560d7f);})[_0x0bb6('0x65')](function(_0x3b4c53){_0x2585ff=_[_0x0bb6('0xa2')](_0x3b4c53,_0x632600);if(_0x1807ce===_0x0bb6('0x36')){return db[_0x0bb6('0xa3')][_0x0bb6('0xa4')]({'attributes':['enableEmailPreview'],'raw':!![]});}})[_0x0bb6('0x65')](function(_0x1f6e8e){var _0x3ce9b1=_0x1f6e8e?_0x1f6e8e['enableEmailPreview']:undefined;var _0x2a7683=_0x152c82[_0x0bb6('0x17')](function(_0x1b9a3d){return updateInteraction(_0x1b9a3d,_0x2f803a,_0x2585ff,_0x3ce9b1);});return Promise[_0x0bb6('0xa5')](_0x2a7683);});}function countFilteredInteractions(_0x3dbdb3,_0x4bc53d){var _0xe9e316=_0x3dbdb3[_0x0bb6('0xa6')]();_0xe9e316[_0x0bb6('0xc')](_0x0bb6('0xa7'));_0xe9e316[_0x0bb6('0xc')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x0bb6('0x45'));var _0x4c9a2a=utils[_0x0bb6('0x27')](_0x4bc53d);if(!_[_0x0bb6('0xa8')](_0x4c9a2a)){_0xe9e316['where'](_0x0bb6('0xa9'),_0x4c9a2a);}var _0xa545fd={'type':db[_0x0bb6('0x74')][_0x0bb6('0xaa')]['SELECT'],'raw':!![]};return db[_0x0bb6('0x76')][_0x0bb6('0x77')](_0xe9e316[_0x0bb6('0x78')](),_0xa545fd);}module[_0x0bb6('0xab')]={'checkAccountsRestrictions':checkAccountsRestrictions,'countFilteredInteractions':countFilteredInteractions,'getClosedOrderClause':getClosedOrderClause,'getFilteredInteractions':getFilteredInteractions,'getInteractionsQuery':getInteractionsQuery,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipInteractionsQuery':skipInteractionsQuery};