Built motion from commit c738b9ac.|2.6.25
[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 _0x5e9a=['c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','a.id\x20=\x20i.','messages','me.','\x20=\x20i.id','interactionsTags','it.','t.id\x20=\x20it.TagId','expr','getSelectedTags','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','{OPERATOR}','replace','isNumeric','i.id\x20LIKE\x20?','sms','whatsapp','includes','i.phone\x20LIKE\x20?','fax','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)','parseSearch','conditions','find','buildExpression','type','text','value','start','end','unreadMessages','and','Contact','split','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','contact','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','Tag','tags','clause','ids','operator','$substring','user','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','plainBody','keys','some','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','then','fields','read','filter','get','chat','Websites','Accounts','resolve','role','i.thirdDisposition','i.secondDisposition','i.disposition','unshift','i.substatus','closed','shift','join','Interaction','QueryTypes','SELECT','sequelize','query','toString','keyBy','merge','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','a.key','Account.key','a.mandatoryDisposition','a.email','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.closed','i.closedAt','i.attach','i.lastMsgAt','i.subject','i.to','i.UserId','openchannel','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','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','i.*','c.firstName','c.lastName','Contact.lastName','c.email','c.phone','Contact.phone','Contact.mobile','c.fax','o.fullname','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','limit','offset','groupBy','Setting','findOne','enableEmailPreview','all','clone','COUNT(*)','isEmpty','Sequelize','squel','../parsers/advancedSearch','./update-interaction','updateInteraction','./utils','getAccountFK','agent','search','select','field','name','color','from','user_has_','_interactions','u.id','u.fullname','ui.','left_join','users','u.id\x20=\x20ui.UserId','length','where','\x20IN\x20?','map','getInteractionsTables','cm_contacts'];(function(_0xf50820,_0x56f041){var _0x2a9b10=function(_0x33f0f4){while(--_0x33f0f4){_0xf50820['push'](_0xf50820['shift']());}};_0x2a9b10(++_0x56f041);}(_0x5e9a,0x1d4));var _0xa5e9=function(_0xb1666b,_0x4c269e){_0xb1666b=_0xb1666b-0x0;var _0x110710=_0x5e9a[_0xb1666b];return _0x110710;};'use strict';var _=require('lodash');var squel=require(_0xa5e9('0x0'));var as=require(_0xa5e9('0x1'));var qs=require('../parsers/qs');var updateInteraction=require(_0xa5e9('0x2'))[_0xa5e9('0x3')];var utils=require(_0xa5e9('0x4'));var db=require('../../mysqldb')['db'];function skipInteractionsQuery(_0x24f6f9,_0x12939f,_0x4df7c7){var _0x591c86=![];var _0x43da4b=utils[_0xa5e9('0x5')](_0x24f6f9);if(_0x12939f['role']===_0xa5e9('0x6')&&!_0x4df7c7[_0xa5e9('0x7')]&&!_0x4df7c7[_0x43da4b]){_0x591c86=!![];}return _0x591c86;}function getTagsQuery(){return squel[_0xa5e9('0x8')]()['field']('id')[_0xa5e9('0x9')](_0xa5e9('0xa'))['field'](_0xa5e9('0xb'))[_0xa5e9('0xc')]('tools_tags');}function getUsersQuery(_0x560b2d,_0x30f33e){var _0x126d14=utils['getInteractionFK'](_0x560b2d);var _0x1954dd=_0xa5e9('0xd')+_0x560b2d+_0xa5e9('0xe');var _0x52275b=squel[_0xa5e9('0x8')]()['field'](_0xa5e9('0xf'))[_0xa5e9('0x9')](_0xa5e9('0x10'))['field'](_0xa5e9('0x11')+_0x126d14)[_0xa5e9('0xc')](_0x1954dd,'ui')[_0xa5e9('0x12')](_0xa5e9('0x13'),'u',_0xa5e9('0x14'));if(_0x30f33e[_0xa5e9('0x15')]>0x0){_0x52275b[_0xa5e9('0x16')](_0xa5e9('0x11')+_0x126d14+_0xa5e9('0x17'),_[_0xa5e9('0x18')](_0x30f33e,'id'));}return _0x52275b;}function getInteractionsQuery(_0x3e7601){var _0x1cf83b=utils[_0xa5e9('0x19')](_0x3e7601);var _0x280fce=utils[_0xa5e9('0x5')](_0x3e7601);var _0x3f59c8=utils['getInteractionFK'](_0x3e7601);return squel[_0xa5e9('0x8')]()[_0xa5e9('0xc')](_0x1cf83b['interactions'],'i')[_0xa5e9('0x12')](_0xa5e9('0x1a'),'c',_0xa5e9('0x1b'))[_0xa5e9('0x12')]('users','o',_0xa5e9('0x1c'))[_0xa5e9('0x12')](_0x1cf83b['accounts'],'a',_0xa5e9('0x1d')+_0x280fce)[_0xa5e9('0x12')](_0x1cf83b[_0xa5e9('0x1e')],'me',_0xa5e9('0x1f')+_0x3f59c8+_0xa5e9('0x20'))[_0xa5e9('0x12')](_0x1cf83b[_0xa5e9('0x21')],'it',_0xa5e9('0x22')+_0x3f59c8+_0xa5e9('0x20'))['left_join']('tools_tags','t',_0xa5e9('0x23'));}function getSqlClauses(){var _0x55e852={'body':squel[_0xa5e9('0x24')](),'contact':squel[_0xa5e9('0x24')](),'default':squel[_0xa5e9('0x24')](),'fields':squel['expr'](),'filter':squel['expr'](),'read':squel[_0xa5e9('0x24')](),'tags':{'clause':squel['expr'](),'ids':null},'user':squel[_0xa5e9('0x24')]()};return _0x55e852;}function parseTagParameter(_0x4db8c0){var _0x2ef880=squel[_0xa5e9('0x24')]();if(_0x4db8c0){var _0x4a7709=utils[_0xa5e9('0x25')](_0x4db8c0);_0x4a7709[_0xa5e9('0x26')](function(_0x1f2198){_0x2ef880['or'](_0xa5e9('0x27'),'%,'+_0x1f2198+',%');});}return _0x2ef880;}function parseReadParameter(_0x458ddc){var _0xe60d1a='';if(_0x458ddc){_0xe60d1a='unreadMessages\x20{OPERATOR}\x200';if(_0x458ddc==='1'){_0xe60d1a=_0xe60d1a['replace'](_0xa5e9('0x28'),'=');}else{_0xe60d1a=_0xe60d1a[_0xa5e9('0x29')](_0xa5e9('0x28'),'>');}}return _0xe60d1a;}function parseSearchFilter(_0x4415ee,_0x5b0ce2){var _0x332322=squel[_0xa5e9('0x24')]();if(_0x5b0ce2){var _0x183c94=_0x5b0ce2[_0xa5e9('0x29')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0xa5e9('0x2a')](_0x183c94)){_0x332322['or'](_0xa5e9('0x2b'),_0x183c94+'%');if([_0xa5e9('0x2c'),_0xa5e9('0x2d')][_0xa5e9('0x2e')](_0x4415ee)){_0x332322['or'](_0xa5e9('0x2f'),_0x183c94+'%');}else if(_0x4415ee===_0xa5e9('0x30')){_0x332322['or']('i.fax\x20LIKE\x20?',_0x183c94+'%');}else if(_0x4415ee==='openchannel'){_0x332322['or'](_0xa5e9('0x31'),_0x183c94+'%');}}else if(_0x4415ee===_0xa5e9('0x32')&&qs[_0xa5e9('0x33')](_0x183c94)){_0x332322['or'](_0xa5e9('0x34'),_0x183c94+'%');}else{if(_0x4415ee===_0xa5e9('0x32')){_0x332322['or']('MATCH\x20(i.to,\x20i.subject)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xa5e9('0x35')](_0x183c94,!![]))['or'](_0xa5e9('0x36'),qs['getFullTextValue'](_0x183c94));}else if(_0x4415ee!==_0xa5e9('0x30')){_0x332322['or'](_0xa5e9('0x37'),qs['getFullTextValue'](_0x183c94));}_0x332322['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x183c94,!![]),null);}}return _0x332322;}function parseAdvancedSearchFilter(_0x1534dd,_0x27db2a){var _0x125939=getSqlClauses();var _0x59b1f7=as[_0xa5e9('0x38')](_0x1534dd);var _0x58383e=_0x59b1f7['sqlOperator'];for(var _0x3b371a=0x0;_0x3b371a<_0x59b1f7[_0xa5e9('0x39')][_0xa5e9('0x15')];_0x3b371a++){var _0x268da8=_0x59b1f7[_0xa5e9('0x39')][_0x3b371a];var _0x21bd6d='i';var _0x59f9d4=_[_0xa5e9('0x3a')](_0x27db2a,['name',_0x268da8['field']]);if(_0x59f9d4){var _0x19ffe4=as[_0xa5e9('0x3b')](_0x21bd6d,_0x59f9d4[_0xa5e9('0x3c')],_0x268da8);_0x125939['default'][_0x58383e](_0x19ffe4[_0xa5e9('0x3d')],_0x19ffe4[_0xa5e9('0x3e')][_0xa5e9('0x3f')],_0x19ffe4['value'][_0xa5e9('0x40')]);}else{switch(_0x268da8[_0xa5e9('0x9')]){case _0xa5e9('0x41'):var _0x594685=parseReadParameter(_0x268da8[_0xa5e9('0x3e')]);_0x125939['read'][_0xa5e9('0x42')](_0x594685);break;case _0xa5e9('0x43'):if(_0x268da8['operator']==='$substring'){if(_0x268da8[_0xa5e9('0x3e')][_0xa5e9('0x44')]('\x20')[_0xa5e9('0x15')]>0x1){_0x125939['contact'][_0x58383e](_0xa5e9('0x45'),qs[_0xa5e9('0x35')](_0x268da8[_0xa5e9('0x3e')],!![]),null);}else{var _0x44e85a='%'+_0x268da8[_0xa5e9('0x3e')]+'%';_0x125939[_0xa5e9('0x46')][_0x58383e](_0xa5e9('0x47'),_0x44e85a,_0x44e85a,_0x44e85a);}}else{_0x59f9d4=_[_0xa5e9('0x3a')](_0x27db2a,[_0xa5e9('0xa'),_0xa5e9('0x48')]);_0x268da8[_0xa5e9('0x9')]=_0xa5e9('0x48');_0x19ffe4=as['buildExpression'](_0x21bd6d,_0x59f9d4[_0xa5e9('0x3c')],_0x268da8);_0x125939[_0xa5e9('0x46')][_0x58383e](_0x19ffe4[_0xa5e9('0x3d')],_0x19ffe4[_0xa5e9('0x3e')][_0xa5e9('0x3f')],_0x19ffe4[_0xa5e9('0x3e')]['end']);}break;case _0xa5e9('0x49'):var _0x1e5fc6=_0x268da8[_0xa5e9('0x3e')][_0xa5e9('0x44')](',')[_0xa5e9('0x18')](function(_0x76e01e){return Number(_0x76e01e);});var _0x4008b3=parseTagParameter(_0x1e5fc6);_0x125939[_0xa5e9('0x4a')][_0xa5e9('0x4b')][_0xa5e9('0x42')](_0x4008b3);_0x125939[_0xa5e9('0x4a')][_0xa5e9('0x4c')]=_0x1e5fc6;break;case'User':if(_0x268da8[_0xa5e9('0x4d')]===_0xa5e9('0x4e')){_0x125939[_0xa5e9('0x4f')][_0x58383e](_0xa5e9('0x50'),'%'+_0x268da8[_0xa5e9('0x3e')]+'%',null);}else{_0x59f9d4=_[_0xa5e9('0x3a')](_0x27db2a,[_0xa5e9('0xa'),_0xa5e9('0x51')]);_0x268da8[_0xa5e9('0x9')]=_0xa5e9('0x51');_0x19ffe4=as[_0xa5e9('0x3b')](_0x21bd6d,_0x59f9d4[_0xa5e9('0x3c')],_0x268da8);_0x125939[_0xa5e9('0x4f')][_0x58383e](_0x19ffe4['text'],_0x19ffe4[_0xa5e9('0x3e')][_0xa5e9('0x3f')],_0x19ffe4['value'][_0xa5e9('0x40')]);}break;case _0xa5e9('0x52'):case _0xa5e9('0x53'):_0x19ffe4=as[_0xa5e9('0x3b')]('me',null,_0x268da8);_0x125939[_0xa5e9('0x52')][_0x58383e](_0x19ffe4[_0xa5e9('0x3d')],_0x19ffe4[_0xa5e9('0x3e')]['start'],_0x19ffe4[_0xa5e9('0x3e')][_0xa5e9('0x40')]);break;}}}return _0x125939;}function parseModelFields(_0x47a654,_0x581411,_0x26dd84){var _0x2754c7=utils['getAccountFK'](_0x47a654);var _0x58613a=squel[_0xa5e9('0x24')]();var _0xf04b0c=_(_0x581411)[_0xa5e9('0x54')]()[_0xa5e9('0x18')](function(_0xfeae35){return _[_0xa5e9('0x55')](_0x26dd84,[_0xa5e9('0xa'),_0xfeae35])?_0xfeae35:undefined;})['compact']()['value']();if(_0xf04b0c[_0xa5e9('0x15')]>0x0){_0xf04b0c[_0xa5e9('0x26')](function(_0x1ffa1b){if(_0x1ffa1b===_0x2754c7){_0x58613a[_0xa5e9('0x42')]('i.'+_0x2754c7+_0xa5e9('0x17'),[][_0xa5e9('0x56')](_0x581411[_0x1ffa1b]));}else if(_0x1ffa1b===_0xa5e9('0x57')){var _0x5cb24f=JSON[_0xa5e9('0x58')](_0x581411[_0x1ffa1b])[_0xa5e9('0x59')];var _0x40738c=JSON[_0xa5e9('0x58')](_0x581411[_0x1ffa1b])[_0xa5e9('0x5a')];_0x58613a['and'](_0xa5e9('0x5b'),_0x5cb24f,_0x40738c);}else{if(_0x581411[_0x1ffa1b]===_0xa5e9('0x5c')){_0x58613a['and']('i.'+_0x1ffa1b+_0xa5e9('0x5d'));}else{_0x58613a[_0xa5e9('0x42')]('i.'+_0x1ffa1b+'\x20=\x20?',_0x581411[_0x1ffa1b]);}}});}return _0x58613a;}function parseQueryParameters(_0x2120cb,_0x417c27,_0x6c676c){var _0x1515e4=getSqlClauses();return Promise['resolve']()['then'](function(){return parseModelFields(_0x2120cb,_0x417c27,_0x6c676c);})[_0xa5e9('0x5e')](function(_0x4976cb){_0x1515e4[_0xa5e9('0x5f')][_0xa5e9('0x42')](_0x4976cb);return parseReadParameter(_0x417c27['read']);})[_0xa5e9('0x5e')](function(_0x2334b7){_0x1515e4[_0xa5e9('0x60')]['and'](_0x2334b7);return parseTagParameter(_0x417c27['tag']);})[_0xa5e9('0x5e')](function(_0x2a12f1){_0x1515e4[_0xa5e9('0x4a')][_0xa5e9('0x4b')][_0xa5e9('0x42')](_0x2a12f1);return parseSearchFilter(_0x2120cb,_0x417c27[_0xa5e9('0x61')]);})['then'](function(_0x27ad8a){_0x1515e4[_0xa5e9('0x61')]=_0x27ad8a;return _0x1515e4;});}function checkAccountsRestrictions(_0x5163b5,_0x233997,_0x1a99c0){var _0x570bfc=utils[_0xa5e9('0x5')](_0x5163b5);var _0x1b9d24=_0xa5e9('0x62')+_['capitalize'](_0x5163b5)+(_0x5163b5===_0xa5e9('0x63')?_0xa5e9('0x64'):_0xa5e9('0x65'));var _0x5508a1=squel[_0xa5e9('0x24')]();return Promise[_0xa5e9('0x66')]()['then'](function(){if(_0x1a99c0['search']&&_0x233997[_0xa5e9('0x67')]==='agent'){return _0x233997[_0x1b9d24]({'attributes':['id'],'raw':!![]});}})['then'](function(_0x557365){if(_0x557365){if(_0x557365[_0xa5e9('0x15')]===0x0){_0x5508a1['and']('i.'+_0x570bfc+_0xa5e9('0x5d'));}else{_0x5508a1[_0xa5e9('0x42')]('i.'+_0x570bfc+_0xa5e9('0x17'),_[_0xa5e9('0x18')](_0x557365,'id'));}}else if(!_0x1a99c0[_0x570bfc]){_0x5508a1[_0xa5e9('0x42')]('i.'+_0x570bfc+'\x20IS\x20NOT\x20NULL');}})[_0xa5e9('0x5e')](function(){return _0x5508a1;});}function getClosedOrderClause(_0x2e8635,_0x5c7057){var _0x475ced='';var _0x18dfaf=[_0xa5e9('0x68'),_0xa5e9('0x69'),_0xa5e9('0x6a')];if(_0x2e8635==='mail'){_0x18dfaf[_0xa5e9('0x6b')](_0xa5e9('0x6c'));}if(_0x5c7057[_0xa5e9('0x6d')]==='0'&&_0x2e8635===_0xa5e9('0x32')){_0x475ced=_0xa5e9('0x6c');}else{if(_0x5c7057[_0xa5e9('0x6d')]==='1'){_0x18dfaf[_0xa5e9('0x6e')]();}_0x475ced='CONCAT_WS(\x27\x27,\x20'+_0x18dfaf[_0xa5e9('0x6f')](',\x20')+')';}return _0x475ced;}function getFilteredInteractions(_0x1ad5bf,_0x36f863,_0x2893a1,_0x2bf8bd){var _0x2ab97c=utils['getInteractionFK'](_0x1ad5bf);var _0x24edca=_['capitalize'](_0x1ad5bf)+_0xa5e9('0x70');var _0x1edf77=[];var _0x10fd80=getTagsQuery();var _0x52e2fb={'type':db['Sequelize'][_0xa5e9('0x71')][_0xa5e9('0x72')],'raw':!![]};var _0x1b7818=[];var _0x282f1f=[];return db[_0xa5e9('0x73')][_0xa5e9('0x74')](_0x10fd80[_0xa5e9('0x75')](),_0x52e2fb)[_0xa5e9('0x5e')](function(_0x3032c6){_0x1edf77=_[_0xa5e9('0x76')](_0x3032c6,'id');_0x52e2fb=_[_0xa5e9('0x77')](_0x52e2fb,{'model':db[_0x24edca],'mapToModel':!![],'nest':!![]});if(_0x2893a1[_0xa5e9('0x5f')]){_0x2bf8bd['attributes'][_0xa5e9('0x26')](function(_0x2cad09){_0x36f863[_0xa5e9('0x9')]('i.'+_0x2cad09);});}else{_0x36f863['field'](_0xa5e9('0x78'),'unreadMessages');_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x79'),_0xa5e9('0x7a'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x7b'),'Account.mandatoryDisposition');if(_0x1ad5bf===_0xa5e9('0x32')){_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x7c'),_0xa5e9('0x7d'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x7e'),_0xa5e9('0x7f'));_0x36f863['field'](_0xa5e9('0x80'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x81'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x82'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x83'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x84'));_0x36f863['field'](_0xa5e9('0x85'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x86'));_0x36f863[_0xa5e9('0x9')]('i.lastMsgDirection');_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x87'));_0x36f863[_0xa5e9('0x9')]('i.disposition');_0x36f863['field'](_0xa5e9('0x69'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x68'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x6c'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x88'));_0x36f863[_0xa5e9('0x9')]('i.ContactId');_0x36f863['field']('i.MailAccountId');_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x89'));}else if(_0x1ad5bf===_0xa5e9('0x8a')){_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x8b'),_0xa5e9('0x7f'));}else{_0x36f863['field'](_0xa5e9('0x8c'),_0xa5e9('0x7f'));}if(_0x1ad5bf!==_0xa5e9('0x32')){_0x36f863['field'](_0xa5e9('0x8d'));}_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x8e'),'Contact.firstName');_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x8f'),_0xa5e9('0x90'));_0x36f863['field'](_0xa5e9('0x91'),'Contact.email');_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x92'),_0xa5e9('0x93'));_0x36f863[_0xa5e9('0x9')]('c.mobile',_0xa5e9('0x94'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x95'),'Contact.fax');_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x96'),'Owner.fullname');_0x36f863[_0xa5e9('0x9')]('o.internal',_0xa5e9('0x97'));_0x36f863[_0xa5e9('0x9')](_0xa5e9('0x98'),_0xa5e9('0x99'));}if(_0x2bf8bd[_0xa5e9('0x9a')]){_0x36f863['limit'](_0x2bf8bd['limit']);}if(_0x2bf8bd[_0xa5e9('0x9b')]){_0x36f863[_0xa5e9('0x9b')](_0x2bf8bd[_0xa5e9('0x9b')]);}return db[_0xa5e9('0x73')]['query'](_0x36f863[_0xa5e9('0x75')](),_0x52e2fb);})[_0xa5e9('0x5e')](function(_0x3a7736){_0x1b7818=_0x3a7736;var _0x2df884=getUsersQuery(_0x1ad5bf,_0x1b7818);return db[_0xa5e9('0x73')][_0xa5e9('0x74')](_0x2df884['toString'](),_0x52e2fb);})[_0xa5e9('0x5e')](function(_0x4e8b95){_0x282f1f=_[_0xa5e9('0x9c')](_0x4e8b95,_0x2ab97c);if(_0x1ad5bf===_0xa5e9('0x32')){return db[_0xa5e9('0x9d')][_0xa5e9('0x9e')]({'attributes':['enableEmailPreview'],'raw':!![]});}})['then'](function(_0x8cde62){var _0x3f95ae=_0x8cde62?_0x8cde62[_0xa5e9('0x9f')]:undefined;var _0x52effc=_0x1b7818[_0xa5e9('0x18')](function(_0x4cb883){return updateInteraction(_0x4cb883,_0x1edf77,_0x282f1f,_0x3f95ae);});return Promise[_0xa5e9('0xa0')](_0x52effc);});}function countFilteredInteractions(_0x1c45de,_0x10278c){var _0x50fdc4=_0x1c45de[_0xa5e9('0xa1')]();_0x50fdc4[_0xa5e9('0x9')](_0xa5e9('0xa2'));_0x50fdc4[_0xa5e9('0x9')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xa5e9('0x41'));var _0x5be9c9=utils['getSelectedTags'](_0x10278c);if(!_[_0xa5e9('0xa3')](_0x5be9c9)){_0x50fdc4[_0xa5e9('0x16')]('t.id\x20IN\x20?',_0x5be9c9);}var _0x28ceeb={'type':db[_0xa5e9('0xa4')]['QueryTypes']['SELECT'],'raw':!![]};return db['sequelize']['query'](_0x50fdc4[_0xa5e9('0x75')](),_0x28ceeb);}module['exports']={'checkAccountsRestrictions':checkAccountsRestrictions,'countFilteredInteractions':countFilteredInteractions,'getClosedOrderClause':getClosedOrderClause,'getFilteredInteractions':getFilteredInteractions,'getInteractionsQuery':getInteractionsQuery,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipInteractionsQuery':skipInteractionsQuery};