Built motion from commit 10af8726.|2.6.34
[motion2.git] / server / components / contacts / sql-utils.js
index 218c86a..b235dc6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb9b0=['c.id','limit','offset','having','order','DESC','subqry.','Tag','findAll','keyBy','QueryTypes','CmContact','sequelize','query','toString','Tags','split','clone','COUNT(*)','isEmpty','Sequelize','exports','lodash','squel','../parsers/qs','role','agent','search','ListId','autocomplete','true','select','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','subqry','left_join','cm_user_has_contacts','.id','cm_contact_has_tags','tools_tags','firstName','lastName','phone','mobile','email','CompanyId','updatedAt','includes','forEach','TagIds','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','getSelectedTags','replace','length','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.fax\x20LIKE\x20?','c.email\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','find','name','dateOfBirth','datetime','DATE','type','default','text','value','start','map','tags','clause','ids','and','uc.UserId\x20=\x20?','skip','some','compact','Contact','push','c.ListId\x20IN\x20?','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','resolve','then','fields','tag','filter','getLists','c.ListId\x20IS\x20NULL','attributes','group'];(function(_0x4af376,_0x22c5c0){var _0x17f4c6=function(_0xa3de50){while(--_0xa3de50){_0x4af376['push'](_0x4af376['shift']());}};_0x17f4c6(++_0x22c5c0);}(_0xb9b0,0x148));var _0x0b9b=function(_0x2c7103,_0x12b16a){_0x2c7103=_0x2c7103-0x0;var _0x5a817b=_0xb9b0[_0x2c7103];return _0x5a817b;};'use strict';var _=require(_0x0b9b('0x0'));var squel=require(_0x0b9b('0x1'));var as=require('../parsers/advancedSearch');var qs=require(_0x0b9b('0x2'));var utils=require('../interaction/utils');var db=require('../../mysqldb')['db'];function skipContactsQuery(_0x235377,_0xbd3ce){var _0x17d827=![];if(_0x235377[_0x0b9b('0x3')]===_0x0b9b('0x4')&&!_0xbd3ce[_0x0b9b('0x5')]&&!_0xbd3ce[_0x0b9b('0x6')]&&_0xbd3ce[_0x0b9b('0x7')]!==_0x0b9b('0x8')){_0x17d827=!![];}return _0x17d827;}function getContactsSubquery(){return squel[_0x0b9b('0x9')]()[_0x0b9b('0xa')](_0x0b9b('0xb'),'c')[_0x0b9b('0xc')](_0x0b9b('0xd'));}function applyJoinClauses(_0x213896,_0x1c9b06){var _0x5ddabd=_0x1c9b06?'c':_0x0b9b('0xe');_0x213896[_0x0b9b('0xf')](_0x0b9b('0x10'),'uc','uc.CmContactId\x20=\x20'+_0x5ddabd+_0x0b9b('0x11'))[_0x0b9b('0xf')](_0x0b9b('0x12'),'ct','ct.CmContactId\x20=\x20'+_0x5ddabd+_0x0b9b('0x11'))[_0x0b9b('0xf')](_0x0b9b('0x13'),'t','t.id\x20=\x20ct.TagId');return _0x213896;}function addFieldsToQuery(_0x2fd372,_0x13c5e7,_0x46bad6,_0x3c2d34,_0xf824c0){var _0x17250b=_0xf824c0?'c':_0x0b9b('0xe');if(!_0x13c5e7){_0x13c5e7=['id',_0x0b9b('0x14'),_0x0b9b('0x15'),_0x0b9b('0x16'),_0x0b9b('0x17'),'fax',_0x0b9b('0x18'),_0x0b9b('0x6'),_0x0b9b('0x19'),'createdAt',_0x0b9b('0x1a'),'deletedAt','TagIds'];}else if(!_0x13c5e7[_0x0b9b('0x1b')]('id')){_0x13c5e7['push']('id');}var _0x245a1b=_0x46bad6&&_0xf824c0||!_0x46bad6&&!_0xf824c0;if(_0x3c2d34){_0x245a1b=_0x3c2d34&&_0xf824c0||!_0x3c2d34&&!_0xf824c0;}_0x13c5e7[_0x0b9b('0x1c')](function(_0x271f8e){if(_0x271f8e===_0x0b9b('0x1d')){if(_0x245a1b){_0x2fd372[_0x0b9b('0x1e')](_0x0b9b('0x1f'),_0x271f8e);}else if(_0x46bad6||_0x3c2d34){_0x2fd372[_0x0b9b('0x1e')](_0x17250b+'.'+_0x271f8e);}}else{_0x2fd372['field'](_0x17250b+'.'+_0x271f8e);}});return _0x2fd372;}function getSqlClauses(){var _0x335f27={'default':squel[_0x0b9b('0x20')](),'fields':squel[_0x0b9b('0x20')](),'filter':squel['expr'](),'tags':{'clause':squel[_0x0b9b('0x20')](),'ids':null},'user':{'clause':squel[_0x0b9b('0x20')](),'skip':![]}};return _0x335f27;}function parseTagParameter(_0x472e2f){var _0x147394=squel[_0x0b9b('0x20')]();if(_0x472e2f){var _0x59385d=utils[_0x0b9b('0x21')](_0x472e2f);_0x59385d[_0x0b9b('0x1c')](function(_0xb642ce){_0x147394['or']('CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0xb642ce+',%');});}return _0x147394;}function parseSearchFilter(_0x2607d5){var _0x20ba83=squel[_0x0b9b('0x20')]();if(_0x2607d5){var _0x20c5d7=_0x2607d5[_0x0b9b('0x22')]('\x5c','\x5c\x5c')[_0x0b9b('0x22')](/'/g,'\x27\x27');if(_0x20c5d7['split']('\x20')[_0x0b9b('0x23')]>0x1){_0x20ba83['or'](_0x0b9b('0x24'),qs[_0x0b9b('0x25')](_0x20c5d7,!![]),null);}else{if(qs['isNumeric'](_0x20c5d7)){_0x20ba83['or'](_0x0b9b('0x26'),_0x20c5d7+'%');_0x20ba83['or'](_0x0b9b('0x27'),_0x20c5d7+'%');_0x20ba83['or']('c.mobile\x20LIKE\x20?',_0x20c5d7+'%');_0x20ba83['or'](_0x0b9b('0x28'),_0x20c5d7+'%');}else if(qs['isEmail'](_0x20c5d7)){_0x20ba83['or'](_0x0b9b('0x29'),_0x20c5d7+'%');}else{_0x20ba83['or']('c.firstName\x20LIKE\x20?','%'+_0x20c5d7+'%');_0x20ba83['or'](_0x0b9b('0x2a'),'%'+_0x20c5d7+'%');_0x20ba83['or'](_0x0b9b('0x29'),'%'+_0x20c5d7+'%');}}}return _0x20ba83;}function parseAdvancedSearchFilter(_0x435e16,_0x4bf53e){var _0x4c859f=getSqlClauses();var _0x50e42e=as[_0x0b9b('0x2b')](_0x435e16);var _0x13da9d=_0x50e42e[_0x0b9b('0x2c')];for(var _0x566dfc=0x0;_0x566dfc<_0x50e42e['conditions']['length'];_0x566dfc++){var _0x385df6=_0x50e42e[_0x0b9b('0x2d')][_0x566dfc];var _0x2f4856='c';var _0x57f38e=_[_0x0b9b('0x2e')](_0x4bf53e,[_0x0b9b('0x2f'),_0x385df6[_0x0b9b('0x1e')]]);if(_0x57f38e){if(_0x385df6['field']===_0x0b9b('0x30')||_0x57f38e['fieldType']===_0x0b9b('0x31')){_0x385df6['castTo']=_0x0b9b('0x32');}var _0x222a93=as['buildExpression'](_0x2f4856,_0x57f38e[_0x0b9b('0x33')],_0x385df6);_0x4c859f[_0x0b9b('0x34')][_0x13da9d](_0x222a93[_0x0b9b('0x35')],_0x222a93[_0x0b9b('0x36')][_0x0b9b('0x37')],_0x222a93[_0x0b9b('0x36')]['end']);}else{if(_0x385df6[_0x0b9b('0x1e')]==='Tag'){var _0x374694=_0x385df6[_0x0b9b('0x36')]['split'](',')[_0x0b9b('0x38')](function(_0x2ef198){return Number(_0x2ef198);});var _0x401e0d=parseTagParameter(_0x374694);_0x4c859f[_0x0b9b('0x39')][_0x0b9b('0x3a')]['and'](_0x401e0d);_0x4c859f[_0x0b9b('0x39')][_0x0b9b('0x3b')]=_0x374694;}else if(_0x385df6[_0x0b9b('0x1e')]==='User'){_0x4c859f['user']['clause'][_0x0b9b('0x3c')](_0x0b9b('0x3d'),_0x385df6[_0x0b9b('0x36')]);_0x4c859f['user'][_0x0b9b('0x3e')]=!![];}}}return _0x4c859f;}function parseModelFields(_0x2dfb6f,_0x549c51){var _0x2c8263=squel[_0x0b9b('0x20')]();var _0x18fa07=_(_0x2dfb6f)['keys']()[_0x0b9b('0x38')](function(_0x4c3115){return _[_0x0b9b('0x3f')](_0x549c51,[_0x0b9b('0x2f'),_0x4c3115])?_0x4c3115:undefined;})[_0x0b9b('0x40')]()[_0x0b9b('0x36')]();if(_0x2dfb6f[_0x0b9b('0x41')]){_0x18fa07['push'](_0x0b9b('0x41'));}if(_0x2dfb6f['User']){_0x18fa07[_0x0b9b('0x42')]('User');}if(_0x18fa07[_0x0b9b('0x23')]>0x0){_0x18fa07[_0x0b9b('0x1c')](function(_0x327183){if(_0x327183===_0x0b9b('0x6')){_0x2c8263[_0x0b9b('0x3c')](_0x0b9b('0x43'),[][_0x0b9b('0x44')](_0x2dfb6f[_0x327183]));}else if(_0x327183===_0x0b9b('0x41')){var _0x19a55e='%'+_0x2dfb6f[_0x327183]+'%';_0x2c8263[_0x0b9b('0x3c')](_0x0b9b('0x45'),_0x19a55e);}else if(_0x327183==='User'){_0x2c8263[_0x0b9b('0x3c')]('uc.UserId\x20=\x20?',_0x2dfb6f[_0x327183]);}else{_0x2c8263[_0x0b9b('0x3c')]('c.'+_0x327183+_0x0b9b('0x46'),_0x2dfb6f[_0x327183]);}});}return _0x2c8263;}function parseQueryParameters(_0x31e13a,_0x29a213){var _0x246d9f=getSqlClauses();return Promise[_0x0b9b('0x47')]()[_0x0b9b('0x48')](function(){return parseModelFields(_0x31e13a,_0x29a213);})[_0x0b9b('0x48')](function(_0x52d88a){_0x246d9f[_0x0b9b('0x49')][_0x0b9b('0x3c')](_0x52d88a);return parseTagParameter(_0x31e13a[_0x0b9b('0x4a')]);})['then'](function(_0x4ab763){_0x246d9f[_0x0b9b('0x39')]['clause']['and'](_0x4ab763);return parseSearchFilter(_0x31e13a[_0x0b9b('0x4b')]);})['then'](function(_0x240d27){_0x246d9f['filter']=_0x240d27;return _0x246d9f;});}function checkListsRestrictions(_0x114132,_0x3a83f8,_0x3b5651){var _0x3cfca3=squel[_0x0b9b('0x20')]();return Promise[_0x0b9b('0x47')]()[_0x0b9b('0x48')](function(){if(_0x3a83f8['search']&&_0x114132[_0x0b9b('0x3')]===_0x0b9b('0x4')&&!_0x3b5651){return _0x114132[_0x0b9b('0x4c')]({'attributes':['id'],'raw':!![]});}})[_0x0b9b('0x48')](function(_0x2f58d4){if(_0x2f58d4){if(_0x2f58d4[_0x0b9b('0x23')]===0x0){_0x3cfca3[_0x0b9b('0x3c')](_0x0b9b('0x4d'));}else{_0x3cfca3['and'](_0x0b9b('0x43'),_[_0x0b9b('0x38')](_0x2f58d4,'id'));}}})[_0x0b9b('0x48')](function(){return _0x3cfca3;});}function buildContactsQuery(_0x2a96d5,_0x34735b,_0x1f36cf,_0x4ffe0a,_0x1d58fc,_0x1d905b){if(_0x34735b){_0x34735b=_0x1f36cf[_0x0b9b('0x4e')];}_0x2a96d5=addFieldsToQuery(_0x2a96d5,_0x34735b,_0x4ffe0a,_0x1d905b,!![]);var _0x4de177=squel[_0x0b9b('0x9')]();_0x4de177=addFieldsToQuery(_0x4de177,_0x34735b,_0x4ffe0a,_0x1d905b,![]);if(_0x4ffe0a||_0x1d905b){_0x2a96d5=applyJoinClauses(_0x2a96d5,!![]);_0x2a96d5[_0x0b9b('0x4f')](_0x0b9b('0x50'));if(_0x1f36cf[_0x0b9b('0x51')]){_0x4de177[_0x0b9b('0x51')](_0x1f36cf[_0x0b9b('0x51')]);}if(_0x1f36cf[_0x0b9b('0x52')]){_0x4de177['offset'](_0x1f36cf[_0x0b9b('0x52')]);}}else{_0x4de177=applyJoinClauses(_0x4de177,![]);_0x4de177[_0x0b9b('0x4f')]('subqry.id');if(_0x1f36cf['limit']){_0x2a96d5['limit'](_0x1f36cf[_0x0b9b('0x51')]);}if(_0x1f36cf[_0x0b9b('0x52')]){_0x2a96d5[_0x0b9b('0x52')](_0x1f36cf[_0x0b9b('0x52')]);}}_0x4de177[_0x0b9b('0x53')](_0x1d58fc);if(_0x1f36cf[_0x0b9b('0x54')]){_0x1f36cf[_0x0b9b('0x54')][_0x0b9b('0x1c')](function(_0x2e10ad){_0x2a96d5[_0x0b9b('0x54')]('c.'+_0x2e10ad[0x0],_0x2e10ad[0x1]===_0x0b9b('0x55')?![]:!![]);_0x4de177[_0x0b9b('0x54')](_0x0b9b('0x56')+_0x2e10ad[0x0],_0x2e10ad[0x1]==='DESC'?![]:!![]);});}_0x4de177[_0x0b9b('0xa')](_0x2a96d5,'subqry');return _0x4de177;}function getFilteredContacts(_0x1446f5){var _0x33dd93=[];return db[_0x0b9b('0x57')][_0x0b9b('0x58')]({'attributes':['id',_0x0b9b('0x2f'),'color'],'raw':!![]})[_0x0b9b('0x48')](function(_0xbb2b2c){_0x33dd93=_[_0x0b9b('0x59')](_0xbb2b2c,'id');var _0x51bec4={'type':db['Sequelize'][_0x0b9b('0x5a')]['SELECT'],'model':db[_0x0b9b('0x5b')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0x0b9b('0x5c')][_0x0b9b('0x5d')](_0x1446f5[_0x0b9b('0x5e')](),_0x51bec4);})[_0x0b9b('0x48')](function(_0xab713f){_0xab713f['forEach'](function(_0x180622){if(_0x180622[_0x0b9b('0x1d')]){_0x180622[_0x0b9b('0x5f')]=[];_0x180622['TagIds'][_0x0b9b('0x60')](',')[_0x0b9b('0x1c')](function(_0xa7e76e){_0x180622[_0x0b9b('0x5f')][_0x0b9b('0x42')](_0x33dd93[_0xa7e76e]);});}delete _0x180622[_0x0b9b('0x1d')];});return _0xab713f;});}function countFilteredContacts(_0x3a8f5c,_0x3b621f){var _0x7511a2=_0x3a8f5c[_0x0b9b('0x61')]();_0x7511a2[_0x0b9b('0x1e')](_0x0b9b('0x62'));_0x7511a2=applyJoinClauses(_0x7511a2,!![]);_0x3a8f5c['group'](_0x0b9b('0x50'));var _0x6e7875=utils['getSelectedTags'](_0x3b621f);if(!_[_0x0b9b('0x63')](_0x6e7875)){_0x7511a2[_0x0b9b('0xc')]('t.id\x20IN\x20?',_0x6e7875);}var _0x3a23c9={'type':db[_0x0b9b('0x64')]['QueryTypes']['SELECT'],'raw':!![]};return db[_0x0b9b('0x5c')][_0x0b9b('0x5d')](_0x7511a2[_0x0b9b('0x5e')](),_0x3a23c9)['then'](function(_0x13a680){return _0x13a680[0x0][_0x0b9b('0x62')];});}module[_0x0b9b('0x65')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file
+var _0xbedc=['length','c.ListId\x20IN\x20?','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','uc.UserId\x20=\x20?','\x20=\x20?','resolve','fields','tag','then','search','c.ListId\x20IS\x20NULL','select','group','c.id','limit','offset','subqry.id','order','DESC','findAll','keyBy','Sequelize','QueryTypes','SELECT','CmContact','query','toString','Tags','clone','COUNT(*)','isEmpty','sequelize','squel','../parsers/advancedSearch','../interaction/utils','../../mysqldb','role','ListId','true','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','subqry','uc.CmContactId\x20=\x20','.id','left_join','cm_contact_has_tags','ct.CmContactId\x20=\x20','tools_tags','t.id\x20=\x20ct.TagId','firstName','lastName','phone','mobile','fax','email','CompanyId','createdAt','updatedAt','deletedAt','includes','push','forEach','TagIds','GROUP_CONCAT(DISTINCT\x20t.id)','field','expr','getSelectedTags','escapeLIKESpecialChars','split','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.id\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','c.email\x20LIKE\x20?','parseSearch','sqlOperator','find','name','dateOfBirth','fieldType','castTo','buildExpression','type','default','text','start','value','map','tags','clause','ids','and','user','skip','keys','compact','Contact','User'];(function(_0xd07790,_0x3db009){var _0x32f10e=function(_0x1f4911){while(--_0x1f4911){_0xd07790['push'](_0xd07790['shift']());}};_0x32f10e(++_0x3db009);}(_0xbedc,0x1c0));var _0xcbed=function(_0x2bfad3,_0x10ab16){_0x2bfad3=_0x2bfad3-0x0;var _0xa480f7=_0xbedc[_0x2bfad3];return _0xa480f7;};'use strict';var _=require('lodash');var squel=require(_0xcbed('0x0'));var as=require(_0xcbed('0x1'));var qs=require('../parsers/qs');var utils=require(_0xcbed('0x2'));var db=require(_0xcbed('0x3'))['db'];function skipContactsQuery(_0x336a3e,_0x569bbc){var _0x254a7a=![];if(_0x336a3e[_0xcbed('0x4')]==='agent'&&!_0x569bbc['search']&&!_0x569bbc[_0xcbed('0x5')]&&_0x569bbc['autocomplete']!==_0xcbed('0x6')){_0x254a7a=!![];}return _0x254a7a;}function getContactsSubquery(){return squel['select']()[_0xcbed('0x7')](_0xcbed('0x8'),'c')[_0xcbed('0x9')](_0xcbed('0xa'));}function applyJoinClauses(_0x40ca58,_0x1c1523){var _0x7064df=_0x1c1523?'c':_0xcbed('0xb');_0x40ca58['left_join']('cm_user_has_contacts','uc',_0xcbed('0xc')+_0x7064df+_0xcbed('0xd'))[_0xcbed('0xe')](_0xcbed('0xf'),'ct',_0xcbed('0x10')+_0x7064df+_0xcbed('0xd'))[_0xcbed('0xe')](_0xcbed('0x11'),'t',_0xcbed('0x12'));return _0x40ca58;}function addFieldsToQuery(_0x211850,_0x45c83f,_0xd6ea7f,_0x2d985a,_0x4eff53){var _0x320211=_0x4eff53?'c':_0xcbed('0xb');if(!_0x45c83f){_0x45c83f=['id',_0xcbed('0x13'),_0xcbed('0x14'),_0xcbed('0x15'),_0xcbed('0x16'),_0xcbed('0x17'),_0xcbed('0x18'),'ListId',_0xcbed('0x19'),_0xcbed('0x1a'),_0xcbed('0x1b'),_0xcbed('0x1c'),'TagIds'];}else if(!_0x45c83f[_0xcbed('0x1d')]('id')){_0x45c83f[_0xcbed('0x1e')]('id');}var _0x4b4daf=_0xd6ea7f&&_0x4eff53||!_0xd6ea7f&&!_0x4eff53;if(_0x2d985a){_0x4b4daf=_0x2d985a&&_0x4eff53||!_0x2d985a&&!_0x4eff53;}_0x45c83f[_0xcbed('0x1f')](function(_0xd2af2e){if(_0xd2af2e===_0xcbed('0x20')){if(_0x4b4daf){_0x211850['field'](_0xcbed('0x21'),_0xd2af2e);}else if(_0xd6ea7f||_0x2d985a){_0x211850['field'](_0x320211+'.'+_0xd2af2e);}}else{_0x211850[_0xcbed('0x22')](_0x320211+'.'+_0xd2af2e);}});return _0x211850;}function getSqlClauses(){var _0x594c3c={'default':squel[_0xcbed('0x23')](),'fields':squel[_0xcbed('0x23')](),'filter':squel['expr'](),'tags':{'clause':squel[_0xcbed('0x23')](),'ids':null},'user':{'clause':squel[_0xcbed('0x23')](),'skip':![]}};return _0x594c3c;}function parseTagParameter(_0x161930){var _0x315574=squel['expr']();if(_0x161930){var _0x34180d=utils[_0xcbed('0x24')](_0x161930);_0x34180d[_0xcbed('0x1f')](function(_0x3bd59d){_0x315574['or']('CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x3bd59d+',%');});}return _0x315574;}function parseSearchFilter(_0x11afd7){var _0x70837a=squel['expr']();if(_0x11afd7){var _0x3dc77b=_0x11afd7['replace']('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');var _0x504337=qs[_0xcbed('0x25')](_0x3dc77b);if(_0x3dc77b[_0xcbed('0x26')]('\x20')['length']>0x1){_0x70837a['or'](_0xcbed('0x27'),qs[_0xcbed('0x28')](_0x3dc77b,!![]),null);}else{if(qs['isNumeric'](_0x3dc77b)){_0x70837a['or'](_0xcbed('0x29'),_0x504337+'%');_0x70837a['or']('c.phone\x20LIKE\x20?',_0x504337+'%');_0x70837a['or'](_0xcbed('0x2a'),_0x504337+'%');_0x70837a['or'](_0xcbed('0x2b'),_0x504337+'%');}else if(qs[_0xcbed('0x2c')](_0x3dc77b)){_0x70837a['or']('c.email\x20LIKE\x20?',_0x504337+'%');}else{_0x70837a['or'](_0xcbed('0x2d'),'%'+_0x504337+'%');_0x70837a['or'](_0xcbed('0x2e'),'%'+_0x504337+'%');_0x70837a['or'](_0xcbed('0x2f'),'%'+_0x504337+'%');}}}return _0x70837a;}function parseAdvancedSearchFilter(_0x12e8ca,_0xf051f5){var _0x6565d7=getSqlClauses();var _0x27e4cd=as[_0xcbed('0x30')](_0x12e8ca);var _0x20f549=_0x27e4cd[_0xcbed('0x31')];for(var _0x160c89=0x0;_0x160c89<_0x27e4cd['conditions']['length'];_0x160c89++){var _0x2586b5=_0x27e4cd['conditions'][_0x160c89];var _0x5f1897='c';var _0x5e6475=_[_0xcbed('0x32')](_0xf051f5,[_0xcbed('0x33'),_0x2586b5[_0xcbed('0x22')]]);if(_0x5e6475){if(_0x2586b5['field']===_0xcbed('0x34')||_0x5e6475[_0xcbed('0x35')]==='datetime'){_0x2586b5[_0xcbed('0x36')]='DATE';}var _0x3adfe1=as[_0xcbed('0x37')](_0x5f1897,_0x5e6475[_0xcbed('0x38')],_0x2586b5);_0x6565d7[_0xcbed('0x39')][_0x20f549](_0x3adfe1[_0xcbed('0x3a')],_0x3adfe1['value'][_0xcbed('0x3b')],_0x3adfe1['value']['end']);}else{if(_0x2586b5[_0xcbed('0x22')]==='Tag'){var _0x192ee6=_0x2586b5[_0xcbed('0x3c')][_0xcbed('0x26')](',')[_0xcbed('0x3d')](function(_0x101e6e){return Number(_0x101e6e);});var _0x2c9a3e=parseTagParameter(_0x192ee6);_0x6565d7[_0xcbed('0x3e')][_0xcbed('0x3f')]['and'](_0x2c9a3e);_0x6565d7['tags'][_0xcbed('0x40')]=_0x192ee6;}else if(_0x2586b5[_0xcbed('0x22')]==='User'){_0x6565d7['user']['clause'][_0xcbed('0x41')]('uc.UserId\x20=\x20?',_0x2586b5[_0xcbed('0x3c')]);_0x6565d7[_0xcbed('0x42')][_0xcbed('0x43')]=!![];}}}return _0x6565d7;}function parseModelFields(_0x118847,_0x3db580){var _0x2ff4df=squel['expr']();var _0x254500=_(_0x118847)[_0xcbed('0x44')]()[_0xcbed('0x3d')](function(_0x5999fc){return _['some'](_0x3db580,['name',_0x5999fc])?_0x5999fc:undefined;})[_0xcbed('0x45')]()[_0xcbed('0x3c')]();if(_0x118847[_0xcbed('0x46')]){_0x254500[_0xcbed('0x1e')](_0xcbed('0x46'));}if(_0x118847[_0xcbed('0x47')]){_0x254500[_0xcbed('0x1e')](_0xcbed('0x47'));}if(_0x254500[_0xcbed('0x48')]>0x0){_0x254500[_0xcbed('0x1f')](function(_0x530582){if(_0x530582===_0xcbed('0x5')){_0x2ff4df['and'](_0xcbed('0x49'),[]['concat'](_0x118847[_0x530582]));}else if(_0x530582===_0xcbed('0x46')){var _0x56e11e='%'+_0x118847[_0x530582]+'%';_0x2ff4df[_0xcbed('0x41')](_0xcbed('0x4a'),_0x56e11e);}else if(_0x530582===_0xcbed('0x47')){_0x2ff4df['and'](_0xcbed('0x4b'),_0x118847[_0x530582]);}else{_0x2ff4df[_0xcbed('0x41')]('c.'+_0x530582+_0xcbed('0x4c'),_0x118847[_0x530582]);}});}return _0x2ff4df;}function parseQueryParameters(_0x2c4b84,_0x9c38e3){var _0x388f22=getSqlClauses();return Promise[_0xcbed('0x4d')]()['then'](function(){return parseModelFields(_0x2c4b84,_0x9c38e3);})['then'](function(_0x4e2700){_0x388f22[_0xcbed('0x4e')][_0xcbed('0x41')](_0x4e2700);return parseTagParameter(_0x2c4b84[_0xcbed('0x4f')]);})[_0xcbed('0x50')](function(_0x2ff296){_0x388f22[_0xcbed('0x3e')][_0xcbed('0x3f')][_0xcbed('0x41')](_0x2ff296);return parseSearchFilter(_0x2c4b84['filter']);})[_0xcbed('0x50')](function(_0x4bad1e){_0x388f22['filter']=_0x4bad1e;return _0x388f22;});}function checkListsRestrictions(_0x1b03b8,_0x3823ba,_0x3abd12){var _0x35c54b=squel[_0xcbed('0x23')]();return Promise[_0xcbed('0x4d')]()[_0xcbed('0x50')](function(){if(_0x3823ba[_0xcbed('0x51')]&&_0x1b03b8[_0xcbed('0x4')]==='agent'&&!_0x3abd12){return _0x1b03b8['getLists']({'attributes':['id'],'raw':!![]});}})[_0xcbed('0x50')](function(_0x32874a){if(_0x32874a){if(_0x32874a[_0xcbed('0x48')]===0x0){_0x35c54b[_0xcbed('0x41')](_0xcbed('0x52'));}else{_0x35c54b['and'](_0xcbed('0x49'),_['map'](_0x32874a,'id'));}}})[_0xcbed('0x50')](function(){return _0x35c54b;});}function buildContactsQuery(_0x4ec2b9,_0x18b78f,_0x365e47,_0x39086d,_0x7113e2,_0x11f948){if(_0x18b78f){_0x18b78f=_0x365e47['attributes'];}_0x4ec2b9=addFieldsToQuery(_0x4ec2b9,_0x18b78f,_0x39086d,_0x11f948,!![]);var _0x5720bc=squel[_0xcbed('0x53')]();_0x5720bc=addFieldsToQuery(_0x5720bc,_0x18b78f,_0x39086d,_0x11f948,![]);if(_0x39086d||_0x11f948){_0x4ec2b9=applyJoinClauses(_0x4ec2b9,!![]);_0x4ec2b9[_0xcbed('0x54')](_0xcbed('0x55'));if(_0x365e47[_0xcbed('0x56')]){_0x5720bc[_0xcbed('0x56')](_0x365e47[_0xcbed('0x56')]);}if(_0x365e47['offset']){_0x5720bc['offset'](_0x365e47[_0xcbed('0x57')]);}}else{_0x5720bc=applyJoinClauses(_0x5720bc,![]);_0x5720bc[_0xcbed('0x54')](_0xcbed('0x58'));if(_0x365e47[_0xcbed('0x56')]){_0x4ec2b9['limit'](_0x365e47[_0xcbed('0x56')]);}if(_0x365e47[_0xcbed('0x57')]){_0x4ec2b9[_0xcbed('0x57')](_0x365e47[_0xcbed('0x57')]);}}_0x5720bc['having'](_0x7113e2);if(_0x365e47[_0xcbed('0x59')]){_0x365e47[_0xcbed('0x59')][_0xcbed('0x1f')](function(_0x15a06d){_0x4ec2b9['order']('c.'+_0x15a06d[0x0],_0x15a06d[0x1]==='DESC'?![]:!![]);_0x5720bc[_0xcbed('0x59')]('subqry.'+_0x15a06d[0x0],_0x15a06d[0x1]===_0xcbed('0x5a')?![]:!![]);});}_0x5720bc['from'](_0x4ec2b9,'subqry');return _0x5720bc;}function getFilteredContacts(_0x4b731d){var _0x44ad65=[];return db['Tag'][_0xcbed('0x5b')]({'attributes':['id','name','color'],'raw':!![]})[_0xcbed('0x50')](function(_0x4df407){_0x44ad65=_[_0xcbed('0x5c')](_0x4df407,'id');var _0x175c26={'type':db[_0xcbed('0x5d')][_0xcbed('0x5e')][_0xcbed('0x5f')],'model':db[_0xcbed('0x60')],'mapToModel':!![],'nest':!![],'raw':!![]};return db['sequelize'][_0xcbed('0x61')](_0x4b731d[_0xcbed('0x62')](),_0x175c26);})[_0xcbed('0x50')](function(_0x143bdd){_0x143bdd[_0xcbed('0x1f')](function(_0x514941){if(_0x514941[_0xcbed('0x20')]){_0x514941[_0xcbed('0x63')]=[];_0x514941[_0xcbed('0x20')][_0xcbed('0x26')](',')['forEach'](function(_0x293732){_0x514941[_0xcbed('0x63')]['push'](_0x44ad65[_0x293732]);});}delete _0x514941['TagIds'];});return _0x143bdd;});}function countFilteredContacts(_0x1b1c56,_0x4ca88e){var _0x4fc711=_0x1b1c56[_0xcbed('0x64')]();_0x4fc711[_0xcbed('0x22')](_0xcbed('0x65'));_0x4fc711=applyJoinClauses(_0x4fc711,!![]);_0x1b1c56[_0xcbed('0x54')](_0xcbed('0x55'));var _0x150285=utils['getSelectedTags'](_0x4ca88e);if(!_[_0xcbed('0x66')](_0x150285)){_0x4fc711[_0xcbed('0x9')]('t.id\x20IN\x20?',_0x150285);}var _0x11bae7={'type':db[_0xcbed('0x5d')][_0xcbed('0x5e')][_0xcbed('0x5f')],'raw':!![]};return db[_0xcbed('0x67')][_0xcbed('0x61')](_0x4fc711[_0xcbed('0x62')](),_0x11bae7)['then'](function(_0x223b08){return _0x223b08[0x0][_0xcbed('0x65')];});}module['exports']={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file