Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / components / contacts / sql-utils.js
index 5e50d94..5293a30 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x0b76=['c.lastName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','find','dateOfBirth','fieldType','datetime','castTo','text','value','start','end','Tag','map','tags','User','user','and','skip','some','name','compact','Contact','push','c.ListId\x20IN\x20?','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','uc.UserId\x20=\x20?','\x20=\x20?','fields','tag','then','clause','resolve','getLists','c.ListId\x20IS\x20NULL','attributes','c.id','limit','offset','group','having','order','DESC','findAll','color','keyBy','Sequelize','QueryTypes','CmContact','sequelize','query','toString','Tags','split','clone','isEmpty','t.id\x20IN\x20?','SELECT','exports','lodash','../parsers/advancedSearch','../parsers/qs','../../mysqldb','role','search','ListId','autocomplete','true','select','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','subqry','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20','.id','cm_contact_has_tags','tools_tags','t.id\x20=\x20ct.TagId','firstName','phone','mobile','fax','createdAt','updatedAt','deletedAt','TagIds','GROUP_CONCAT(DISTINCT\x20t.id)','field','expr','getSelectedTags','forEach','CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','replace','length','getFullTextValue','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?'];(function(_0xfac19b,_0x51b4b6){var _0x59446a=function(_0x3949ff){while(--_0x3949ff){_0xfac19b['push'](_0xfac19b['shift']());}};_0x59446a(++_0x51b4b6);}(_0x0b76,0x1e5));var _0x60b7=function(_0x24dfbd,_0x23c14f){_0x24dfbd=_0x24dfbd-0x0;var _0x11ebb4=_0x0b76[_0x24dfbd];return _0x11ebb4;};'use strict';var _=require(_0x60b7('0x0'));var squel=require('squel');var as=require(_0x60b7('0x1'));var qs=require(_0x60b7('0x2'));var utils=require('../interaction/utils');var db=require(_0x60b7('0x3'))['db'];function skipContactsQuery(_0x226c45,_0x589538){var _0x574742=![];if(_0x226c45[_0x60b7('0x4')]==='agent'&&!_0x589538[_0x60b7('0x5')]&&!_0x589538[_0x60b7('0x6')]&&_0x589538[_0x60b7('0x7')]!==_0x60b7('0x8')){_0x574742=!![];}return _0x574742;}function getContactsSubquery(){return squel[_0x60b7('0x9')]()[_0x60b7('0xa')](_0x60b7('0xb'),'c')[_0x60b7('0xc')](_0x60b7('0xd'));}function applyJoinClauses(_0x49134f,_0x5b776d){var _0x25b4f8=_0x5b776d?'c':_0x60b7('0xe');_0x49134f[_0x60b7('0xf')](_0x60b7('0x10'),'uc',_0x60b7('0x11')+_0x25b4f8+_0x60b7('0x12'))['left_join'](_0x60b7('0x13'),'ct','ct.CmContactId\x20=\x20'+_0x25b4f8+_0x60b7('0x12'))['left_join'](_0x60b7('0x14'),'t',_0x60b7('0x15'));return _0x49134f;}function addFieldsToQuery(_0x31d204,_0x55e66b,_0x2358d9,_0x4b9dc4,_0x45543b){var _0x345a8e=_0x45543b?'c':_0x60b7('0xe');if(!_0x55e66b){_0x55e66b=['id',_0x60b7('0x16'),'lastName',_0x60b7('0x17'),_0x60b7('0x18'),_0x60b7('0x19'),'email',_0x60b7('0x6'),'CompanyId',_0x60b7('0x1a'),_0x60b7('0x1b'),_0x60b7('0x1c'),_0x60b7('0x1d')];}else if(!_0x55e66b['includes']('id')){_0x55e66b['push']('id');}var _0x233a2a=_0x2358d9&&_0x45543b||!_0x2358d9&&!_0x45543b;if(_0x4b9dc4){_0x233a2a=_0x4b9dc4&&_0x45543b||!_0x4b9dc4&&!_0x45543b;}_0x55e66b['forEach'](function(_0x46d3d3){if(_0x46d3d3===_0x60b7('0x1d')){if(_0x233a2a){_0x31d204['field'](_0x60b7('0x1e'),_0x46d3d3);}else if(_0x2358d9||_0x4b9dc4){_0x31d204['field'](_0x345a8e+'.'+_0x46d3d3);}}else{_0x31d204[_0x60b7('0x1f')](_0x345a8e+'.'+_0x46d3d3);}});return _0x31d204;}function getSqlClauses(){var _0x11ac5d={'default':squel[_0x60b7('0x20')](),'fields':squel[_0x60b7('0x20')](),'filter':squel[_0x60b7('0x20')](),'tags':{'clause':squel[_0x60b7('0x20')](),'ids':null},'user':{'clause':squel['expr'](),'skip':![]}};return _0x11ac5d;}function parseTagParameter(_0x26348a){var _0x386398=squel['expr']();if(_0x26348a){var _0x4e0d44=utils[_0x60b7('0x21')](_0x26348a);_0x4e0d44[_0x60b7('0x22')](function(_0x17ea90){_0x386398['or'](_0x60b7('0x23'),'%,'+_0x17ea90+',%');});}return _0x386398;}function parseSearchFilter(_0x4f6950){var _0x321583=squel[_0x60b7('0x20')]();if(_0x4f6950){var _0x82aa02=_0x4f6950[_0x60b7('0x24')]('\x5c','\x5c\x5c')[_0x60b7('0x24')](/'/g,'\x27\x27');if(_0x82aa02['split']('\x20')[_0x60b7('0x25')]>0x1){_0x321583['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x60b7('0x26')](_0x82aa02,!![]),null);}else{if(qs['isNumeric'](_0x82aa02)){_0x321583['or'](_0x60b7('0x27'),_0x82aa02+'%');_0x321583['or'](_0x60b7('0x28'),_0x82aa02+'%');_0x321583['or'](_0x60b7('0x29'),_0x82aa02+'%');_0x321583['or'](_0x60b7('0x2a'),_0x82aa02+'%');}else if(qs[_0x60b7('0x2b')](_0x82aa02)){_0x321583['or'](_0x60b7('0x2c'),_0x82aa02+'%');}else{_0x321583['or']('c.firstName\x20LIKE\x20?','%'+_0x82aa02+'%');_0x321583['or'](_0x60b7('0x2d'),'%'+_0x82aa02+'%');_0x321583['or'](_0x60b7('0x2c'),'%'+_0x82aa02+'%');}}}return _0x321583;}function parseAdvancedSearchFilter(_0x51dbc3,_0x4b5108){var _0x5df4f4=getSqlClauses();var _0x2adc8e=as[_0x60b7('0x2e')](_0x51dbc3);var _0x563b8b=_0x2adc8e[_0x60b7('0x2f')];for(var _0x106d35=0x0;_0x106d35<_0x2adc8e[_0x60b7('0x30')]['length'];_0x106d35++){var _0x2aba27=_0x2adc8e[_0x60b7('0x30')][_0x106d35];var _0x9a77b0='c';var _0x4f59be=_[_0x60b7('0x31')](_0x4b5108,['name',_0x2aba27[_0x60b7('0x1f')]]);if(_0x4f59be){if(_0x2aba27[_0x60b7('0x1f')]===_0x60b7('0x32')||_0x4f59be[_0x60b7('0x33')]===_0x60b7('0x34')){_0x2aba27[_0x60b7('0x35')]='DATE';}var _0x27e91e=as['buildExpression'](_0x9a77b0,_0x4f59be['type'],_0x2aba27);_0x5df4f4['default'][_0x563b8b](_0x27e91e[_0x60b7('0x36')],_0x27e91e[_0x60b7('0x37')][_0x60b7('0x38')],_0x27e91e[_0x60b7('0x37')][_0x60b7('0x39')]);}else{if(_0x2aba27[_0x60b7('0x1f')]===_0x60b7('0x3a')){var _0x2956d4=_0x2aba27[_0x60b7('0x37')]['split'](',')[_0x60b7('0x3b')](function(_0x273b36){return Number(_0x273b36);});var _0x22f81=parseTagParameter(_0x2956d4);_0x5df4f4[_0x60b7('0x3c')]['clause']['and'](_0x22f81);_0x5df4f4[_0x60b7('0x3c')]['ids']=_0x2956d4;}else if(_0x2aba27[_0x60b7('0x1f')]===_0x60b7('0x3d')){_0x5df4f4[_0x60b7('0x3e')]['clause'][_0x60b7('0x3f')]('uc.UserId\x20=\x20?',_0x2aba27[_0x60b7('0x37')]);_0x5df4f4[_0x60b7('0x3e')][_0x60b7('0x40')]=!![];}}}return _0x5df4f4;}function parseModelFields(_0x336f83,_0x57d0cc){var _0x20f3f4=squel[_0x60b7('0x20')]();var _0x1eb97c=_(_0x336f83)['keys']()['map'](function(_0x46e837){return _[_0x60b7('0x41')](_0x57d0cc,[_0x60b7('0x42'),_0x46e837])?_0x46e837:undefined;})[_0x60b7('0x43')]()[_0x60b7('0x37')]();if(_0x336f83[_0x60b7('0x44')]){_0x1eb97c[_0x60b7('0x45')](_0x60b7('0x44'));}if(_0x336f83[_0x60b7('0x3d')]){_0x1eb97c[_0x60b7('0x45')]('User');}if(_0x1eb97c[_0x60b7('0x25')]>0x0){_0x1eb97c[_0x60b7('0x22')](function(_0x508bd9){if(_0x508bd9==='ListId'){_0x20f3f4[_0x60b7('0x3f')](_0x60b7('0x46'),[][_0x60b7('0x47')](_0x336f83[_0x508bd9]));}else if(_0x508bd9===_0x60b7('0x44')){var _0x19a854='%'+_0x336f83[_0x508bd9]+'%';_0x20f3f4[_0x60b7('0x3f')](_0x60b7('0x48'),_0x19a854);}else if(_0x508bd9===_0x60b7('0x3d')){_0x20f3f4['and'](_0x60b7('0x49'),_0x336f83[_0x508bd9]);}else{_0x20f3f4['and']('c.'+_0x508bd9+_0x60b7('0x4a'),_0x336f83[_0x508bd9]);}});}return _0x20f3f4;}function parseQueryParameters(_0x97bbb2,_0x550a5a){var _0x378098=getSqlClauses();return Promise['resolve']()['then'](function(){return parseModelFields(_0x97bbb2,_0x550a5a);})['then'](function(_0x1e0c39){_0x378098[_0x60b7('0x4b')][_0x60b7('0x3f')](_0x1e0c39);return parseTagParameter(_0x97bbb2[_0x60b7('0x4c')]);})[_0x60b7('0x4d')](function(_0x786adb){_0x378098[_0x60b7('0x3c')][_0x60b7('0x4e')][_0x60b7('0x3f')](_0x786adb);return parseSearchFilter(_0x97bbb2['filter']);})[_0x60b7('0x4d')](function(_0x2b85c3){_0x378098['filter']=_0x2b85c3;return _0x378098;});}function checkListsRestrictions(_0x3a2486,_0x477428,_0x949755){var _0x3f80cf=squel[_0x60b7('0x20')]();return Promise[_0x60b7('0x4f')]()[_0x60b7('0x4d')](function(){if(_0x477428[_0x60b7('0x5')]&&_0x3a2486[_0x60b7('0x4')]==='agent'&&!_0x949755){return _0x3a2486[_0x60b7('0x50')]({'attributes':['id'],'raw':!![]});}})[_0x60b7('0x4d')](function(_0x1652e8){if(_0x1652e8){if(_0x1652e8[_0x60b7('0x25')]===0x0){_0x3f80cf[_0x60b7('0x3f')](_0x60b7('0x51'));}else{_0x3f80cf[_0x60b7('0x3f')]('c.ListId\x20IN\x20?',_[_0x60b7('0x3b')](_0x1652e8,'id'));}}})[_0x60b7('0x4d')](function(){return _0x3f80cf;});}function buildContactsQuery(_0x32bf2b,_0x50e3e0,_0x6e0108,_0xc97311,_0x43a716,_0x1a86c8){if(_0x50e3e0){_0x50e3e0=_0x6e0108[_0x60b7('0x52')];}_0x32bf2b=addFieldsToQuery(_0x32bf2b,_0x50e3e0,_0xc97311,_0x1a86c8,!![]);var _0x2b5d52=squel[_0x60b7('0x9')]();_0x2b5d52=addFieldsToQuery(_0x2b5d52,_0x50e3e0,_0xc97311,_0x1a86c8,![]);if(_0xc97311||_0x1a86c8){_0x32bf2b=applyJoinClauses(_0x32bf2b,!![]);_0x32bf2b['group'](_0x60b7('0x53'));if(_0x6e0108[_0x60b7('0x54')]){_0x2b5d52[_0x60b7('0x54')](_0x6e0108[_0x60b7('0x54')]);}if(_0x6e0108[_0x60b7('0x55')]){_0x2b5d52[_0x60b7('0x55')](_0x6e0108[_0x60b7('0x55')]);}}else{_0x2b5d52=applyJoinClauses(_0x2b5d52,![]);_0x2b5d52[_0x60b7('0x56')]('subqry.id');if(_0x6e0108[_0x60b7('0x54')]){_0x32bf2b[_0x60b7('0x54')](_0x6e0108[_0x60b7('0x54')]);}if(_0x6e0108[_0x60b7('0x55')]){_0x32bf2b[_0x60b7('0x55')](_0x6e0108[_0x60b7('0x55')]);}}_0x2b5d52[_0x60b7('0x57')](_0x43a716);if(_0x6e0108[_0x60b7('0x58')]){_0x6e0108[_0x60b7('0x58')][_0x60b7('0x22')](function(_0x4e4d56){_0x32bf2b[_0x60b7('0x58')]('c.'+_0x4e4d56[0x0],_0x4e4d56[0x1]===_0x60b7('0x59')?![]:!![]);_0x2b5d52[_0x60b7('0x58')]('subqry.'+_0x4e4d56[0x0],_0x4e4d56[0x1]===_0x60b7('0x59')?![]:!![]);});}_0x2b5d52[_0x60b7('0xa')](_0x32bf2b,_0x60b7('0xe'));return _0x2b5d52;}function getFilteredContacts(_0xee1399){var _0x5efbdc=[];return db[_0x60b7('0x3a')][_0x60b7('0x5a')]({'attributes':['id',_0x60b7('0x42'),_0x60b7('0x5b')],'raw':!![]})[_0x60b7('0x4d')](function(_0x3d9aa0){_0x5efbdc=_[_0x60b7('0x5c')](_0x3d9aa0,'id');var _0x14b16e={'type':db[_0x60b7('0x5d')][_0x60b7('0x5e')]['SELECT'],'model':db[_0x60b7('0x5f')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0x60b7('0x60')][_0x60b7('0x61')](_0xee1399[_0x60b7('0x62')](),_0x14b16e);})[_0x60b7('0x4d')](function(_0x2b3c3a){_0x2b3c3a['forEach'](function(_0x5d3802){if(_0x5d3802[_0x60b7('0x1d')]){_0x5d3802[_0x60b7('0x63')]=[];_0x5d3802[_0x60b7('0x1d')][_0x60b7('0x64')](',')['forEach'](function(_0x4200e7){_0x5d3802[_0x60b7('0x63')][_0x60b7('0x45')](_0x5efbdc[_0x4200e7]);});}delete _0x5d3802[_0x60b7('0x1d')];});return _0x2b3c3a;});}function countFilteredContacts(_0x313bda,_0x2221d9){var _0x57228f=_0x313bda[_0x60b7('0x65')]();_0x57228f['field']('COUNT(*)');_0x57228f=applyJoinClauses(_0x57228f,!![]);_0x313bda['group'](_0x60b7('0x53'));var _0x508259=utils[_0x60b7('0x21')](_0x2221d9);if(!_[_0x60b7('0x66')](_0x508259)){_0x57228f[_0x60b7('0xc')](_0x60b7('0x67'),_0x508259);}var _0xf213ab={'type':db[_0x60b7('0x5d')][_0x60b7('0x5e')][_0x60b7('0x68')],'raw':!![]};return db[_0x60b7('0x60')][_0x60b7('0x61')](_0x57228f[_0x60b7('0x62')](),_0xf213ab)[_0x60b7('0x4d')](function(_0x1d3660){return _0x1d3660[0x0]['COUNT(*)'];});}module[_0x60b7('0x69')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file
+var _0xbe2f=['ct.CmContactId\x20=\x20','tools_tags','t.id\x20=\x20ct.TagId','firstName','lastName','mobile','fax','CompanyId','createdAt','updatedAt','deletedAt','TagIds','includes','push','forEach','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','getSelectedTags','CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','replace','split','length','getFullTextValue','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','name','dateOfBirth','fieldType','datetime','castTo','buildExpression','value','end','Tag','map','tags','and','ids','User','user','clause','uc.UserId\x20=\x20?','skip','keys','some','Contact','c.ListId\x20IN\x20?','concat','\x20=\x20?','resolve','then','tag','filter','getLists','group','c.id','limit','offset','subqry.id','having','order','DESC','subqry.','keyBy','QueryTypes','SELECT','CmContact','sequelize','query','Tags','clone','COUNT(*)','isEmpty','t.id\x20IN\x20?','exports','lodash','../parsers/advancedSearch','../parsers/qs','../interaction/utils','role','agent','search','ListId','autocomplete','true','select','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','subqry','.id','left_join'];(function(_0x5aefa0,_0x387b10){var _0x34b6e8=function(_0x44285c){while(--_0x44285c){_0x5aefa0['push'](_0x5aefa0['shift']());}};_0x34b6e8(++_0x387b10);}(_0xbe2f,0x182));var _0xfbe2=function(_0x11da2c,_0xb84b59){_0x11da2c=_0x11da2c-0x0;var _0x27c614=_0xbe2f[_0x11da2c];return _0x27c614;};'use strict';var _=require(_0xfbe2('0x0'));var squel=require('squel');var as=require(_0xfbe2('0x1'));var qs=require(_0xfbe2('0x2'));var utils=require(_0xfbe2('0x3'));var db=require('../../mysqldb')['db'];function skipContactsQuery(_0x1fbb7f,_0x3e710b){var _0x15c6c5=![];if(_0x1fbb7f[_0xfbe2('0x4')]===_0xfbe2('0x5')&&!_0x3e710b[_0xfbe2('0x6')]&&!_0x3e710b[_0xfbe2('0x7')]&&_0x3e710b[_0xfbe2('0x8')]!==_0xfbe2('0x9')){_0x15c6c5=!![];}return _0x15c6c5;}function getContactsSubquery(){return squel[_0xfbe2('0xa')]()[_0xfbe2('0xb')](_0xfbe2('0xc'),'c')[_0xfbe2('0xd')](_0xfbe2('0xe'));}function applyJoinClauses(_0x54bc8a,_0x5bc358){var _0x33b88c=_0x5bc358?'c':_0xfbe2('0xf');_0x54bc8a['left_join']('cm_user_has_contacts','uc','uc.CmContactId\x20=\x20'+_0x33b88c+_0xfbe2('0x10'))[_0xfbe2('0x11')]('cm_contact_has_tags','ct',_0xfbe2('0x12')+_0x33b88c+'.id')[_0xfbe2('0x11')](_0xfbe2('0x13'),'t',_0xfbe2('0x14'));return _0x54bc8a;}function addFieldsToQuery(_0x1c84a6,_0x5bb13d,_0x5e9f08,_0x38dbbd,_0x3ff5a6){var _0x20dbe0=_0x3ff5a6?'c':_0xfbe2('0xf');if(!_0x5bb13d){_0x5bb13d=['id',_0xfbe2('0x15'),_0xfbe2('0x16'),'phone',_0xfbe2('0x17'),_0xfbe2('0x18'),'email',_0xfbe2('0x7'),_0xfbe2('0x19'),_0xfbe2('0x1a'),_0xfbe2('0x1b'),_0xfbe2('0x1c'),_0xfbe2('0x1d')];}else if(!_0x5bb13d[_0xfbe2('0x1e')]('id')){_0x5bb13d[_0xfbe2('0x1f')]('id');}var _0x520ea6=_0x5e9f08&&_0x3ff5a6||!_0x5e9f08&&!_0x3ff5a6;if(_0x38dbbd){_0x520ea6=_0x38dbbd&&_0x3ff5a6||!_0x38dbbd&&!_0x3ff5a6;}_0x5bb13d[_0xfbe2('0x20')](function(_0x391149){if(_0x391149==='TagIds'){if(_0x520ea6){_0x1c84a6[_0xfbe2('0x21')](_0xfbe2('0x22'),_0x391149);}else if(_0x5e9f08||_0x38dbbd){_0x1c84a6['field'](_0x20dbe0+'.'+_0x391149);}}else{_0x1c84a6[_0xfbe2('0x21')](_0x20dbe0+'.'+_0x391149);}});return _0x1c84a6;}function getSqlClauses(){var _0x5a7673={'default':squel[_0xfbe2('0x23')](),'fields':squel[_0xfbe2('0x23')](),'filter':squel[_0xfbe2('0x23')](),'tags':{'clause':squel[_0xfbe2('0x23')](),'ids':null},'user':{'clause':squel[_0xfbe2('0x23')](),'skip':![]}};return _0x5a7673;}function parseTagParameter(_0x8b0d53){var _0x4b902a=squel[_0xfbe2('0x23')]();if(_0x8b0d53){var _0x29a9a9=utils[_0xfbe2('0x24')](_0x8b0d53);_0x29a9a9[_0xfbe2('0x20')](function(_0x33ef0a){_0x4b902a['or'](_0xfbe2('0x25'),'%,'+_0x33ef0a+',%');});}return _0x4b902a;}function parseSearchFilter(_0x44b037){var _0x8c7067=squel[_0xfbe2('0x23')]();if(_0x44b037){var _0xb25abc=_0x44b037[_0xfbe2('0x26')]('\x5c','\x5c\x5c')[_0xfbe2('0x26')](/'/g,'\x27\x27');if(_0xb25abc[_0xfbe2('0x27')]('\x20')[_0xfbe2('0x28')]>0x1){_0x8c7067['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xfbe2('0x29')](_0xb25abc,!![]),null);}else{if(qs['isNumeric'](_0xb25abc)){_0x8c7067['or']('c.id\x20LIKE\x20?',_0xb25abc+'%');_0x8c7067['or'](_0xfbe2('0x2a'),_0xb25abc+'%');_0x8c7067['or'](_0xfbe2('0x2b'),_0xb25abc+'%');_0x8c7067['or'](_0xfbe2('0x2c'),_0xb25abc+'%');}else if(qs[_0xfbe2('0x2d')](_0xb25abc)){_0x8c7067['or'](_0xfbe2('0x2e'),_0xb25abc+'%');}else{_0x8c7067['or']('c.firstName\x20LIKE\x20?','%'+_0xb25abc+'%');_0x8c7067['or'](_0xfbe2('0x2f'),'%'+_0xb25abc+'%');_0x8c7067['or'](_0xfbe2('0x2e'),'%'+_0xb25abc+'%');}}}return _0x8c7067;}function parseAdvancedSearchFilter(_0x191716,_0x2e7e60){var _0x136694=getSqlClauses();var _0x32790c=as[_0xfbe2('0x30')](_0x191716);var _0x2c7fb3=_0x32790c[_0xfbe2('0x31')];for(var _0x48598b=0x0;_0x48598b<_0x32790c[_0xfbe2('0x32')][_0xfbe2('0x28')];_0x48598b++){var _0x2d120e=_0x32790c[_0xfbe2('0x32')][_0x48598b];var _0x247d25='c';var _0x31874c=_['find'](_0x2e7e60,[_0xfbe2('0x33'),_0x2d120e['field']]);if(_0x31874c){if(_0x2d120e['field']===_0xfbe2('0x34')||_0x31874c[_0xfbe2('0x35')]===_0xfbe2('0x36')){_0x2d120e[_0xfbe2('0x37')]='DATE';}var _0x37bcf5=as[_0xfbe2('0x38')](_0x247d25,_0x31874c['type'],_0x2d120e);_0x136694['default'][_0x2c7fb3](_0x37bcf5['text'],_0x37bcf5[_0xfbe2('0x39')]['start'],_0x37bcf5[_0xfbe2('0x39')][_0xfbe2('0x3a')]);}else{if(_0x2d120e[_0xfbe2('0x21')]===_0xfbe2('0x3b')){var _0xd1ad11=_0x2d120e['value'][_0xfbe2('0x27')](',')[_0xfbe2('0x3c')](function(_0x5439aa){return Number(_0x5439aa);});var _0x889e34=parseTagParameter(_0xd1ad11);_0x136694[_0xfbe2('0x3d')]['clause'][_0xfbe2('0x3e')](_0x889e34);_0x136694[_0xfbe2('0x3d')][_0xfbe2('0x3f')]=_0xd1ad11;}else if(_0x2d120e[_0xfbe2('0x21')]===_0xfbe2('0x40')){_0x136694[_0xfbe2('0x41')][_0xfbe2('0x42')][_0xfbe2('0x3e')](_0xfbe2('0x43'),_0x2d120e[_0xfbe2('0x39')]);_0x136694[_0xfbe2('0x41')][_0xfbe2('0x44')]=!![];}}}return _0x136694;}function parseModelFields(_0x4223bc,_0x1c893f){var _0x31237b=squel['expr']();var _0x47cbde=_(_0x4223bc)[_0xfbe2('0x45')]()['map'](function(_0x35a89d){return _[_0xfbe2('0x46')](_0x1c893f,[_0xfbe2('0x33'),_0x35a89d])?_0x35a89d:undefined;})['compact']()[_0xfbe2('0x39')]();if(_0x4223bc[_0xfbe2('0x47')]){_0x47cbde['push'](_0xfbe2('0x47'));}if(_0x4223bc['User']){_0x47cbde[_0xfbe2('0x1f')](_0xfbe2('0x40'));}if(_0x47cbde[_0xfbe2('0x28')]>0x0){_0x47cbde['forEach'](function(_0x48389e){if(_0x48389e==='ListId'){_0x31237b[_0xfbe2('0x3e')](_0xfbe2('0x48'),[][_0xfbe2('0x49')](_0x4223bc[_0x48389e]));}else if(_0x48389e===_0xfbe2('0x47')){var _0x344d87='%'+_0x4223bc[_0x48389e]+'%';_0x31237b[_0xfbe2('0x3e')]('CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?',_0x344d87);}else if(_0x48389e==='User'){_0x31237b[_0xfbe2('0x3e')]('uc.UserId\x20=\x20?',_0x4223bc[_0x48389e]);}else{_0x31237b[_0xfbe2('0x3e')]('c.'+_0x48389e+_0xfbe2('0x4a'),_0x4223bc[_0x48389e]);}});}return _0x31237b;}function parseQueryParameters(_0x7a0563,_0x48a22a){var _0x5b9770=getSqlClauses();return Promise[_0xfbe2('0x4b')]()['then'](function(){return parseModelFields(_0x7a0563,_0x48a22a);})[_0xfbe2('0x4c')](function(_0x406a99){_0x5b9770['fields'][_0xfbe2('0x3e')](_0x406a99);return parseTagParameter(_0x7a0563[_0xfbe2('0x4d')]);})[_0xfbe2('0x4c')](function(_0x48d064){_0x5b9770['tags'][_0xfbe2('0x42')][_0xfbe2('0x3e')](_0x48d064);return parseSearchFilter(_0x7a0563['filter']);})[_0xfbe2('0x4c')](function(_0x48b090){_0x5b9770[_0xfbe2('0x4e')]=_0x48b090;return _0x5b9770;});}function checkListsRestrictions(_0x130fa3,_0x3c7330,_0x3f8e13){var _0xa3885b=squel[_0xfbe2('0x23')]();return Promise[_0xfbe2('0x4b')]()[_0xfbe2('0x4c')](function(){if(_0x3c7330[_0xfbe2('0x6')]&&_0x130fa3[_0xfbe2('0x4')]==='agent'&&!_0x3f8e13){return _0x130fa3[_0xfbe2('0x4f')]({'attributes':['id'],'raw':!![]});}})[_0xfbe2('0x4c')](function(_0x15fa4d){if(_0x15fa4d){if(_0x15fa4d[_0xfbe2('0x28')]===0x0){_0xa3885b['and']('c.ListId\x20IS\x20NULL');}else{_0xa3885b[_0xfbe2('0x3e')](_0xfbe2('0x48'),_['map'](_0x15fa4d,'id'));}}})[_0xfbe2('0x4c')](function(){return _0xa3885b;});}function buildContactsQuery(_0xe30a68,_0x57f853,_0x56171b,_0x3ac7ee,_0x3d5613,_0x1407f4){if(_0x57f853){_0x57f853=_0x56171b['attributes'];}_0xe30a68=addFieldsToQuery(_0xe30a68,_0x57f853,_0x3ac7ee,_0x1407f4,!![]);var _0x5109aa=squel[_0xfbe2('0xa')]();_0x5109aa=addFieldsToQuery(_0x5109aa,_0x57f853,_0x3ac7ee,_0x1407f4,![]);if(_0x3ac7ee||_0x1407f4){_0xe30a68=applyJoinClauses(_0xe30a68,!![]);_0xe30a68[_0xfbe2('0x50')](_0xfbe2('0x51'));if(_0x56171b[_0xfbe2('0x52')]){_0x5109aa[_0xfbe2('0x52')](_0x56171b['limit']);}if(_0x56171b[_0xfbe2('0x53')]){_0x5109aa[_0xfbe2('0x53')](_0x56171b[_0xfbe2('0x53')]);}}else{_0x5109aa=applyJoinClauses(_0x5109aa,![]);_0x5109aa[_0xfbe2('0x50')](_0xfbe2('0x54'));if(_0x56171b[_0xfbe2('0x52')]){_0xe30a68[_0xfbe2('0x52')](_0x56171b[_0xfbe2('0x52')]);}if(_0x56171b['offset']){_0xe30a68[_0xfbe2('0x53')](_0x56171b[_0xfbe2('0x53')]);}}_0x5109aa[_0xfbe2('0x55')](_0x3d5613);if(_0x56171b[_0xfbe2('0x56')]){_0x56171b['order'][_0xfbe2('0x20')](function(_0x4bd1df){_0xe30a68[_0xfbe2('0x56')]('c.'+_0x4bd1df[0x0],_0x4bd1df[0x1]===_0xfbe2('0x57')?![]:!![]);_0x5109aa[_0xfbe2('0x56')](_0xfbe2('0x58')+_0x4bd1df[0x0],_0x4bd1df[0x1]===_0xfbe2('0x57')?![]:!![]);});}_0x5109aa[_0xfbe2('0xb')](_0xe30a68,_0xfbe2('0xf'));return _0x5109aa;}function getFilteredContacts(_0xc611be){var _0x3a8f2b=[];return db[_0xfbe2('0x3b')]['findAll']({'attributes':['id',_0xfbe2('0x33'),'color'],'raw':!![]})[_0xfbe2('0x4c')](function(_0x2a91c6){_0x3a8f2b=_[_0xfbe2('0x59')](_0x2a91c6,'id');var _0x1af787={'type':db['Sequelize'][_0xfbe2('0x5a')][_0xfbe2('0x5b')],'model':db[_0xfbe2('0x5c')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0xfbe2('0x5d')][_0xfbe2('0x5e')](_0xc611be['toString'](),_0x1af787);})['then'](function(_0x4a06cc){_0x4a06cc['forEach'](function(_0x52011f){if(_0x52011f[_0xfbe2('0x1d')]){_0x52011f['Tags']=[];_0x52011f[_0xfbe2('0x1d')][_0xfbe2('0x27')](',')[_0xfbe2('0x20')](function(_0x4a1a05){_0x52011f[_0xfbe2('0x5f')][_0xfbe2('0x1f')](_0x3a8f2b[_0x4a1a05]);});}delete _0x52011f[_0xfbe2('0x1d')];});return _0x4a06cc;});}function countFilteredContacts(_0x49f4ac,_0x3d1a15){var _0x4783ce=_0x49f4ac[_0xfbe2('0x60')]();_0x4783ce[_0xfbe2('0x21')](_0xfbe2('0x61'));_0x4783ce=applyJoinClauses(_0x4783ce,!![]);_0x49f4ac[_0xfbe2('0x50')]('c.id');var _0x1ab670=utils[_0xfbe2('0x24')](_0x3d1a15);if(!_[_0xfbe2('0x62')](_0x1ab670)){_0x4783ce['where'](_0xfbe2('0x63'),_0x1ab670);}var _0x563d79={'type':db['Sequelize'][_0xfbe2('0x5a')][_0xfbe2('0x5b')],'raw':!![]};return db[_0xfbe2('0x5d')]['query'](_0x4783ce['toString'](),_0x563d79)[_0xfbe2('0x4c')](function(_0x523f39){return _0x523f39[0x0]['COUNT(*)'];});}module[_0xfbe2('0x64')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file