Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / components / contacts / sql-utils.js
index 6d9ffa5..f404fd6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x3193=['dateOfBirth','castTo','DATE','type','default','text','value','start','end','map','tags','clause','and','ids','user','uc.UserId\x20=\x20?','skip','keys','some','compact','Contact','User','push','c.ListId\x20IN\x20?','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','resolve','then','fields','tag','filter','getLists','group','c.id','limit','offset','subqry.id','having','order','DESC','subqry.','subqry','Tag','findAll','color','keyBy','Sequelize','SELECT','CmContact','sequelize','query','toString','Tags','clone','COUNT(*)','isEmpty','t.id\x20IN\x20?','QueryTypes','exports','lodash','squel','../parsers/advancedSearch','../../mysqldb','role','agent','search','ListId','autocomplete','true','from','where','c.deletedAt\x20IS\x20NULL','cm_user_has_contacts','uc.CmContactId\x20=\x20','.id','cm_contact_has_tags','ct.CmContactId\x20=\x20','left_join','t.id\x20=\x20ct.TagId','lastName','phone','mobile','fax','createdAt','deletedAt','TagIds','includes','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.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','find','name'];(function(_0x439ea2,_0x504140){var _0x103472=function(_0x1c6a10){while(--_0x1c6a10){_0x439ea2['push'](_0x439ea2['shift']());}};_0x103472(++_0x504140);}(_0x3193,0x115));var _0x3319=function(_0x458f80,_0x23459f){_0x458f80=_0x458f80-0x0;var _0x2586b9=_0x3193[_0x458f80];return _0x2586b9;};'use strict';var _=require(_0x3319('0x0'));var squel=require(_0x3319('0x1'));var as=require(_0x3319('0x2'));var qs=require('../parsers/qs');var utils=require('../interaction/utils');var db=require(_0x3319('0x3'))['db'];function skipContactsQuery(_0x41ffc8,_0x408d01){var _0x53a03c=![];if(_0x41ffc8[_0x3319('0x4')]===_0x3319('0x5')&&!_0x408d01[_0x3319('0x6')]&&!_0x408d01[_0x3319('0x7')]&&_0x408d01[_0x3319('0x8')]!==_0x3319('0x9')){_0x53a03c=!![];}return _0x53a03c;}function getContactsSubquery(){return squel['select']()[_0x3319('0xa')]('cm_contacts','c')[_0x3319('0xb')](_0x3319('0xc'));}function applyJoinClauses(_0x42782a,_0x38b02e){var _0x4b39b7=_0x38b02e?'c':'subqry';_0x42782a['left_join'](_0x3319('0xd'),'uc',_0x3319('0xe')+_0x4b39b7+_0x3319('0xf'))['left_join'](_0x3319('0x10'),'ct',_0x3319('0x11')+_0x4b39b7+'.id')[_0x3319('0x12')]('tools_tags','t',_0x3319('0x13'));return _0x42782a;}function addFieldsToQuery(_0x5bb693,_0x5784f4,_0x3a33c9,_0x421974,_0x23b754){var _0x4a39a3=_0x23b754?'c':'subqry';if(!_0x5784f4){_0x5784f4=['id','firstName',_0x3319('0x14'),_0x3319('0x15'),_0x3319('0x16'),_0x3319('0x17'),'email',_0x3319('0x7'),'CompanyId',_0x3319('0x18'),'updatedAt',_0x3319('0x19'),_0x3319('0x1a')];}else if(!_0x5784f4[_0x3319('0x1b')]('id')){_0x5784f4['push']('id');}var _0x11b92d=_0x3a33c9&&_0x23b754||!_0x3a33c9&&!_0x23b754;if(_0x421974){_0x11b92d=_0x421974&&_0x23b754||!_0x421974&&!_0x23b754;}_0x5784f4[_0x3319('0x1c')](function(_0x526c53){if(_0x526c53===_0x3319('0x1a')){if(_0x11b92d){_0x5bb693['field']('GROUP_CONCAT(DISTINCT\x20t.id)',_0x526c53);}else if(_0x3a33c9||_0x421974){_0x5bb693['field'](_0x4a39a3+'.'+_0x526c53);}}else{_0x5bb693[_0x3319('0x1d')](_0x4a39a3+'.'+_0x526c53);}});return _0x5bb693;}function getSqlClauses(){var _0x19b0d6={'default':squel['expr'](),'fields':squel[_0x3319('0x1e')](),'filter':squel[_0x3319('0x1e')](),'tags':{'clause':squel[_0x3319('0x1e')](),'ids':null},'user':{'clause':squel['expr'](),'skip':![]}};return _0x19b0d6;}function parseTagParameter(_0xe1231b){var _0x4bce77=squel[_0x3319('0x1e')]();if(_0xe1231b){var _0x4e8bf3=utils[_0x3319('0x1f')](_0xe1231b);_0x4e8bf3[_0x3319('0x1c')](function(_0x419fc6){_0x4bce77['or'](_0x3319('0x20'),'%,'+_0x419fc6+',%');});}return _0x4bce77;}function parseSearchFilter(_0x6dec1c){var _0x4fad42=squel[_0x3319('0x1e')]();if(_0x6dec1c){var _0x404e95=_0x6dec1c[_0x3319('0x21')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(_0x404e95[_0x3319('0x22')]('\x20')[_0x3319('0x23')]>0x1){_0x4fad42['or'](_0x3319('0x24'),qs[_0x3319('0x25')](_0x404e95,!![]),null);}else{if(qs[_0x3319('0x26')](_0x404e95)){_0x4fad42['or']('c.id\x20LIKE\x20?',_0x404e95+'%');_0x4fad42['or']('c.phone\x20LIKE\x20?',_0x404e95+'%');_0x4fad42['or'](_0x3319('0x27'),_0x404e95+'%');_0x4fad42['or'](_0x3319('0x28'),_0x404e95+'%');}else if(qs[_0x3319('0x29')](_0x404e95)){_0x4fad42['or'](_0x3319('0x2a'),_0x404e95+'%');}else{_0x4fad42['or'](_0x3319('0x2b'),'%'+_0x404e95+'%');_0x4fad42['or'](_0x3319('0x2c'),'%'+_0x404e95+'%');_0x4fad42['or'](_0x3319('0x2a'),'%'+_0x404e95+'%');}}}return _0x4fad42;}function parseAdvancedSearchFilter(_0x35c1fe,_0x1cdc6c){var _0x4c0851=getSqlClauses();var _0x37da92=as[_0x3319('0x2d')](_0x35c1fe);var _0x56f3b0=_0x37da92[_0x3319('0x2e')];for(var _0x55190d=0x0;_0x55190d<_0x37da92[_0x3319('0x2f')][_0x3319('0x23')];_0x55190d++){var _0x47664d=_0x37da92[_0x3319('0x2f')][_0x55190d];var _0x273d2c='c';var _0x6e38a4=_[_0x3319('0x30')](_0x1cdc6c,[_0x3319('0x31'),_0x47664d[_0x3319('0x1d')]]);if(_0x6e38a4){if(_0x47664d[_0x3319('0x1d')]===_0x3319('0x32')||_0x6e38a4['fieldType']==='datetime'){_0x47664d[_0x3319('0x33')]=_0x3319('0x34');}var _0x45f5e0=as['buildExpression'](_0x273d2c,_0x6e38a4[_0x3319('0x35')],_0x47664d);_0x4c0851[_0x3319('0x36')][_0x56f3b0](_0x45f5e0[_0x3319('0x37')],_0x45f5e0[_0x3319('0x38')][_0x3319('0x39')],_0x45f5e0[_0x3319('0x38')][_0x3319('0x3a')]);}else{if(_0x47664d[_0x3319('0x1d')]==='Tag'){var _0x2d78f8=_0x47664d[_0x3319('0x38')][_0x3319('0x22')](',')[_0x3319('0x3b')](function(_0x49a412){return Number(_0x49a412);});var _0x1c2f38=parseTagParameter(_0x2d78f8);_0x4c0851[_0x3319('0x3c')][_0x3319('0x3d')][_0x3319('0x3e')](_0x1c2f38);_0x4c0851[_0x3319('0x3c')][_0x3319('0x3f')]=_0x2d78f8;}else if(_0x47664d[_0x3319('0x1d')]==='User'){_0x4c0851[_0x3319('0x40')][_0x3319('0x3d')]['and'](_0x3319('0x41'),_0x47664d[_0x3319('0x38')]);_0x4c0851['user'][_0x3319('0x42')]=!![];}}}return _0x4c0851;}function parseModelFields(_0x4aa1c6,_0xef600c){var _0x3b8ef9=squel[_0x3319('0x1e')]();var _0x52eb97=_(_0x4aa1c6)[_0x3319('0x43')]()[_0x3319('0x3b')](function(_0x958418){return _[_0x3319('0x44')](_0xef600c,[_0x3319('0x31'),_0x958418])?_0x958418:undefined;})[_0x3319('0x45')]()[_0x3319('0x38')]();if(_0x4aa1c6[_0x3319('0x46')]){_0x52eb97['push'](_0x3319('0x46'));}if(_0x4aa1c6[_0x3319('0x47')]){_0x52eb97[_0x3319('0x48')](_0x3319('0x47'));}if(_0x52eb97[_0x3319('0x23')]>0x0){_0x52eb97[_0x3319('0x1c')](function(_0x466414){if(_0x466414===_0x3319('0x7')){_0x3b8ef9['and'](_0x3319('0x49'),[]['concat'](_0x4aa1c6[_0x466414]));}else if(_0x466414===_0x3319('0x46')){var _0x429b6f='%'+_0x4aa1c6[_0x466414]+'%';_0x3b8ef9[_0x3319('0x3e')](_0x3319('0x4a'),_0x429b6f);}else if(_0x466414===_0x3319('0x47')){_0x3b8ef9['and'](_0x3319('0x41'),_0x4aa1c6[_0x466414]);}else{_0x3b8ef9[_0x3319('0x3e')]('c.'+_0x466414+_0x3319('0x4b'),_0x4aa1c6[_0x466414]);}});}return _0x3b8ef9;}function parseQueryParameters(_0x38795d,_0x2e16d1){var _0x38afb7=getSqlClauses();return Promise[_0x3319('0x4c')]()[_0x3319('0x4d')](function(){return parseModelFields(_0x38795d,_0x2e16d1);})[_0x3319('0x4d')](function(_0x2de87e){_0x38afb7[_0x3319('0x4e')][_0x3319('0x3e')](_0x2de87e);return parseTagParameter(_0x38795d[_0x3319('0x4f')]);})['then'](function(_0x161b67){_0x38afb7[_0x3319('0x3c')][_0x3319('0x3d')]['and'](_0x161b67);return parseSearchFilter(_0x38795d['filter']);})['then'](function(_0x369a92){_0x38afb7[_0x3319('0x50')]=_0x369a92;return _0x38afb7;});}function checkListsRestrictions(_0x3cb9c2,_0x1949e6,_0x38ffdc){var _0xad60a4=squel[_0x3319('0x1e')]();return Promise[_0x3319('0x4c')]()[_0x3319('0x4d')](function(){if(_0x1949e6[_0x3319('0x6')]&&_0x3cb9c2[_0x3319('0x4')]==='agent'&&!_0x38ffdc){return _0x3cb9c2[_0x3319('0x51')]({'attributes':['id'],'raw':!![]});}})[_0x3319('0x4d')](function(_0x4b68d0){if(_0x4b68d0){if(_0x4b68d0['length']===0x0){_0xad60a4[_0x3319('0x3e')]('c.ListId\x20IS\x20NULL');}else{_0xad60a4[_0x3319('0x3e')](_0x3319('0x49'),_[_0x3319('0x3b')](_0x4b68d0,'id'));}}})[_0x3319('0x4d')](function(){return _0xad60a4;});}function buildContactsQuery(_0x32054c,_0x5c69f1,_0x3084ef,_0x194118,_0x3dfc3e,_0x46610c){if(_0x5c69f1){_0x5c69f1=_0x3084ef['attributes'];}_0x32054c=addFieldsToQuery(_0x32054c,_0x5c69f1,_0x194118,_0x46610c,!![]);var _0x170f64=squel['select']();_0x170f64=addFieldsToQuery(_0x170f64,_0x5c69f1,_0x194118,_0x46610c,![]);if(_0x194118||_0x46610c){_0x32054c=applyJoinClauses(_0x32054c,!![]);_0x32054c[_0x3319('0x52')](_0x3319('0x53'));if(_0x3084ef[_0x3319('0x54')]){_0x170f64[_0x3319('0x54')](_0x3084ef[_0x3319('0x54')]);}if(_0x3084ef[_0x3319('0x55')]){_0x170f64['offset'](_0x3084ef[_0x3319('0x55')]);}}else{_0x170f64=applyJoinClauses(_0x170f64,![]);_0x170f64['group'](_0x3319('0x56'));if(_0x3084ef['limit']){_0x32054c[_0x3319('0x54')](_0x3084ef[_0x3319('0x54')]);}if(_0x3084ef[_0x3319('0x55')]){_0x32054c[_0x3319('0x55')](_0x3084ef['offset']);}}_0x170f64[_0x3319('0x57')](_0x3dfc3e);if(_0x3084ef[_0x3319('0x58')]){_0x3084ef['order'][_0x3319('0x1c')](function(_0x4c628c){_0x32054c[_0x3319('0x58')]('c.'+_0x4c628c[0x0],_0x4c628c[0x1]===_0x3319('0x59')?![]:!![]);_0x170f64[_0x3319('0x58')](_0x3319('0x5a')+_0x4c628c[0x0],_0x4c628c[0x1]===_0x3319('0x59')?![]:!![]);});}_0x170f64['from'](_0x32054c,_0x3319('0x5b'));return _0x170f64;}function getFilteredContacts(_0x180af0){var _0x24e1a6=[];return db[_0x3319('0x5c')][_0x3319('0x5d')]({'attributes':['id',_0x3319('0x31'),_0x3319('0x5e')],'raw':!![]})[_0x3319('0x4d')](function(_0x4ff971){_0x24e1a6=_[_0x3319('0x5f')](_0x4ff971,'id');var _0x2947fb={'type':db[_0x3319('0x60')]['QueryTypes'][_0x3319('0x61')],'model':db[_0x3319('0x62')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0x3319('0x63')][_0x3319('0x64')](_0x180af0[_0x3319('0x65')](),_0x2947fb);})['then'](function(_0x43356e){_0x43356e[_0x3319('0x1c')](function(_0x32fbed){if(_0x32fbed['TagIds']){_0x32fbed[_0x3319('0x66')]=[];_0x32fbed[_0x3319('0x1a')]['split'](',')[_0x3319('0x1c')](function(_0x239462){_0x32fbed[_0x3319('0x66')][_0x3319('0x48')](_0x24e1a6[_0x239462]);});}delete _0x32fbed['TagIds'];});return _0x43356e;});}function countFilteredContacts(_0x2abc68,_0x592d29){var _0x31f32a=_0x2abc68[_0x3319('0x67')]();_0x31f32a['field'](_0x3319('0x68'));_0x31f32a=applyJoinClauses(_0x31f32a,!![]);_0x2abc68[_0x3319('0x52')](_0x3319('0x53'));var _0x5a51b6=utils[_0x3319('0x1f')](_0x592d29);if(!_[_0x3319('0x69')](_0x5a51b6)){_0x31f32a['where'](_0x3319('0x6a'),_0x5a51b6);}var _0x2187f3={'type':db[_0x3319('0x60')][_0x3319('0x6b')]['SELECT'],'raw':!![]};return db['sequelize']['query'](_0x31f32a[_0x3319('0x65')](),_0x2187f3)[_0x3319('0x4d')](function(_0x573681){return _0x573681[0x0]['COUNT(*)'];});}module[_0x3319('0x6c')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file
+var _0x1b95=['Sequelize','CmContact','sequelize','query','toString','Tags','clone','isEmpty','t.id\x20IN\x20?','QueryTypes','SELECT','COUNT(*)','exports','lodash','squel','../parsers/advancedSearch','../parsers/qs','../interaction/utils','agent','search','ListId','autocomplete','true','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20','.id','cm_contact_has_tags','ct.CmContactId\x20=\x20','tools_tags','t.id\x20=\x20ct.TagId','subqry','firstName','lastName','phone','mobile','CompanyId','createdAt','deletedAt','TagIds','push','forEach','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','getSelectedTags','CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','replace','split','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.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','find','fieldType','datetime','castTo','DATE','type','default','text','value','end','tags','ids','User','user','clause','and','uc.UserId\x20=\x20?','skip','keys','map','some','compact','Contact','c.ListId\x20IN\x20?','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','resolve','then','fields','tag','filter','role','getLists','length','c.ListId\x20IS\x20NULL','attributes','select','group','c.id','limit','offset','subqry.id','having','order','DESC','subqry.','name','color','keyBy'];(function(_0x429b8c,_0xa0de50){var _0x5033dc=function(_0x1c612f){while(--_0x1c612f){_0x429b8c['push'](_0x429b8c['shift']());}};_0x5033dc(++_0xa0de50);}(_0x1b95,0x7f));var _0x51b9=function(_0x1d1779,_0x284147){_0x1d1779=_0x1d1779-0x0;var _0x2377e9=_0x1b95[_0x1d1779];return _0x2377e9;};'use strict';var _=require(_0x51b9('0x0'));var squel=require(_0x51b9('0x1'));var as=require(_0x51b9('0x2'));var qs=require(_0x51b9('0x3'));var utils=require(_0x51b9('0x4'));var db=require('../../mysqldb')['db'];function skipContactsQuery(_0x38e23b,_0x525436){var _0x4c7bbc=![];if(_0x38e23b['role']===_0x51b9('0x5')&&!_0x525436[_0x51b9('0x6')]&&!_0x525436[_0x51b9('0x7')]&&_0x525436[_0x51b9('0x8')]!==_0x51b9('0x9')){_0x4c7bbc=!![];}return _0x4c7bbc;}function getContactsSubquery(){return squel['select']()[_0x51b9('0xa')](_0x51b9('0xb'),'c')[_0x51b9('0xc')](_0x51b9('0xd'));}function applyJoinClauses(_0x7dc2e2,_0x53c17d){var _0x37f271=_0x53c17d?'c':'subqry';_0x7dc2e2[_0x51b9('0xe')](_0x51b9('0xf'),'uc',_0x51b9('0x10')+_0x37f271+_0x51b9('0x11'))[_0x51b9('0xe')](_0x51b9('0x12'),'ct',_0x51b9('0x13')+_0x37f271+_0x51b9('0x11'))[_0x51b9('0xe')](_0x51b9('0x14'),'t',_0x51b9('0x15'));return _0x7dc2e2;}function addFieldsToQuery(_0x137504,_0x86b650,_0x389e18,_0x5363d1,_0x373cca){var _0x51dd52=_0x373cca?'c':_0x51b9('0x16');if(!_0x86b650){_0x86b650=['id',_0x51b9('0x17'),_0x51b9('0x18'),_0x51b9('0x19'),_0x51b9('0x1a'),'fax','email',_0x51b9('0x7'),_0x51b9('0x1b'),_0x51b9('0x1c'),'updatedAt',_0x51b9('0x1d'),_0x51b9('0x1e')];}else if(!_0x86b650['includes']('id')){_0x86b650[_0x51b9('0x1f')]('id');}var _0x405df9=_0x389e18&&_0x373cca||!_0x389e18&&!_0x373cca;if(_0x5363d1){_0x405df9=_0x5363d1&&_0x373cca||!_0x5363d1&&!_0x373cca;}_0x86b650[_0x51b9('0x20')](function(_0x2c7a28){if(_0x2c7a28==='TagIds'){if(_0x405df9){_0x137504[_0x51b9('0x21')](_0x51b9('0x22'),_0x2c7a28);}else if(_0x389e18||_0x5363d1){_0x137504['field'](_0x51dd52+'.'+_0x2c7a28);}}else{_0x137504[_0x51b9('0x21')](_0x51dd52+'.'+_0x2c7a28);}});return _0x137504;}function getSqlClauses(){var _0x463cb9={'default':squel[_0x51b9('0x23')](),'fields':squel['expr'](),'filter':squel[_0x51b9('0x23')](),'tags':{'clause':squel[_0x51b9('0x23')](),'ids':null},'user':{'clause':squel[_0x51b9('0x23')](),'skip':![]}};return _0x463cb9;}function parseTagParameter(_0x168996){var _0x41ff66=squel[_0x51b9('0x23')]();if(_0x168996){var _0x6cd3dd=utils[_0x51b9('0x24')](_0x168996);_0x6cd3dd[_0x51b9('0x20')](function(_0x5e525b){_0x41ff66['or'](_0x51b9('0x25'),'%,'+_0x5e525b+',%');});}return _0x41ff66;}function parseSearchFilter(_0x191037){var _0x205c76=squel[_0x51b9('0x23')]();if(_0x191037){var _0x26e5a4=_0x191037[_0x51b9('0x26')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(_0x26e5a4[_0x51b9('0x27')]('\x20')['length']>0x1){_0x205c76['or'](_0x51b9('0x28'),qs[_0x51b9('0x29')](_0x26e5a4,!![]),null);}else{if(qs[_0x51b9('0x2a')](_0x26e5a4)){_0x205c76['or'](_0x51b9('0x2b'),_0x26e5a4+'%');_0x205c76['or']('c.phone\x20LIKE\x20?',_0x26e5a4+'%');_0x205c76['or'](_0x51b9('0x2c'),_0x26e5a4+'%');_0x205c76['or'](_0x51b9('0x2d'),_0x26e5a4+'%');}else if(qs[_0x51b9('0x2e')](_0x26e5a4)){_0x205c76['or'](_0x51b9('0x2f'),_0x26e5a4+'%');}else{_0x205c76['or'](_0x51b9('0x30'),'%'+_0x26e5a4+'%');_0x205c76['or'](_0x51b9('0x31'),'%'+_0x26e5a4+'%');_0x205c76['or']('c.email\x20LIKE\x20?','%'+_0x26e5a4+'%');}}}return _0x205c76;}function parseAdvancedSearchFilter(_0x25aba6,_0x40c9d5){var _0x42c812=getSqlClauses();var _0x2f3146=as[_0x51b9('0x32')](_0x25aba6);var _0x27d368=_0x2f3146[_0x51b9('0x33')];for(var _0x2ae564=0x0;_0x2ae564<_0x2f3146['conditions']['length'];_0x2ae564++){var _0xef923b=_0x2f3146[_0x51b9('0x34')][_0x2ae564];var _0x5bf15b='c';var _0x5f38ee=_[_0x51b9('0x35')](_0x40c9d5,['name',_0xef923b['field']]);if(_0x5f38ee){if(_0xef923b[_0x51b9('0x21')]==='dateOfBirth'||_0x5f38ee[_0x51b9('0x36')]===_0x51b9('0x37')){_0xef923b[_0x51b9('0x38')]=_0x51b9('0x39');}var _0x15bb25=as['buildExpression'](_0x5bf15b,_0x5f38ee[_0x51b9('0x3a')],_0xef923b);_0x42c812[_0x51b9('0x3b')][_0x27d368](_0x15bb25[_0x51b9('0x3c')],_0x15bb25[_0x51b9('0x3d')]['start'],_0x15bb25[_0x51b9('0x3d')][_0x51b9('0x3e')]);}else{if(_0xef923b[_0x51b9('0x21')]==='Tag'){var _0x3e5800=_0xef923b[_0x51b9('0x3d')]['split'](',')['map'](function(_0x98d22d){return Number(_0x98d22d);});var _0x5f0ac7=parseTagParameter(_0x3e5800);_0x42c812['tags']['clause']['and'](_0x5f0ac7);_0x42c812[_0x51b9('0x3f')][_0x51b9('0x40')]=_0x3e5800;}else if(_0xef923b['field']===_0x51b9('0x41')){_0x42c812[_0x51b9('0x42')][_0x51b9('0x43')][_0x51b9('0x44')](_0x51b9('0x45'),_0xef923b[_0x51b9('0x3d')]);_0x42c812[_0x51b9('0x42')][_0x51b9('0x46')]=!![];}}}return _0x42c812;}function parseModelFields(_0xee3e0e,_0x5e6943){var _0x4ff881=squel[_0x51b9('0x23')]();var _0xa8909e=_(_0xee3e0e)[_0x51b9('0x47')]()[_0x51b9('0x48')](function(_0x158664){return _[_0x51b9('0x49')](_0x5e6943,['name',_0x158664])?_0x158664:undefined;})[_0x51b9('0x4a')]()[_0x51b9('0x3d')]();if(_0xee3e0e[_0x51b9('0x4b')]){_0xa8909e['push'](_0x51b9('0x4b'));}if(_0xee3e0e[_0x51b9('0x41')]){_0xa8909e[_0x51b9('0x1f')](_0x51b9('0x41'));}if(_0xa8909e['length']>0x0){_0xa8909e['forEach'](function(_0x4da29d){if(_0x4da29d===_0x51b9('0x7')){_0x4ff881[_0x51b9('0x44')](_0x51b9('0x4c'),[]['concat'](_0xee3e0e[_0x4da29d]));}else if(_0x4da29d===_0x51b9('0x4b')){var _0x23f86d='%'+_0xee3e0e[_0x4da29d]+'%';_0x4ff881[_0x51b9('0x44')](_0x51b9('0x4d'),_0x23f86d);}else if(_0x4da29d==='User'){_0x4ff881[_0x51b9('0x44')]('uc.UserId\x20=\x20?',_0xee3e0e[_0x4da29d]);}else{_0x4ff881['and']('c.'+_0x4da29d+'\x20=\x20?',_0xee3e0e[_0x4da29d]);}});}return _0x4ff881;}function parseQueryParameters(_0x29d714,_0xc09305){var _0x3cff89=getSqlClauses();return Promise[_0x51b9('0x4e')]()[_0x51b9('0x4f')](function(){return parseModelFields(_0x29d714,_0xc09305);})['then'](function(_0x10d5d3){_0x3cff89[_0x51b9('0x50')][_0x51b9('0x44')](_0x10d5d3);return parseTagParameter(_0x29d714[_0x51b9('0x51')]);})[_0x51b9('0x4f')](function(_0x68581){_0x3cff89[_0x51b9('0x3f')][_0x51b9('0x43')][_0x51b9('0x44')](_0x68581);return parseSearchFilter(_0x29d714[_0x51b9('0x52')]);})[_0x51b9('0x4f')](function(_0x5d7c4e){_0x3cff89[_0x51b9('0x52')]=_0x5d7c4e;return _0x3cff89;});}function checkListsRestrictions(_0x23c9b8,_0xbe7925,_0x145b41){var _0x1b066f=squel[_0x51b9('0x23')]();return Promise['resolve']()[_0x51b9('0x4f')](function(){if(_0xbe7925['search']&&_0x23c9b8[_0x51b9('0x53')]===_0x51b9('0x5')&&!_0x145b41){return _0x23c9b8[_0x51b9('0x54')]({'attributes':['id'],'raw':!![]});}})[_0x51b9('0x4f')](function(_0x3d8a37){if(_0x3d8a37){if(_0x3d8a37[_0x51b9('0x55')]===0x0){_0x1b066f[_0x51b9('0x44')](_0x51b9('0x56'));}else{_0x1b066f['and'](_0x51b9('0x4c'),_['map'](_0x3d8a37,'id'));}}})[_0x51b9('0x4f')](function(){return _0x1b066f;});}function buildContactsQuery(_0x581f08,_0x52a579,_0x2fd703,_0x3089a4,_0x13fe05,_0x4fe7c2){if(_0x52a579){_0x52a579=_0x2fd703[_0x51b9('0x57')];}_0x581f08=addFieldsToQuery(_0x581f08,_0x52a579,_0x3089a4,_0x4fe7c2,!![]);var _0x379db5=squel[_0x51b9('0x58')]();_0x379db5=addFieldsToQuery(_0x379db5,_0x52a579,_0x3089a4,_0x4fe7c2,![]);if(_0x3089a4||_0x4fe7c2){_0x581f08=applyJoinClauses(_0x581f08,!![]);_0x581f08[_0x51b9('0x59')](_0x51b9('0x5a'));if(_0x2fd703[_0x51b9('0x5b')]){_0x379db5['limit'](_0x2fd703[_0x51b9('0x5b')]);}if(_0x2fd703[_0x51b9('0x5c')]){_0x379db5[_0x51b9('0x5c')](_0x2fd703[_0x51b9('0x5c')]);}}else{_0x379db5=applyJoinClauses(_0x379db5,![]);_0x379db5['group'](_0x51b9('0x5d'));if(_0x2fd703['limit']){_0x581f08[_0x51b9('0x5b')](_0x2fd703[_0x51b9('0x5b')]);}if(_0x2fd703[_0x51b9('0x5c')]){_0x581f08[_0x51b9('0x5c')](_0x2fd703[_0x51b9('0x5c')]);}}_0x379db5[_0x51b9('0x5e')](_0x13fe05);if(_0x2fd703['order']){_0x2fd703[_0x51b9('0x5f')]['forEach'](function(_0x118cdf){_0x581f08[_0x51b9('0x5f')]('c.'+_0x118cdf[0x0],_0x118cdf[0x1]===_0x51b9('0x60')?![]:!![]);_0x379db5[_0x51b9('0x5f')](_0x51b9('0x61')+_0x118cdf[0x0],_0x118cdf[0x1]===_0x51b9('0x60')?![]:!![]);});}_0x379db5[_0x51b9('0xa')](_0x581f08,_0x51b9('0x16'));return _0x379db5;}function getFilteredContacts(_0x5a5680){var _0x42182e=[];return db['Tag']['findAll']({'attributes':['id',_0x51b9('0x62'),_0x51b9('0x63')],'raw':!![]})[_0x51b9('0x4f')](function(_0x899850){_0x42182e=_[_0x51b9('0x64')](_0x899850,'id');var _0x87ae49={'type':db[_0x51b9('0x65')]['QueryTypes']['SELECT'],'model':db[_0x51b9('0x66')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0x51b9('0x67')][_0x51b9('0x68')](_0x5a5680[_0x51b9('0x69')](),_0x87ae49);})[_0x51b9('0x4f')](function(_0x5e64f2){_0x5e64f2[_0x51b9('0x20')](function(_0xda034e){if(_0xda034e['TagIds']){_0xda034e[_0x51b9('0x6a')]=[];_0xda034e['TagIds'][_0x51b9('0x27')](',')['forEach'](function(_0x1ddea6){_0xda034e[_0x51b9('0x6a')][_0x51b9('0x1f')](_0x42182e[_0x1ddea6]);});}delete _0xda034e[_0x51b9('0x1e')];});return _0x5e64f2;});}function countFilteredContacts(_0x4ebb7d,_0x12e988){var _0x52565a=_0x4ebb7d[_0x51b9('0x6b')]();_0x52565a[_0x51b9('0x21')]('COUNT(*)');_0x52565a=applyJoinClauses(_0x52565a,!![]);_0x4ebb7d[_0x51b9('0x59')]('c.id');var _0x18873a=utils[_0x51b9('0x24')](_0x12e988);if(!_[_0x51b9('0x6c')](_0x18873a)){_0x52565a['where'](_0x51b9('0x6d'),_0x18873a);}var _0x3443f2={'type':db['Sequelize'][_0x51b9('0x6e')][_0x51b9('0x6f')],'raw':!![]};return db[_0x51b9('0x67')][_0x51b9('0x68')](_0x52565a[_0x51b9('0x69')](),_0x3443f2)[_0x51b9('0x4f')](function(_0x5ad60a){return _0x5ad60a[0x0][_0x51b9('0x70')];});}module[_0x51b9('0x71')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file