Built motion from commit fe909640.|2.6.8
[motion2.git] / server / components / contacts / sql-utils.js
index 924fc48..d5220f3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xceb0=['c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','length','find','name','fieldType','datetime','DATE','buildExpression','default','text','value','start','end','Tag','map','tags','clause','and','ids','user','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','filter','role','agent','c.ListId\x20IS\x20NULL','group','c.id','limit','offset','subqry.id','having','order','DESC','subqry.','subqry','findAll','color','keyBy','Sequelize','QueryTypes','SELECT','sequelize','toString','Tags','clone','COUNT(*)','t.id\x20IN\x20?','query','exports','../interaction/utils','search','ListId','autocomplete','select','from','where','cm_user_has_contacts','uc.CmContactId\x20=\x20','.id','left_join','cm_contact_has_tags','ct.CmContactId\x20=\x20','tools_tags','t.id\x20=\x20ct.TagId','lastName','phone','mobile','email','createdAt','updatedAt','deletedAt','TagIds','forEach','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','getSelectedTags','CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','split','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','isNumeric','c.id\x20LIKE\x20?'];(function(_0x3947c9,_0x4d6c97){var _0x2e7871=function(_0x1236cc){while(--_0x1236cc){_0x3947c9['push'](_0x3947c9['shift']());}};_0x2e7871(++_0x4d6c97);}(_0xceb0,0x173));var _0x0ceb=function(_0x3f8522,_0x10fcc2){_0x3f8522=_0x3f8522-0x0;var _0x145039=_0xceb0[_0x3f8522];return _0x145039;};'use strict';var _=require('lodash');var squel=require('squel');var as=require('../parsers/advancedSearch');var qs=require('../parsers/qs');var utils=require(_0x0ceb('0x0'));var db=require('../../mysqldb')['db'];function skipContactsQuery(_0x1659e3,_0x1925ab){var _0x2e72bb=![];if(_0x1659e3['role']==='agent'&&!_0x1925ab[_0x0ceb('0x1')]&&!_0x1925ab[_0x0ceb('0x2')]&&_0x1925ab[_0x0ceb('0x3')]!=='true'){_0x2e72bb=!![];}return _0x2e72bb;}function getContactsSubquery(){return squel[_0x0ceb('0x4')]()[_0x0ceb('0x5')]('cm_contacts','c')[_0x0ceb('0x6')]('c.deletedAt\x20IS\x20NULL');}function applyJoinClauses(_0x3a1205,_0x3e71f4){var _0x376790=_0x3e71f4?'c':'subqry';_0x3a1205['left_join'](_0x0ceb('0x7'),'uc',_0x0ceb('0x8')+_0x376790+_0x0ceb('0x9'))[_0x0ceb('0xa')](_0x0ceb('0xb'),'ct',_0x0ceb('0xc')+_0x376790+'.id')[_0x0ceb('0xa')](_0x0ceb('0xd'),'t',_0x0ceb('0xe'));return _0x3a1205;}function addFieldsToQuery(_0x26cb7a,_0x41f120,_0xb2a488,_0x1528f0,_0x54f34e){var _0x416fbb=_0x54f34e?'c':'subqry';if(!_0x41f120){_0x41f120=['id','firstName',_0x0ceb('0xf'),_0x0ceb('0x10'),_0x0ceb('0x11'),'fax',_0x0ceb('0x12'),_0x0ceb('0x2'),'CompanyId',_0x0ceb('0x13'),_0x0ceb('0x14'),_0x0ceb('0x15'),_0x0ceb('0x16')];}var _0x18bed1=_0xb2a488&&_0x54f34e||!_0xb2a488&&!_0x54f34e;if(_0x1528f0){_0x18bed1=_0x1528f0&&_0x54f34e||!_0x1528f0&&!_0x54f34e;}_0x41f120[_0x0ceb('0x17')](function(_0x2c5a89){if(_0x2c5a89===_0x0ceb('0x16')){if(_0x18bed1){_0x26cb7a[_0x0ceb('0x18')](_0x0ceb('0x19'),_0x2c5a89);}else if(_0xb2a488||_0x1528f0){_0x26cb7a[_0x0ceb('0x18')](_0x416fbb+'.'+_0x2c5a89);}}else{_0x26cb7a[_0x0ceb('0x18')](_0x416fbb+'.'+_0x2c5a89);}});return _0x26cb7a;}function getSqlClauses(){var _0x10113a={'default':squel[_0x0ceb('0x1a')](),'fields':squel[_0x0ceb('0x1a')](),'filter':squel[_0x0ceb('0x1a')](),'tags':{'clause':squel[_0x0ceb('0x1a')](),'ids':null},'user':{'clause':squel['expr'](),'skip':![]}};return _0x10113a;}function parseTagParameter(_0x4eb712){var _0x25c48a=squel[_0x0ceb('0x1a')]();if(_0x4eb712){var _0x5d1235=utils[_0x0ceb('0x1b')](_0x4eb712);_0x5d1235['forEach'](function(_0x38a716){_0x25c48a['or'](_0x0ceb('0x1c'),'%,'+_0x38a716+',%');});}return _0x25c48a;}function parseSearchFilter(_0x28fb61){var _0x17efd7=squel[_0x0ceb('0x1a')]();if(_0x28fb61){var _0x4a2b69=_0x28fb61['replace']('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(_0x4a2b69[_0x0ceb('0x1d')]('\x20')['length']>0x1){_0x17efd7['or'](_0x0ceb('0x1e'),qs['getFullTextValue'](_0x4a2b69),null);}else{if(qs[_0x0ceb('0x1f')](_0x4a2b69)){_0x17efd7['or'](_0x0ceb('0x20'),_0x4a2b69+'%');_0x17efd7['or'](_0x0ceb('0x21'),_0x4a2b69+'%');_0x17efd7['or'](_0x0ceb('0x22'),_0x4a2b69+'%');_0x17efd7['or']('c.fax\x20LIKE\x20?',_0x4a2b69+'%');}else if(qs[_0x0ceb('0x23')](_0x4a2b69)){_0x17efd7['or'](_0x0ceb('0x24'),_0x4a2b69+'%');}else{_0x17efd7['or'](_0x0ceb('0x25'),'%'+_0x4a2b69+'%');_0x17efd7['or'](_0x0ceb('0x26'),'%'+_0x4a2b69+'%');_0x17efd7['or'](_0x0ceb('0x24'),'%'+_0x4a2b69+'%');}}}return _0x17efd7;}function parseAdvancedSearchFilter(_0x4aa831,_0x2de4f3){var _0x3792bb=getSqlClauses();var _0x3c934b=as[_0x0ceb('0x27')](_0x4aa831);var _0x1ca4cb=_0x3c934b[_0x0ceb('0x28')];for(var _0x58aa8b=0x0;_0x58aa8b<_0x3c934b[_0x0ceb('0x29')][_0x0ceb('0x2a')];_0x58aa8b++){var _0x1b5337=_0x3c934b[_0x0ceb('0x29')][_0x58aa8b];var _0x331e98='c';var _0x128102=_[_0x0ceb('0x2b')](_0x2de4f3,[_0x0ceb('0x2c'),_0x1b5337[_0x0ceb('0x18')]]);if(_0x128102){if(_0x1b5337[_0x0ceb('0x18')]==='dateOfBirth'||_0x128102[_0x0ceb('0x2d')]===_0x0ceb('0x2e')){_0x1b5337['castTo']=_0x0ceb('0x2f');}var _0x19980c=as[_0x0ceb('0x30')](_0x331e98,_0x128102['type'],_0x1b5337);_0x3792bb[_0x0ceb('0x31')][_0x1ca4cb](_0x19980c[_0x0ceb('0x32')],_0x19980c[_0x0ceb('0x33')][_0x0ceb('0x34')],_0x19980c[_0x0ceb('0x33')][_0x0ceb('0x35')]);}else{if(_0x1b5337[_0x0ceb('0x18')]===_0x0ceb('0x36')){var _0x2ad461=_0x1b5337[_0x0ceb('0x33')][_0x0ceb('0x1d')](',')[_0x0ceb('0x37')](function(_0x40b21e){return Number(_0x40b21e);});var _0x540851=parseTagParameter(_0x2ad461);_0x3792bb[_0x0ceb('0x38')][_0x0ceb('0x39')][_0x0ceb('0x3a')](_0x540851);_0x3792bb[_0x0ceb('0x38')][_0x0ceb('0x3b')]=_0x2ad461;}else if(_0x1b5337[_0x0ceb('0x18')]==='User'){_0x3792bb[_0x0ceb('0x3c')]['clause']['and']('uc.UserId\x20=\x20?',_0x1b5337[_0x0ceb('0x33')]);_0x3792bb['user'][_0x0ceb('0x3d')]=!![];}}}return _0x3792bb;}function parseModelFields(_0x2f5e8a,_0x513dc7){var _0x3f730b=squel[_0x0ceb('0x1a')]();var _0x1e3361=_(_0x2f5e8a)['keys']()[_0x0ceb('0x37')](function(_0x2dda09){return _[_0x0ceb('0x3e')](_0x513dc7,[_0x0ceb('0x2c'),_0x2dda09])?_0x2dda09:undefined;})[_0x0ceb('0x3f')]()[_0x0ceb('0x33')]();if(_0x2f5e8a[_0x0ceb('0x40')]){_0x1e3361[_0x0ceb('0x41')](_0x0ceb('0x40'));}if(_0x1e3361[_0x0ceb('0x2a')]>0x0){_0x1e3361[_0x0ceb('0x17')](function(_0x1ff7db){if(_0x1ff7db===_0x0ceb('0x2')){_0x3f730b[_0x0ceb('0x3a')](_0x0ceb('0x42'),[][_0x0ceb('0x43')](_0x2f5e8a[_0x1ff7db]));}else if(_0x1ff7db===_0x0ceb('0x40')){var _0x3de5c7='%'+_0x2f5e8a[_0x1ff7db]+'%';_0x3f730b[_0x0ceb('0x3a')](_0x0ceb('0x44'),_0x3de5c7);}else{_0x3f730b[_0x0ceb('0x3a')]('c.'+_0x1ff7db+_0x0ceb('0x45'),_0x2f5e8a[_0x1ff7db]);}});}return _0x3f730b;}function parseQueryParameters(_0x183720,_0x2a415b){var _0xe65a48=getSqlClauses();return Promise[_0x0ceb('0x46')]()[_0x0ceb('0x47')](function(){return parseModelFields(_0x183720,_0x2a415b);})[_0x0ceb('0x47')](function(_0x568a1c){_0xe65a48[_0x0ceb('0x48')]['and'](_0x568a1c);return parseTagParameter(_0x183720['tag']);})[_0x0ceb('0x47')](function(_0x6ad0e3){_0xe65a48[_0x0ceb('0x38')]['clause']['and'](_0x6ad0e3);return parseSearchFilter(_0x183720[_0x0ceb('0x49')]);})[_0x0ceb('0x47')](function(_0x2cb999){_0xe65a48[_0x0ceb('0x49')]=_0x2cb999;return _0xe65a48;});}function checkListsRestrictions(_0x207908,_0x321ab0,_0x22053c){var _0x177ec7=squel[_0x0ceb('0x1a')]();return Promise['resolve']()[_0x0ceb('0x47')](function(){if(_0x321ab0[_0x0ceb('0x1')]&&_0x207908[_0x0ceb('0x4a')]===_0x0ceb('0x4b')&&!_0x22053c){return _0x207908['getLists']({'attributes':['id'],'raw':!![]});}})[_0x0ceb('0x47')](function(_0x5b4ea8){if(_0x5b4ea8){if(_0x5b4ea8[_0x0ceb('0x2a')]===0x0){_0x177ec7['and'](_0x0ceb('0x4c'));}else{_0x177ec7[_0x0ceb('0x3a')](_0x0ceb('0x42'),_[_0x0ceb('0x37')](_0x5b4ea8,'id'));}}})[_0x0ceb('0x47')](function(){return _0x177ec7;});}function buildContactsQuery(_0x2c03af,_0x6273bb,_0x32bfe3,_0x4e100e,_0x197d4b,_0x31dbd4){if(_0x6273bb){_0x6273bb=_0x32bfe3['attributes'];}_0x2c03af=addFieldsToQuery(_0x2c03af,_0x6273bb,_0x4e100e,_0x31dbd4,!![]);var _0x3898fe=squel[_0x0ceb('0x4')]();_0x3898fe=addFieldsToQuery(_0x3898fe,_0x6273bb,_0x4e100e,_0x31dbd4,![]);if(_0x4e100e||_0x31dbd4){_0x2c03af=applyJoinClauses(_0x2c03af,!![]);_0x2c03af[_0x0ceb('0x4d')](_0x0ceb('0x4e'));if(_0x32bfe3[_0x0ceb('0x4f')]){_0x3898fe['limit'](_0x32bfe3[_0x0ceb('0x4f')]);}if(_0x32bfe3[_0x0ceb('0x50')]){_0x3898fe[_0x0ceb('0x50')](_0x32bfe3[_0x0ceb('0x50')]);}}else{_0x3898fe=applyJoinClauses(_0x3898fe,![]);_0x3898fe[_0x0ceb('0x4d')](_0x0ceb('0x51'));if(_0x32bfe3[_0x0ceb('0x4f')]){_0x2c03af[_0x0ceb('0x4f')](_0x32bfe3[_0x0ceb('0x4f')]);}if(_0x32bfe3['offset']){_0x2c03af[_0x0ceb('0x50')](_0x32bfe3[_0x0ceb('0x50')]);}}_0x3898fe[_0x0ceb('0x52')](_0x197d4b);if(_0x32bfe3[_0x0ceb('0x53')]){_0x32bfe3['order']['forEach'](function(_0x34a427){_0x2c03af[_0x0ceb('0x53')]('c.'+_0x34a427[0x0],_0x34a427[0x1]===_0x0ceb('0x54')?![]:!![]);_0x3898fe[_0x0ceb('0x53')](_0x0ceb('0x55')+_0x34a427[0x0],_0x34a427[0x1]==='DESC'?![]:!![]);});}_0x3898fe[_0x0ceb('0x5')](_0x2c03af,_0x0ceb('0x56'));return _0x3898fe;}function getFilteredContacts(_0x4c420c){var _0x4c70ab=[];return db['Tag'][_0x0ceb('0x57')]({'attributes':['id',_0x0ceb('0x2c'),_0x0ceb('0x58')],'raw':!![]})['then'](function(_0x3d9583){_0x4c70ab=_[_0x0ceb('0x59')](_0x3d9583,'id');var _0x5c8ace={'type':db[_0x0ceb('0x5a')][_0x0ceb('0x5b')][_0x0ceb('0x5c')],'model':db['CmContact'],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0x0ceb('0x5d')]['query'](_0x4c420c[_0x0ceb('0x5e')](),_0x5c8ace);})[_0x0ceb('0x47')](function(_0x400db8){_0x400db8[_0x0ceb('0x17')](function(_0x270ebf){if(_0x270ebf['TagIds']){_0x270ebf[_0x0ceb('0x5f')]=[];_0x270ebf[_0x0ceb('0x16')][_0x0ceb('0x1d')](',')[_0x0ceb('0x17')](function(_0xf27696){_0x270ebf[_0x0ceb('0x5f')][_0x0ceb('0x41')](_0x4c70ab[_0xf27696]);});}delete _0x270ebf[_0x0ceb('0x16')];});return _0x400db8;});}function countFilteredContacts(_0x1de0d4,_0x361581){var _0x5a8e86=_0x1de0d4[_0x0ceb('0x60')]();_0x5a8e86[_0x0ceb('0x18')](_0x0ceb('0x61'));_0x5a8e86=applyJoinClauses(_0x5a8e86,!![]);_0x1de0d4[_0x0ceb('0x4d')](_0x0ceb('0x4e'));var _0xd17418=utils[_0x0ceb('0x1b')](_0x361581);if(!_['isEmpty'](_0xd17418)){_0x5a8e86[_0x0ceb('0x6')](_0x0ceb('0x62'),_0xd17418);}var _0x3dd2d5={'type':db[_0x0ceb('0x5a')][_0x0ceb('0x5b')][_0x0ceb('0x5c')],'raw':!![]};return db[_0x0ceb('0x5d')][_0x0ceb('0x63')](_0x5a8e86[_0x0ceb('0x5e')](),_0x3dd2d5)[_0x0ceb('0x47')](function(_0x42a084){return _0x42a084[0x0]['COUNT(*)'];});}module[_0x0ceb('0x64')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file
+var _0x2987=['Tag','split','clause','and','ids','User','uc.UserId\x20=\x20?','user','skip','keys','map','some','Contact','push','\x20=\x20?','resolve','then','tag','filter','getLists','c.ListId\x20IS\x20NULL','group','c.id','limit','offset','subqry.id','having','order','DESC','subqry.','subqry','findAll','color','Sequelize','QueryTypes','SELECT','CmContact','toString','Tags','COUNT(*)','getSelectedTags','isEmpty','t.id\x20IN\x20?','sequelize','query','exports','lodash','squel','../parsers/advancedSearch','../parsers/qs','../interaction/utils','../../mysqldb','role','agent','search','ListId','autocomplete','select','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','cm_user_has_contacts','uc.CmContactId\x20=\x20','left_join','cm_contact_has_tags','.id','tools_tags','t.id\x20=\x20ct.TagId','firstName','lastName','phone','mobile','fax','email','CompanyId','updatedAt','deletedAt','TagIds','includes','forEach','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','replace','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.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','name','dateOfBirth','fieldType','castTo','DATE','type','default','text','start','value'];(function(_0x29dacf,_0x2ebfcb){var _0x5e2a2a=function(_0x594f21){while(--_0x594f21){_0x29dacf['push'](_0x29dacf['shift']());}};_0x5e2a2a(++_0x2ebfcb);}(_0x2987,0x1e2));var _0x7298=function(_0x17c483,_0xc69535){_0x17c483=_0x17c483-0x0;var _0x112bdb=_0x2987[_0x17c483];return _0x112bdb;};'use strict';var _=require(_0x7298('0x0'));var squel=require(_0x7298('0x1'));var as=require(_0x7298('0x2'));var qs=require(_0x7298('0x3'));var utils=require(_0x7298('0x4'));var db=require(_0x7298('0x5'))['db'];function skipContactsQuery(_0x5e88c0,_0x35867a){var _0x24dc8f=![];if(_0x5e88c0[_0x7298('0x6')]===_0x7298('0x7')&&!_0x35867a[_0x7298('0x8')]&&!_0x35867a[_0x7298('0x9')]&&_0x35867a[_0x7298('0xa')]!=='true'){_0x24dc8f=!![];}return _0x24dc8f;}function getContactsSubquery(){return squel[_0x7298('0xb')]()[_0x7298('0xc')](_0x7298('0xd'),'c')[_0x7298('0xe')](_0x7298('0xf'));}function applyJoinClauses(_0x44db65,_0x47c611){var _0x145135=_0x47c611?'c':'subqry';_0x44db65['left_join'](_0x7298('0x10'),'uc',_0x7298('0x11')+_0x145135+'.id')[_0x7298('0x12')](_0x7298('0x13'),'ct','ct.CmContactId\x20=\x20'+_0x145135+_0x7298('0x14'))[_0x7298('0x12')](_0x7298('0x15'),'t',_0x7298('0x16'));return _0x44db65;}function addFieldsToQuery(_0x267d07,_0x150b38,_0x151660,_0x218806,_0x23dd20){var _0x1d0439=_0x23dd20?'c':'subqry';if(!_0x150b38){_0x150b38=['id',_0x7298('0x17'),_0x7298('0x18'),_0x7298('0x19'),_0x7298('0x1a'),_0x7298('0x1b'),_0x7298('0x1c'),_0x7298('0x9'),_0x7298('0x1d'),'createdAt',_0x7298('0x1e'),_0x7298('0x1f'),_0x7298('0x20')];}else if(!_0x150b38[_0x7298('0x21')]('id')){_0x150b38['push']('id');}var _0x120c84=_0x151660&&_0x23dd20||!_0x151660&&!_0x23dd20;if(_0x218806){_0x120c84=_0x218806&&_0x23dd20||!_0x218806&&!_0x23dd20;}_0x150b38[_0x7298('0x22')](function(_0x2be8ef){if(_0x2be8ef==='TagIds'){if(_0x120c84){_0x267d07[_0x7298('0x23')](_0x7298('0x24'),_0x2be8ef);}else if(_0x151660||_0x218806){_0x267d07[_0x7298('0x23')](_0x1d0439+'.'+_0x2be8ef);}}else{_0x267d07[_0x7298('0x23')](_0x1d0439+'.'+_0x2be8ef);}});return _0x267d07;}function getSqlClauses(){var _0x1cbac7={'default':squel['expr'](),'fields':squel[_0x7298('0x25')](),'filter':squel[_0x7298('0x25')](),'tags':{'clause':squel[_0x7298('0x25')](),'ids':null},'user':{'clause':squel[_0x7298('0x25')](),'skip':![]}};return _0x1cbac7;}function parseTagParameter(_0x2a0afd){var _0x5808f9=squel[_0x7298('0x25')]();if(_0x2a0afd){var _0x5cc8de=utils['getSelectedTags'](_0x2a0afd);_0x5cc8de[_0x7298('0x22')](function(_0x4d5a57){_0x5808f9['or']('CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x4d5a57+',%');});}return _0x5808f9;}function parseSearchFilter(_0x414fc4){var _0x187a14=squel[_0x7298('0x25')]();if(_0x414fc4){var _0x51b3e2=_0x414fc4['replace']('\x5c','\x5c\x5c')[_0x7298('0x26')](/'/g,'\x27\x27');if(_0x51b3e2['split']('\x20')[_0x7298('0x27')]>0x1){_0x187a14['or'](_0x7298('0x28'),qs[_0x7298('0x29')](_0x51b3e2),null);}else{if(qs[_0x7298('0x2a')](_0x51b3e2)){_0x187a14['or'](_0x7298('0x2b'),_0x51b3e2+'%');_0x187a14['or'](_0x7298('0x2c'),_0x51b3e2+'%');_0x187a14['or'](_0x7298('0x2d'),_0x51b3e2+'%');_0x187a14['or'](_0x7298('0x2e'),_0x51b3e2+'%');}else if(qs[_0x7298('0x2f')](_0x51b3e2)){_0x187a14['or'](_0x7298('0x30'),_0x51b3e2+'%');}else{_0x187a14['or'](_0x7298('0x31'),'%'+_0x51b3e2+'%');_0x187a14['or']('c.lastName\x20LIKE\x20?','%'+_0x51b3e2+'%');_0x187a14['or'](_0x7298('0x30'),'%'+_0x51b3e2+'%');}}}return _0x187a14;}function parseAdvancedSearchFilter(_0x261c9d,_0x3e4ee4){var _0x2bdd82=getSqlClauses();var _0x2a7a62=as[_0x7298('0x32')](_0x261c9d);var _0x4fd802=_0x2a7a62[_0x7298('0x33')];for(var _0x47b9a5=0x0;_0x47b9a5<_0x2a7a62[_0x7298('0x34')][_0x7298('0x27')];_0x47b9a5++){var _0x7a4501=_0x2a7a62['conditions'][_0x47b9a5];var _0x1259e6='c';var _0x6527cc=_['find'](_0x3e4ee4,[_0x7298('0x35'),_0x7a4501[_0x7298('0x23')]]);if(_0x6527cc){if(_0x7a4501['field']===_0x7298('0x36')||_0x6527cc[_0x7298('0x37')]==='datetime'){_0x7a4501[_0x7298('0x38')]=_0x7298('0x39');}var _0x527d07=as['buildExpression'](_0x1259e6,_0x6527cc[_0x7298('0x3a')],_0x7a4501);_0x2bdd82[_0x7298('0x3b')][_0x4fd802](_0x527d07[_0x7298('0x3c')],_0x527d07['value'][_0x7298('0x3d')],_0x527d07[_0x7298('0x3e')]['end']);}else{if(_0x7a4501[_0x7298('0x23')]===_0x7298('0x3f')){var _0x4ec84d=_0x7a4501[_0x7298('0x3e')][_0x7298('0x40')](',')['map'](function(_0x47555b){return Number(_0x47555b);});var _0x2b2213=parseTagParameter(_0x4ec84d);_0x2bdd82['tags'][_0x7298('0x41')][_0x7298('0x42')](_0x2b2213);_0x2bdd82['tags'][_0x7298('0x43')]=_0x4ec84d;}else if(_0x7a4501[_0x7298('0x23')]===_0x7298('0x44')){_0x2bdd82['user']['clause'][_0x7298('0x42')](_0x7298('0x45'),_0x7a4501[_0x7298('0x3e')]);_0x2bdd82[_0x7298('0x46')][_0x7298('0x47')]=!![];}}}return _0x2bdd82;}function parseModelFields(_0x3f3fb0,_0x3da6bd){var _0x1ab7eb=squel[_0x7298('0x25')]();var _0x5ae726=_(_0x3f3fb0)[_0x7298('0x48')]()[_0x7298('0x49')](function(_0x205516){return _[_0x7298('0x4a')](_0x3da6bd,[_0x7298('0x35'),_0x205516])?_0x205516:undefined;})['compact']()[_0x7298('0x3e')]();if(_0x3f3fb0[_0x7298('0x4b')]){_0x5ae726[_0x7298('0x4c')](_0x7298('0x4b'));}if(_0x5ae726['length']>0x0){_0x5ae726[_0x7298('0x22')](function(_0x4c12c9){if(_0x4c12c9==='ListId'){_0x1ab7eb[_0x7298('0x42')]('c.ListId\x20IN\x20?',[]['concat'](_0x3f3fb0[_0x4c12c9]));}else if(_0x4c12c9===_0x7298('0x4b')){var _0x486acd='%'+_0x3f3fb0[_0x4c12c9]+'%';_0x1ab7eb[_0x7298('0x42')]('CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?',_0x486acd);}else{_0x1ab7eb[_0x7298('0x42')]('c.'+_0x4c12c9+_0x7298('0x4d'),_0x3f3fb0[_0x4c12c9]);}});}return _0x1ab7eb;}function parseQueryParameters(_0x334084,_0x58e5e4){var _0x37bd2c=getSqlClauses();return Promise[_0x7298('0x4e')]()[_0x7298('0x4f')](function(){return parseModelFields(_0x334084,_0x58e5e4);})[_0x7298('0x4f')](function(_0x23d8b1){_0x37bd2c['fields'][_0x7298('0x42')](_0x23d8b1);return parseTagParameter(_0x334084[_0x7298('0x50')]);})[_0x7298('0x4f')](function(_0x2b843c){_0x37bd2c['tags'][_0x7298('0x41')][_0x7298('0x42')](_0x2b843c);return parseSearchFilter(_0x334084[_0x7298('0x51')]);})[_0x7298('0x4f')](function(_0x88e999){_0x37bd2c[_0x7298('0x51')]=_0x88e999;return _0x37bd2c;});}function checkListsRestrictions(_0x4d7a3b,_0x1b056d,_0x360e7a){var _0x2559f0=squel[_0x7298('0x25')]();return Promise[_0x7298('0x4e')]()['then'](function(){if(_0x1b056d[_0x7298('0x8')]&&_0x4d7a3b[_0x7298('0x6')]===_0x7298('0x7')&&!_0x360e7a){return _0x4d7a3b[_0x7298('0x52')]({'attributes':['id'],'raw':!![]});}})[_0x7298('0x4f')](function(_0x57c1e4){if(_0x57c1e4){if(_0x57c1e4['length']===0x0){_0x2559f0['and'](_0x7298('0x53'));}else{_0x2559f0['and']('c.ListId\x20IN\x20?',_[_0x7298('0x49')](_0x57c1e4,'id'));}}})[_0x7298('0x4f')](function(){return _0x2559f0;});}function buildContactsQuery(_0xcbbf57,_0x44bea8,_0x5047e1,_0x1b69c0,_0x335cd6,_0x2330b4){if(_0x44bea8){_0x44bea8=_0x5047e1['attributes'];}_0xcbbf57=addFieldsToQuery(_0xcbbf57,_0x44bea8,_0x1b69c0,_0x2330b4,!![]);var _0x51de51=squel['select']();_0x51de51=addFieldsToQuery(_0x51de51,_0x44bea8,_0x1b69c0,_0x2330b4,![]);if(_0x1b69c0||_0x2330b4){_0xcbbf57=applyJoinClauses(_0xcbbf57,!![]);_0xcbbf57[_0x7298('0x54')](_0x7298('0x55'));if(_0x5047e1[_0x7298('0x56')]){_0x51de51['limit'](_0x5047e1[_0x7298('0x56')]);}if(_0x5047e1[_0x7298('0x57')]){_0x51de51[_0x7298('0x57')](_0x5047e1['offset']);}}else{_0x51de51=applyJoinClauses(_0x51de51,![]);_0x51de51['group'](_0x7298('0x58'));if(_0x5047e1[_0x7298('0x56')]){_0xcbbf57[_0x7298('0x56')](_0x5047e1[_0x7298('0x56')]);}if(_0x5047e1[_0x7298('0x57')]){_0xcbbf57['offset'](_0x5047e1[_0x7298('0x57')]);}}_0x51de51[_0x7298('0x59')](_0x335cd6);if(_0x5047e1[_0x7298('0x5a')]){_0x5047e1[_0x7298('0x5a')][_0x7298('0x22')](function(_0xff2417){_0xcbbf57[_0x7298('0x5a')]('c.'+_0xff2417[0x0],_0xff2417[0x1]===_0x7298('0x5b')?![]:!![]);_0x51de51[_0x7298('0x5a')](_0x7298('0x5c')+_0xff2417[0x0],_0xff2417[0x1]===_0x7298('0x5b')?![]:!![]);});}_0x51de51[_0x7298('0xc')](_0xcbbf57,_0x7298('0x5d'));return _0x51de51;}function getFilteredContacts(_0xbce90f){var _0x2508b4=[];return db[_0x7298('0x3f')][_0x7298('0x5e')]({'attributes':['id',_0x7298('0x35'),_0x7298('0x5f')],'raw':!![]})[_0x7298('0x4f')](function(_0x2b78cc){_0x2508b4=_['keyBy'](_0x2b78cc,'id');var _0x2ff456={'type':db[_0x7298('0x60')][_0x7298('0x61')][_0x7298('0x62')],'model':db[_0x7298('0x63')],'mapToModel':!![],'nest':!![],'raw':!![]};return db['sequelize']['query'](_0xbce90f[_0x7298('0x64')](),_0x2ff456);})['then'](function(_0x59ece6){_0x59ece6[_0x7298('0x22')](function(_0x1b1680){if(_0x1b1680[_0x7298('0x20')]){_0x1b1680[_0x7298('0x65')]=[];_0x1b1680[_0x7298('0x20')]['split'](',')[_0x7298('0x22')](function(_0x5cf0b5){_0x1b1680['Tags'][_0x7298('0x4c')](_0x2508b4[_0x5cf0b5]);});}delete _0x1b1680[_0x7298('0x20')];});return _0x59ece6;});}function countFilteredContacts(_0x41c44d,_0x30c8f3){var _0x34c461=_0x41c44d['clone']();_0x34c461['field'](_0x7298('0x66'));_0x34c461=applyJoinClauses(_0x34c461,!![]);_0x41c44d[_0x7298('0x54')](_0x7298('0x55'));var _0x27b38c=utils[_0x7298('0x67')](_0x30c8f3);if(!_[_0x7298('0x68')](_0x27b38c)){_0x34c461['where'](_0x7298('0x69'),_0x27b38c);}var _0x382079={'type':db[_0x7298('0x60')][_0x7298('0x61')][_0x7298('0x62')],'raw':!![]};return db[_0x7298('0x6a')][_0x7298('0x6b')](_0x34c461[_0x7298('0x64')](),_0x382079)[_0x7298('0x4f')](function(_0x26fa95){return _0x26fa95[0x0][_0x7298('0x66')];});}module[_0x7298('0x6c')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file