Built motion from commit 449495f6.|2.6.27
[motion2.git] / server / components / contacts / sql-utils.js
index 93596aa..a3e245f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xc607=['user','skip','keys','some','compact','Contact','User','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','uc.UserId\x20=\x20?','\x20=\x20?','then','tag','filter','resolve','search','agent','c.ListId\x20IS\x20NULL','c.ListId\x20IN\x20?','attributes','group','limit','offset','having','order','DESC','findAll','color','keyBy','Sequelize','SELECT','CmContact','sequelize','query','toString','Tags','clone','COUNT(*)','c.id','isEmpty','QueryTypes','exports','lodash','squel','../parsers/advancedSearch','../interaction/utils','../../mysqldb','role','ListId','autocomplete','true','select','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','left_join','uc.CmContactId\x20=\x20','.id','cm_contact_has_tags','tools_tags','t.id\x20=\x20ct.TagId','subqry','firstName','lastName','phone','mobile','fax','email','CompanyId','createdAt','updatedAt','deletedAt','TagIds','includes','push','forEach','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','getSelectedTags','replace','length','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','parseSearch','sqlOperator','conditions','find','name','dateOfBirth','castTo','DATE','buildExpression','type','default','value','start','end','Tag','split','map','tags','clause','and'];(function(_0xd024ea,_0x273358){var _0x1d27ad=function(_0x15e9d7){while(--_0x15e9d7){_0xd024ea['push'](_0xd024ea['shift']());}};_0x1d27ad(++_0x273358);}(_0xc607,0x170));var _0x7c60=function(_0x3193ed,_0x319aa5){_0x3193ed=_0x3193ed-0x0;var _0x42c0cb=_0xc607[_0x3193ed];return _0x42c0cb;};'use strict';var _=require(_0x7c60('0x0'));var squel=require(_0x7c60('0x1'));var as=require(_0x7c60('0x2'));var qs=require('../parsers/qs');var utils=require(_0x7c60('0x3'));var db=require(_0x7c60('0x4'))['db'];function skipContactsQuery(_0x5002ff,_0x3d472){var _0x48b83d=![];if(_0x5002ff[_0x7c60('0x5')]==='agent'&&!_0x3d472['search']&&!_0x3d472[_0x7c60('0x6')]&&_0x3d472[_0x7c60('0x7')]!==_0x7c60('0x8')){_0x48b83d=!![];}return _0x48b83d;}function getContactsSubquery(){return squel[_0x7c60('0x9')]()[_0x7c60('0xa')](_0x7c60('0xb'),'c')[_0x7c60('0xc')](_0x7c60('0xd'));}function applyJoinClauses(_0x58e234,_0x1364fc){var _0x1677c9=_0x1364fc?'c':'subqry';_0x58e234[_0x7c60('0xe')]('cm_user_has_contacts','uc',_0x7c60('0xf')+_0x1677c9+_0x7c60('0x10'))[_0x7c60('0xe')](_0x7c60('0x11'),'ct','ct.CmContactId\x20=\x20'+_0x1677c9+_0x7c60('0x10'))['left_join'](_0x7c60('0x12'),'t',_0x7c60('0x13'));return _0x58e234;}function addFieldsToQuery(_0x32ec8c,_0x577615,_0x9e9fb1,_0x5df686,_0x11f841){var _0x278b99=_0x11f841?'c':_0x7c60('0x14');if(!_0x577615){_0x577615=['id',_0x7c60('0x15'),_0x7c60('0x16'),_0x7c60('0x17'),_0x7c60('0x18'),_0x7c60('0x19'),_0x7c60('0x1a'),'ListId',_0x7c60('0x1b'),_0x7c60('0x1c'),_0x7c60('0x1d'),_0x7c60('0x1e'),_0x7c60('0x1f')];}else if(!_0x577615[_0x7c60('0x20')]('id')){_0x577615[_0x7c60('0x21')]('id');}var _0x2dd629=_0x9e9fb1&&_0x11f841||!_0x9e9fb1&&!_0x11f841;if(_0x5df686){_0x2dd629=_0x5df686&&_0x11f841||!_0x5df686&&!_0x11f841;}_0x577615[_0x7c60('0x22')](function(_0x33b9f9){if(_0x33b9f9==='TagIds'){if(_0x2dd629){_0x32ec8c[_0x7c60('0x23')](_0x7c60('0x24'),_0x33b9f9);}else if(_0x9e9fb1||_0x5df686){_0x32ec8c[_0x7c60('0x23')](_0x278b99+'.'+_0x33b9f9);}}else{_0x32ec8c[_0x7c60('0x23')](_0x278b99+'.'+_0x33b9f9);}});return _0x32ec8c;}function getSqlClauses(){var _0xf0e72a={'default':squel[_0x7c60('0x25')](),'fields':squel[_0x7c60('0x25')](),'filter':squel['expr'](),'tags':{'clause':squel['expr'](),'ids':null},'user':{'clause':squel[_0x7c60('0x25')](),'skip':![]}};return _0xf0e72a;}function parseTagParameter(_0x3992a0){var _0xcad4ad=squel[_0x7c60('0x25')]();if(_0x3992a0){var _0x4646b5=utils[_0x7c60('0x26')](_0x3992a0);_0x4646b5['forEach'](function(_0x372eb8){_0xcad4ad['or']('CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x372eb8+',%');});}return _0xcad4ad;}function parseSearchFilter(_0x16acf7){var _0x27294e=squel[_0x7c60('0x25')]();if(_0x16acf7){var _0x194603=_0x16acf7['replace']('\x5c','\x5c\x5c')[_0x7c60('0x27')](/'/g,'\x27\x27');if(_0x194603['split']('\x20')[_0x7c60('0x28')]>0x1){_0x27294e['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x7c60('0x29')](_0x194603,!![]),null);}else{if(qs[_0x7c60('0x2a')](_0x194603)){_0x27294e['or'](_0x7c60('0x2b'),_0x194603+'%');_0x27294e['or'](_0x7c60('0x2c'),_0x194603+'%');_0x27294e['or'](_0x7c60('0x2d'),_0x194603+'%');_0x27294e['or'](_0x7c60('0x2e'),_0x194603+'%');}else if(qs[_0x7c60('0x2f')](_0x194603)){_0x27294e['or']('c.email\x20LIKE\x20?',_0x194603+'%');}else{_0x27294e['or']('c.firstName\x20LIKE\x20?','%'+_0x194603+'%');_0x27294e['or']('c.lastName\x20LIKE\x20?','%'+_0x194603+'%');_0x27294e['or']('c.email\x20LIKE\x20?','%'+_0x194603+'%');}}}return _0x27294e;}function parseAdvancedSearchFilter(_0x1bc64b,_0x5cecb0){var _0x1bce5b=getSqlClauses();var _0x191cb0=as[_0x7c60('0x30')](_0x1bc64b);var _0x2974b3=_0x191cb0[_0x7c60('0x31')];for(var _0x9c703a=0x0;_0x9c703a<_0x191cb0['conditions']['length'];_0x9c703a++){var _0x452fba=_0x191cb0[_0x7c60('0x32')][_0x9c703a];var _0x715a4f='c';var _0x3d1e7f=_[_0x7c60('0x33')](_0x5cecb0,[_0x7c60('0x34'),_0x452fba[_0x7c60('0x23')]]);if(_0x3d1e7f){if(_0x452fba[_0x7c60('0x23')]===_0x7c60('0x35')||_0x3d1e7f['fieldType']==='datetime'){_0x452fba[_0x7c60('0x36')]=_0x7c60('0x37');}var _0x4ebbb0=as[_0x7c60('0x38')](_0x715a4f,_0x3d1e7f[_0x7c60('0x39')],_0x452fba);_0x1bce5b[_0x7c60('0x3a')][_0x2974b3](_0x4ebbb0['text'],_0x4ebbb0[_0x7c60('0x3b')][_0x7c60('0x3c')],_0x4ebbb0['value'][_0x7c60('0x3d')]);}else{if(_0x452fba['field']===_0x7c60('0x3e')){var _0x5566b6=_0x452fba[_0x7c60('0x3b')][_0x7c60('0x3f')](',')[_0x7c60('0x40')](function(_0x41d339){return Number(_0x41d339);});var _0x3f487b=parseTagParameter(_0x5566b6);_0x1bce5b[_0x7c60('0x41')][_0x7c60('0x42')][_0x7c60('0x43')](_0x3f487b);_0x1bce5b['tags']['ids']=_0x5566b6;}else if(_0x452fba[_0x7c60('0x23')]==='User'){_0x1bce5b['user']['clause'][_0x7c60('0x43')]('uc.UserId\x20=\x20?',_0x452fba[_0x7c60('0x3b')]);_0x1bce5b[_0x7c60('0x44')][_0x7c60('0x45')]=!![];}}}return _0x1bce5b;}function parseModelFields(_0x439521,_0x471c10){var _0x1b1da5=squel[_0x7c60('0x25')]();var _0x565eb3=_(_0x439521)[_0x7c60('0x46')]()['map'](function(_0x17e8bf){return _[_0x7c60('0x47')](_0x471c10,['name',_0x17e8bf])?_0x17e8bf:undefined;})[_0x7c60('0x48')]()[_0x7c60('0x3b')]();if(_0x439521[_0x7c60('0x49')]){_0x565eb3[_0x7c60('0x21')]('Contact');}if(_0x439521['User']){_0x565eb3[_0x7c60('0x21')](_0x7c60('0x4a'));}if(_0x565eb3[_0x7c60('0x28')]>0x0){_0x565eb3[_0x7c60('0x22')](function(_0x51ba62){if(_0x51ba62==='ListId'){_0x1b1da5[_0x7c60('0x43')]('c.ListId\x20IN\x20?',[]['concat'](_0x439521[_0x51ba62]));}else if(_0x51ba62==='Contact'){var _0x17d490='%'+_0x439521[_0x51ba62]+'%';_0x1b1da5['and'](_0x7c60('0x4b'),_0x17d490);}else if(_0x51ba62===_0x7c60('0x4a')){_0x1b1da5['and'](_0x7c60('0x4c'),_0x439521[_0x51ba62]);}else{_0x1b1da5[_0x7c60('0x43')]('c.'+_0x51ba62+_0x7c60('0x4d'),_0x439521[_0x51ba62]);}});}return _0x1b1da5;}function parseQueryParameters(_0xd5e88,_0x25c0f0){var _0x50b6cb=getSqlClauses();return Promise['resolve']()[_0x7c60('0x4e')](function(){return parseModelFields(_0xd5e88,_0x25c0f0);})[_0x7c60('0x4e')](function(_0x4a2bb1){_0x50b6cb['fields'][_0x7c60('0x43')](_0x4a2bb1);return parseTagParameter(_0xd5e88[_0x7c60('0x4f')]);})[_0x7c60('0x4e')](function(_0x5cbb0a){_0x50b6cb[_0x7c60('0x41')][_0x7c60('0x42')][_0x7c60('0x43')](_0x5cbb0a);return parseSearchFilter(_0xd5e88[_0x7c60('0x50')]);})['then'](function(_0x2147fd){_0x50b6cb['filter']=_0x2147fd;return _0x50b6cb;});}function checkListsRestrictions(_0x3b009f,_0x2a761d,_0x471c3b){var _0xece1f4=squel[_0x7c60('0x25')]();return Promise[_0x7c60('0x51')]()[_0x7c60('0x4e')](function(){if(_0x2a761d[_0x7c60('0x52')]&&_0x3b009f[_0x7c60('0x5')]===_0x7c60('0x53')&&!_0x471c3b){return _0x3b009f['getLists']({'attributes':['id'],'raw':!![]});}})[_0x7c60('0x4e')](function(_0x373e14){if(_0x373e14){if(_0x373e14[_0x7c60('0x28')]===0x0){_0xece1f4[_0x7c60('0x43')](_0x7c60('0x54'));}else{_0xece1f4['and'](_0x7c60('0x55'),_['map'](_0x373e14,'id'));}}})[_0x7c60('0x4e')](function(){return _0xece1f4;});}function buildContactsQuery(_0x1b31dc,_0x3900b1,_0x3ac845,_0x1dc20a,_0xed107,_0x531219){if(_0x3900b1){_0x3900b1=_0x3ac845[_0x7c60('0x56')];}_0x1b31dc=addFieldsToQuery(_0x1b31dc,_0x3900b1,_0x1dc20a,_0x531219,!![]);var _0x7bbe42=squel[_0x7c60('0x9')]();_0x7bbe42=addFieldsToQuery(_0x7bbe42,_0x3900b1,_0x1dc20a,_0x531219,![]);if(_0x1dc20a||_0x531219){_0x1b31dc=applyJoinClauses(_0x1b31dc,!![]);_0x1b31dc[_0x7c60('0x57')]('c.id');if(_0x3ac845[_0x7c60('0x58')]){_0x7bbe42[_0x7c60('0x58')](_0x3ac845[_0x7c60('0x58')]);}if(_0x3ac845[_0x7c60('0x59')]){_0x7bbe42['offset'](_0x3ac845[_0x7c60('0x59')]);}}else{_0x7bbe42=applyJoinClauses(_0x7bbe42,![]);_0x7bbe42['group']('subqry.id');if(_0x3ac845[_0x7c60('0x58')]){_0x1b31dc[_0x7c60('0x58')](_0x3ac845['limit']);}if(_0x3ac845['offset']){_0x1b31dc['offset'](_0x3ac845[_0x7c60('0x59')]);}}_0x7bbe42[_0x7c60('0x5a')](_0xed107);if(_0x3ac845[_0x7c60('0x5b')]){_0x3ac845[_0x7c60('0x5b')][_0x7c60('0x22')](function(_0x4f351b){_0x1b31dc[_0x7c60('0x5b')]('c.'+_0x4f351b[0x0],_0x4f351b[0x1]===_0x7c60('0x5c')?![]:!![]);_0x7bbe42[_0x7c60('0x5b')]('subqry.'+_0x4f351b[0x0],_0x4f351b[0x1]===_0x7c60('0x5c')?![]:!![]);});}_0x7bbe42['from'](_0x1b31dc,_0x7c60('0x14'));return _0x7bbe42;}function getFilteredContacts(_0x861b3b){var _0x41f767=[];return db[_0x7c60('0x3e')][_0x7c60('0x5d')]({'attributes':['id',_0x7c60('0x34'),_0x7c60('0x5e')],'raw':!![]})[_0x7c60('0x4e')](function(_0x21cfe6){_0x41f767=_[_0x7c60('0x5f')](_0x21cfe6,'id');var _0x1758d8={'type':db[_0x7c60('0x60')]['QueryTypes'][_0x7c60('0x61')],'model':db[_0x7c60('0x62')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0x7c60('0x63')][_0x7c60('0x64')](_0x861b3b[_0x7c60('0x65')](),_0x1758d8);})['then'](function(_0x12b941){_0x12b941[_0x7c60('0x22')](function(_0x5499db){if(_0x5499db['TagIds']){_0x5499db[_0x7c60('0x66')]=[];_0x5499db['TagIds'][_0x7c60('0x3f')](',')[_0x7c60('0x22')](function(_0xe64a4c){_0x5499db[_0x7c60('0x66')][_0x7c60('0x21')](_0x41f767[_0xe64a4c]);});}delete _0x5499db[_0x7c60('0x1f')];});return _0x12b941;});}function countFilteredContacts(_0x5ca8f2,_0x584586){var _0x13a9e1=_0x5ca8f2[_0x7c60('0x67')]();_0x13a9e1[_0x7c60('0x23')](_0x7c60('0x68'));_0x13a9e1=applyJoinClauses(_0x13a9e1,!![]);_0x5ca8f2[_0x7c60('0x57')](_0x7c60('0x69'));var _0x41eee7=utils[_0x7c60('0x26')](_0x584586);if(!_[_0x7c60('0x6a')](_0x41eee7)){_0x13a9e1[_0x7c60('0xc')]('t.id\x20IN\x20?',_0x41eee7);}var _0x471e11={'type':db[_0x7c60('0x60')][_0x7c60('0x6b')][_0x7c60('0x61')],'raw':!![]};return db['sequelize'][_0x7c60('0x64')](_0x13a9e1[_0x7c60('0x65')](),_0x471e11)[_0x7c60('0x4e')](function(_0x5293fb){return _0x5293fb[0x0][_0x7c60('0x68')];});}module[_0x7c60('0x6c')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file
+var _0xd9bd=['../interaction/utils','../../mysqldb','role','agent','search','ListId','autocomplete','true','from','cm_contacts','c.deletedAt\x20IS\x20NULL','subqry','cm_user_has_contacts','.id','left_join','cm_contact_has_tags','ct.CmContactId\x20=\x20','tools_tags','firstName','lastName','mobile','email','CompanyId','createdAt','updatedAt','TagIds','includes','push','forEach','field','expr','getSelectedTags','CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','replace','split','length','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch','conditions','find','name','dateOfBirth','datetime','castTo','DATE','buildExpression','type','default','text','start','value','map','tags','clause','and','ids','user','uc.UserId\x20=\x20?','skip','keys','some','compact','Contact','User','c.ListId\x20IN\x20?','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','resolve','then','attributes','select','group','c.id','limit','offset','subqry.id','order','DESC','subqry.','Tag','findAll','color','keyBy','SELECT','CmContact','sequelize','toString','Tags','clone','COUNT(*)','isEmpty','where','t.id\x20IN\x20?','Sequelize','QueryTypes','query','exports','lodash','squel','../parsers/advancedSearch','../parsers/qs'];(function(_0x5e36d1,_0x471178){var _0x950b9e=function(_0x1872f3){while(--_0x1872f3){_0x5e36d1['push'](_0x5e36d1['shift']());}};_0x950b9e(++_0x471178);}(_0xd9bd,0xd8));var _0xdd9b=function(_0x3a40d6,_0x119aeb){_0x3a40d6=_0x3a40d6-0x0;var _0x5cbed3=_0xd9bd[_0x3a40d6];return _0x5cbed3;};'use strict';var _=require(_0xdd9b('0x0'));var squel=require(_0xdd9b('0x1'));var as=require(_0xdd9b('0x2'));var qs=require(_0xdd9b('0x3'));var utils=require(_0xdd9b('0x4'));var db=require(_0xdd9b('0x5'))['db'];function skipContactsQuery(_0x5d45b8,_0x5efbee){var _0x95124d=![];if(_0x5d45b8[_0xdd9b('0x6')]===_0xdd9b('0x7')&&!_0x5efbee[_0xdd9b('0x8')]&&!_0x5efbee[_0xdd9b('0x9')]&&_0x5efbee[_0xdd9b('0xa')]!==_0xdd9b('0xb')){_0x95124d=!![];}return _0x95124d;}function getContactsSubquery(){return squel['select']()[_0xdd9b('0xc')](_0xdd9b('0xd'),'c')['where'](_0xdd9b('0xe'));}function applyJoinClauses(_0xa0b47f,_0x4e759f){var _0xdc0faf=_0x4e759f?'c':_0xdd9b('0xf');_0xa0b47f['left_join'](_0xdd9b('0x10'),'uc','uc.CmContactId\x20=\x20'+_0xdc0faf+_0xdd9b('0x11'))[_0xdd9b('0x12')](_0xdd9b('0x13'),'ct',_0xdd9b('0x14')+_0xdc0faf+_0xdd9b('0x11'))[_0xdd9b('0x12')](_0xdd9b('0x15'),'t','t.id\x20=\x20ct.TagId');return _0xa0b47f;}function addFieldsToQuery(_0x87a6fa,_0x373121,_0x3c01c0,_0x727828,_0x4ec8a4){var _0x1170d6=_0x4ec8a4?'c':_0xdd9b('0xf');if(!_0x373121){_0x373121=['id',_0xdd9b('0x16'),_0xdd9b('0x17'),'phone',_0xdd9b('0x18'),'fax',_0xdd9b('0x19'),'ListId',_0xdd9b('0x1a'),_0xdd9b('0x1b'),_0xdd9b('0x1c'),'deletedAt',_0xdd9b('0x1d')];}else if(!_0x373121[_0xdd9b('0x1e')]('id')){_0x373121[_0xdd9b('0x1f')]('id');}var _0x1687c5=_0x3c01c0&&_0x4ec8a4||!_0x3c01c0&&!_0x4ec8a4;if(_0x727828){_0x1687c5=_0x727828&&_0x4ec8a4||!_0x727828&&!_0x4ec8a4;}_0x373121[_0xdd9b('0x20')](function(_0x4f9086){if(_0x4f9086==='TagIds'){if(_0x1687c5){_0x87a6fa[_0xdd9b('0x21')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x4f9086);}else if(_0x3c01c0||_0x727828){_0x87a6fa['field'](_0x1170d6+'.'+_0x4f9086);}}else{_0x87a6fa[_0xdd9b('0x21')](_0x1170d6+'.'+_0x4f9086);}});return _0x87a6fa;}function getSqlClauses(){var _0x1a9341={'default':squel[_0xdd9b('0x22')](),'fields':squel[_0xdd9b('0x22')](),'filter':squel[_0xdd9b('0x22')](),'tags':{'clause':squel['expr'](),'ids':null},'user':{'clause':squel[_0xdd9b('0x22')](),'skip':![]}};return _0x1a9341;}function parseTagParameter(_0x450dd3){var _0x13f275=squel[_0xdd9b('0x22')]();if(_0x450dd3){var _0x3b2808=utils[_0xdd9b('0x23')](_0x450dd3);_0x3b2808[_0xdd9b('0x20')](function(_0x59d15d){_0x13f275['or'](_0xdd9b('0x24'),'%,'+_0x59d15d+',%');});}return _0x13f275;}function parseSearchFilter(_0x1a06db){var _0x2c0574=squel['expr']();if(_0x1a06db){var _0x15f236=_0x1a06db[_0xdd9b('0x25')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(_0x15f236[_0xdd9b('0x26')]('\x20')[_0xdd9b('0x27')]>0x1){_0x2c0574['or'](_0xdd9b('0x28'),qs[_0xdd9b('0x29')](_0x15f236,!![]),null);}else{if(qs[_0xdd9b('0x2a')](_0x15f236)){_0x2c0574['or'](_0xdd9b('0x2b'),_0x15f236+'%');_0x2c0574['or'](_0xdd9b('0x2c'),_0x15f236+'%');_0x2c0574['or']('c.mobile\x20LIKE\x20?',_0x15f236+'%');_0x2c0574['or'](_0xdd9b('0x2d'),_0x15f236+'%');}else if(qs[_0xdd9b('0x2e')](_0x15f236)){_0x2c0574['or'](_0xdd9b('0x2f'),_0x15f236+'%');}else{_0x2c0574['or']('c.firstName\x20LIKE\x20?','%'+_0x15f236+'%');_0x2c0574['or'](_0xdd9b('0x30'),'%'+_0x15f236+'%');_0x2c0574['or']('c.email\x20LIKE\x20?','%'+_0x15f236+'%');}}}return _0x2c0574;}function parseAdvancedSearchFilter(_0x377ddb,_0x6761a1){var _0x4a593d=getSqlClauses();var _0x5454f8=as[_0xdd9b('0x31')](_0x377ddb);var _0xdaf3ed=_0x5454f8['sqlOperator'];for(var _0x2963e4=0x0;_0x2963e4<_0x5454f8[_0xdd9b('0x32')][_0xdd9b('0x27')];_0x2963e4++){var _0x35f103=_0x5454f8[_0xdd9b('0x32')][_0x2963e4];var _0x1eff3d='c';var _0x58eecf=_[_0xdd9b('0x33')](_0x6761a1,[_0xdd9b('0x34'),_0x35f103['field']]);if(_0x58eecf){if(_0x35f103[_0xdd9b('0x21')]===_0xdd9b('0x35')||_0x58eecf['fieldType']===_0xdd9b('0x36')){_0x35f103[_0xdd9b('0x37')]=_0xdd9b('0x38');}var _0x53257d=as[_0xdd9b('0x39')](_0x1eff3d,_0x58eecf[_0xdd9b('0x3a')],_0x35f103);_0x4a593d[_0xdd9b('0x3b')][_0xdaf3ed](_0x53257d[_0xdd9b('0x3c')],_0x53257d['value'][_0xdd9b('0x3d')],_0x53257d[_0xdd9b('0x3e')]['end']);}else{if(_0x35f103[_0xdd9b('0x21')]==='Tag'){var _0x339947=_0x35f103[_0xdd9b('0x3e')]['split'](',')[_0xdd9b('0x3f')](function(_0x3f24f7){return Number(_0x3f24f7);});var _0x5a5825=parseTagParameter(_0x339947);_0x4a593d[_0xdd9b('0x40')][_0xdd9b('0x41')][_0xdd9b('0x42')](_0x5a5825);_0x4a593d[_0xdd9b('0x40')][_0xdd9b('0x43')]=_0x339947;}else if(_0x35f103[_0xdd9b('0x21')]==='User'){_0x4a593d[_0xdd9b('0x44')][_0xdd9b('0x41')][_0xdd9b('0x42')](_0xdd9b('0x45'),_0x35f103['value']);_0x4a593d[_0xdd9b('0x44')][_0xdd9b('0x46')]=!![];}}}return _0x4a593d;}function parseModelFields(_0x3073d0,_0x5c704b){var _0x356986=squel['expr']();var _0x11dbdd=_(_0x3073d0)[_0xdd9b('0x47')]()['map'](function(_0x1231eb){return _[_0xdd9b('0x48')](_0x5c704b,[_0xdd9b('0x34'),_0x1231eb])?_0x1231eb:undefined;})[_0xdd9b('0x49')]()['value']();if(_0x3073d0['Contact']){_0x11dbdd[_0xdd9b('0x1f')](_0xdd9b('0x4a'));}if(_0x3073d0[_0xdd9b('0x4b')]){_0x11dbdd['push'](_0xdd9b('0x4b'));}if(_0x11dbdd[_0xdd9b('0x27')]>0x0){_0x11dbdd[_0xdd9b('0x20')](function(_0x26b33d){if(_0x26b33d===_0xdd9b('0x9')){_0x356986['and'](_0xdd9b('0x4c'),[][_0xdd9b('0x4d')](_0x3073d0[_0x26b33d]));}else if(_0x26b33d===_0xdd9b('0x4a')){var _0x2cb69c='%'+_0x3073d0[_0x26b33d]+'%';_0x356986['and'](_0xdd9b('0x4e'),_0x2cb69c);}else if(_0x26b33d==='User'){_0x356986[_0xdd9b('0x42')](_0xdd9b('0x45'),_0x3073d0[_0x26b33d]);}else{_0x356986['and']('c.'+_0x26b33d+_0xdd9b('0x4f'),_0x3073d0[_0x26b33d]);}});}return _0x356986;}function parseQueryParameters(_0x1ffcf6,_0x448a2c){var _0x369527=getSqlClauses();return Promise[_0xdd9b('0x50')]()[_0xdd9b('0x51')](function(){return parseModelFields(_0x1ffcf6,_0x448a2c);})['then'](function(_0x464792){_0x369527['fields']['and'](_0x464792);return parseTagParameter(_0x1ffcf6['tag']);})['then'](function(_0xaced71){_0x369527[_0xdd9b('0x40')]['clause'][_0xdd9b('0x42')](_0xaced71);return parseSearchFilter(_0x1ffcf6['filter']);})['then'](function(_0x4cb8d7){_0x369527['filter']=_0x4cb8d7;return _0x369527;});}function checkListsRestrictions(_0x5d54d7,_0x507411,_0x2a4e69){var _0x18af71=squel['expr']();return Promise[_0xdd9b('0x50')]()[_0xdd9b('0x51')](function(){if(_0x507411['search']&&_0x5d54d7['role']==='agent'&&!_0x2a4e69){return _0x5d54d7['getLists']({'attributes':['id'],'raw':!![]});}})[_0xdd9b('0x51')](function(_0x1dd1e6){if(_0x1dd1e6){if(_0x1dd1e6[_0xdd9b('0x27')]===0x0){_0x18af71[_0xdd9b('0x42')]('c.ListId\x20IS\x20NULL');}else{_0x18af71[_0xdd9b('0x42')]('c.ListId\x20IN\x20?',_[_0xdd9b('0x3f')](_0x1dd1e6,'id'));}}})['then'](function(){return _0x18af71;});}function buildContactsQuery(_0x1e8b8f,_0x187ccd,_0x178e0c,_0x43350b,_0x2b603c,_0x57a442){if(_0x187ccd){_0x187ccd=_0x178e0c[_0xdd9b('0x52')];}_0x1e8b8f=addFieldsToQuery(_0x1e8b8f,_0x187ccd,_0x43350b,_0x57a442,!![]);var _0x2b3f97=squel[_0xdd9b('0x53')]();_0x2b3f97=addFieldsToQuery(_0x2b3f97,_0x187ccd,_0x43350b,_0x57a442,![]);if(_0x43350b||_0x57a442){_0x1e8b8f=applyJoinClauses(_0x1e8b8f,!![]);_0x1e8b8f[_0xdd9b('0x54')](_0xdd9b('0x55'));if(_0x178e0c[_0xdd9b('0x56')]){_0x2b3f97[_0xdd9b('0x56')](_0x178e0c[_0xdd9b('0x56')]);}if(_0x178e0c[_0xdd9b('0x57')]){_0x2b3f97[_0xdd9b('0x57')](_0x178e0c[_0xdd9b('0x57')]);}}else{_0x2b3f97=applyJoinClauses(_0x2b3f97,![]);_0x2b3f97[_0xdd9b('0x54')](_0xdd9b('0x58'));if(_0x178e0c[_0xdd9b('0x56')]){_0x1e8b8f[_0xdd9b('0x56')](_0x178e0c[_0xdd9b('0x56')]);}if(_0x178e0c[_0xdd9b('0x57')]){_0x1e8b8f[_0xdd9b('0x57')](_0x178e0c[_0xdd9b('0x57')]);}}_0x2b3f97['having'](_0x2b603c);if(_0x178e0c['order']){_0x178e0c[_0xdd9b('0x59')]['forEach'](function(_0x5c75f8){_0x1e8b8f['order']('c.'+_0x5c75f8[0x0],_0x5c75f8[0x1]===_0xdd9b('0x5a')?![]:!![]);_0x2b3f97[_0xdd9b('0x59')](_0xdd9b('0x5b')+_0x5c75f8[0x0],_0x5c75f8[0x1]===_0xdd9b('0x5a')?![]:!![]);});}_0x2b3f97['from'](_0x1e8b8f,'subqry');return _0x2b3f97;}function getFilteredContacts(_0x5b0ae7){var _0x45fcdd=[];return db[_0xdd9b('0x5c')][_0xdd9b('0x5d')]({'attributes':['id',_0xdd9b('0x34'),_0xdd9b('0x5e')],'raw':!![]})['then'](function(_0x3c40cb){_0x45fcdd=_[_0xdd9b('0x5f')](_0x3c40cb,'id');var _0x2a7f85={'type':db['Sequelize']['QueryTypes'][_0xdd9b('0x60')],'model':db[_0xdd9b('0x61')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0xdd9b('0x62')]['query'](_0x5b0ae7[_0xdd9b('0x63')](),_0x2a7f85);})[_0xdd9b('0x51')](function(_0xda7298){_0xda7298[_0xdd9b('0x20')](function(_0x3068d8){if(_0x3068d8[_0xdd9b('0x1d')]){_0x3068d8[_0xdd9b('0x64')]=[];_0x3068d8[_0xdd9b('0x1d')][_0xdd9b('0x26')](',')[_0xdd9b('0x20')](function(_0x2eb5e8){_0x3068d8[_0xdd9b('0x64')][_0xdd9b('0x1f')](_0x45fcdd[_0x2eb5e8]);});}delete _0x3068d8[_0xdd9b('0x1d')];});return _0xda7298;});}function countFilteredContacts(_0x188d22,_0x2efb42){var _0x4c8870=_0x188d22[_0xdd9b('0x65')]();_0x4c8870[_0xdd9b('0x21')](_0xdd9b('0x66'));_0x4c8870=applyJoinClauses(_0x4c8870,!![]);_0x188d22[_0xdd9b('0x54')](_0xdd9b('0x55'));var _0x3dbc16=utils['getSelectedTags'](_0x2efb42);if(!_[_0xdd9b('0x67')](_0x3dbc16)){_0x4c8870[_0xdd9b('0x68')](_0xdd9b('0x69'),_0x3dbc16);}var _0x5d819d={'type':db[_0xdd9b('0x6a')][_0xdd9b('0x6b')][_0xdd9b('0x60')],'raw':!![]};return db[_0xdd9b('0x62')][_0xdd9b('0x6c')](_0x4c8870[_0xdd9b('0x63')](),_0x5d819d)[_0xdd9b('0x51')](function(_0x59772a){return _0x59772a[0x0][_0xdd9b('0x66')];});}module[_0xdd9b('0x6d')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file