Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / server / components / contacts / sql-utils.js
index d70080c..0fa1fc5 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd8bd=['value','start','end','Tag','map','tags','clause','ids','User','user','and','uc.UserId\x20=\x20?','skip','Contact','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','then','tag','filter','resolve','role','agent','getLists','c.ListId\x20IS\x20NULL','c.ListId\x20IN\x20?','attributes','group','c.id','limit','offset','subqry.id','having','order','DESC','subqry.','from','findAll','color','keyBy','Sequelize','QueryTypes','SELECT','CmContact','sequelize','query','toString','Tags','COUNT(*)','isEmpty','t.id\x20IN\x20?','exports','squel','../parsers/advancedSearch','../parsers/qs','../interaction/utils','ListId','select','where','c.deletedAt\x20IS\x20NULL','subqry','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20','.id','cm_contact_has_tags','t.id\x20=\x20ct.TagId','firstName','lastName','mobile','fax','email','CompanyId','updatedAt','TagIds','push','forEach','field','GROUP_CONCAT(DISTINCT\x20t.id)','expr','getSelectedTags','replace','split','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','parseSearch','sqlOperator','conditions','length','find','name','dateOfBirth','fieldType','datetime','DATE','buildExpression','type','default','text'];(function(_0x152121,_0x120c53){var _0x592a85=function(_0x241cab){while(--_0x241cab){_0x152121['push'](_0x152121['shift']());}};_0x592a85(++_0x120c53);}(_0xd8bd,0x1cf));var _0xdd8b=function(_0x41b6a3,_0x11bc16){_0x41b6a3=_0x41b6a3-0x0;var _0x535e79=_0xd8bd[_0x41b6a3];return _0x535e79;};'use strict';var _=require('lodash');var squel=require(_0xdd8b('0x0'));var as=require(_0xdd8b('0x1'));var qs=require(_0xdd8b('0x2'));var utils=require(_0xdd8b('0x3'));var db=require('../../mysqldb')['db'];function skipContactsQuery(_0x5a7be5,_0x38edef){var _0x260b1d=![];if(_0x5a7be5['role']==='agent'&&!_0x38edef['search']&&!_0x38edef[_0xdd8b('0x4')]&&_0x38edef['autocomplete']!=='true'){_0x260b1d=!![];}return _0x260b1d;}function getContactsSubquery(){return squel[_0xdd8b('0x5')]()['from']('cm_contacts','c')[_0xdd8b('0x6')](_0xdd8b('0x7'));}function applyJoinClauses(_0xcf744c,_0xa140b){var _0x163ff6=_0xa140b?'c':_0xdd8b('0x8');_0xcf744c[_0xdd8b('0x9')](_0xdd8b('0xa'),'uc',_0xdd8b('0xb')+_0x163ff6+_0xdd8b('0xc'))['left_join'](_0xdd8b('0xd'),'ct','ct.CmContactId\x20=\x20'+_0x163ff6+'.id')[_0xdd8b('0x9')]('tools_tags','t',_0xdd8b('0xe'));return _0xcf744c;}function addFieldsToQuery(_0x3b7b01,_0x11008f,_0x48ed9d,_0xdc38c8,_0x38d07b){var _0x11e0dd=_0x38d07b?'c':_0xdd8b('0x8');if(!_0x11008f){_0x11008f=['id',_0xdd8b('0xf'),_0xdd8b('0x10'),'phone',_0xdd8b('0x11'),_0xdd8b('0x12'),_0xdd8b('0x13'),_0xdd8b('0x4'),_0xdd8b('0x14'),'createdAt',_0xdd8b('0x15'),'deletedAt',_0xdd8b('0x16')];}else if(!_0x11008f['includes']('id')){_0x11008f[_0xdd8b('0x17')]('id');}var _0x2c0113=_0x48ed9d&&_0x38d07b||!_0x48ed9d&&!_0x38d07b;if(_0xdc38c8){_0x2c0113=_0xdc38c8&&_0x38d07b||!_0xdc38c8&&!_0x38d07b;}_0x11008f[_0xdd8b('0x18')](function(_0x1b6f8d){if(_0x1b6f8d===_0xdd8b('0x16')){if(_0x2c0113){_0x3b7b01[_0xdd8b('0x19')](_0xdd8b('0x1a'),_0x1b6f8d);}else if(_0x48ed9d||_0xdc38c8){_0x3b7b01[_0xdd8b('0x19')](_0x11e0dd+'.'+_0x1b6f8d);}}else{_0x3b7b01[_0xdd8b('0x19')](_0x11e0dd+'.'+_0x1b6f8d);}});return _0x3b7b01;}function getSqlClauses(){var _0x50633f={'default':squel[_0xdd8b('0x1b')](),'fields':squel[_0xdd8b('0x1b')](),'filter':squel[_0xdd8b('0x1b')](),'tags':{'clause':squel[_0xdd8b('0x1b')](),'ids':null},'user':{'clause':squel[_0xdd8b('0x1b')](),'skip':![]}};return _0x50633f;}function parseTagParameter(_0x3c11ec){var _0x4485f2=squel[_0xdd8b('0x1b')]();if(_0x3c11ec){var _0x23e687=utils[_0xdd8b('0x1c')](_0x3c11ec);_0x23e687[_0xdd8b('0x18')](function(_0x2ac642){_0x4485f2['or']('CONCAT(\x27,\x27,\x20subqry.TagIds,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x2ac642+',%');});}return _0x4485f2;}function parseSearchFilter(_0x2e0d34){var _0x26df41=squel[_0xdd8b('0x1b')]();if(_0x2e0d34){var _0x5af320=_0x2e0d34['replace']('\x5c','\x5c\x5c')[_0xdd8b('0x1d')](/'/g,'\x27\x27');if(_0x5af320[_0xdd8b('0x1e')]('\x20')['length']>0x1){_0x26df41['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0xdd8b('0x1f')](_0x5af320),null);}else{if(qs[_0xdd8b('0x20')](_0x5af320)){_0x26df41['or'](_0xdd8b('0x21'),_0x5af320+'%');_0x26df41['or'](_0xdd8b('0x22'),_0x5af320+'%');_0x26df41['or']('c.mobile\x20LIKE\x20?',_0x5af320+'%');_0x26df41['or']('c.fax\x20LIKE\x20?',_0x5af320+'%');}else if(qs[_0xdd8b('0x23')](_0x5af320)){_0x26df41['or'](_0xdd8b('0x24'),_0x5af320+'%');}else{_0x26df41['or'](_0xdd8b('0x25'),'%'+_0x5af320+'%');_0x26df41['or']('c.lastName\x20LIKE\x20?','%'+_0x5af320+'%');_0x26df41['or'](_0xdd8b('0x24'),'%'+_0x5af320+'%');}}}return _0x26df41;}function parseAdvancedSearchFilter(_0x1cc448,_0x2898ec){var _0x48e246=getSqlClauses();var _0x36f2b8=as[_0xdd8b('0x26')](_0x1cc448);var _0x4b7379=_0x36f2b8[_0xdd8b('0x27')];for(var _0x27630b=0x0;_0x27630b<_0x36f2b8[_0xdd8b('0x28')][_0xdd8b('0x29')];_0x27630b++){var _0x1d1a19=_0x36f2b8[_0xdd8b('0x28')][_0x27630b];var _0x20ee21='c';var _0x18c6bb=_[_0xdd8b('0x2a')](_0x2898ec,[_0xdd8b('0x2b'),_0x1d1a19[_0xdd8b('0x19')]]);if(_0x18c6bb){if(_0x1d1a19[_0xdd8b('0x19')]===_0xdd8b('0x2c')||_0x18c6bb[_0xdd8b('0x2d')]===_0xdd8b('0x2e')){_0x1d1a19['castTo']=_0xdd8b('0x2f');}var _0x581d5d=as[_0xdd8b('0x30')](_0x20ee21,_0x18c6bb[_0xdd8b('0x31')],_0x1d1a19);_0x48e246[_0xdd8b('0x32')][_0x4b7379](_0x581d5d[_0xdd8b('0x33')],_0x581d5d[_0xdd8b('0x34')][_0xdd8b('0x35')],_0x581d5d[_0xdd8b('0x34')][_0xdd8b('0x36')]);}else{if(_0x1d1a19[_0xdd8b('0x19')]===_0xdd8b('0x37')){var _0xa2501b=_0x1d1a19['value'][_0xdd8b('0x1e')](',')[_0xdd8b('0x38')](function(_0x487e42){return Number(_0x487e42);});var _0x1e2fe4=parseTagParameter(_0xa2501b);_0x48e246[_0xdd8b('0x39')][_0xdd8b('0x3a')]['and'](_0x1e2fe4);_0x48e246[_0xdd8b('0x39')][_0xdd8b('0x3b')]=_0xa2501b;}else if(_0x1d1a19[_0xdd8b('0x19')]===_0xdd8b('0x3c')){_0x48e246[_0xdd8b('0x3d')][_0xdd8b('0x3a')][_0xdd8b('0x3e')](_0xdd8b('0x3f'),_0x1d1a19[_0xdd8b('0x34')]);_0x48e246[_0xdd8b('0x3d')][_0xdd8b('0x40')]=!![];}}}return _0x48e246;}function parseModelFields(_0x4fbd8b,_0xbe4edd){var _0x20f6ec=squel[_0xdd8b('0x1b')]();var _0x5e842e=_(_0x4fbd8b)['keys']()[_0xdd8b('0x38')](function(_0x1d6cf6){return _['some'](_0xbe4edd,['name',_0x1d6cf6])?_0x1d6cf6:undefined;})['compact']()[_0xdd8b('0x34')]();if(_0x4fbd8b['Contact']){_0x5e842e[_0xdd8b('0x17')](_0xdd8b('0x41'));}if(_0x5e842e[_0xdd8b('0x29')]>0x0){_0x5e842e[_0xdd8b('0x18')](function(_0x35b132){if(_0x35b132===_0xdd8b('0x4')){_0x20f6ec[_0xdd8b('0x3e')]('c.ListId\x20IN\x20?',[][_0xdd8b('0x42')](_0x4fbd8b[_0x35b132]));}else if(_0x35b132===_0xdd8b('0x41')){var _0x40cf5f='%'+_0x4fbd8b[_0x35b132]+'%';_0x20f6ec[_0xdd8b('0x3e')](_0xdd8b('0x43'),_0x40cf5f);}else{_0x20f6ec[_0xdd8b('0x3e')]('c.'+_0x35b132+'\x20=\x20?',_0x4fbd8b[_0x35b132]);}});}return _0x20f6ec;}function parseQueryParameters(_0xd109e9,_0x2292c7){var _0x281772=getSqlClauses();return Promise['resolve']()['then'](function(){return parseModelFields(_0xd109e9,_0x2292c7);})[_0xdd8b('0x44')](function(_0x267f14){_0x281772['fields'][_0xdd8b('0x3e')](_0x267f14);return parseTagParameter(_0xd109e9[_0xdd8b('0x45')]);})[_0xdd8b('0x44')](function(_0x3bbf86){_0x281772[_0xdd8b('0x39')][_0xdd8b('0x3a')]['and'](_0x3bbf86);return parseSearchFilter(_0xd109e9[_0xdd8b('0x46')]);})[_0xdd8b('0x44')](function(_0x2aafff){_0x281772[_0xdd8b('0x46')]=_0x2aafff;return _0x281772;});}function checkListsRestrictions(_0xde8cb7,_0x2e7261,_0x3b59d2){var _0x5cf030=squel[_0xdd8b('0x1b')]();return Promise[_0xdd8b('0x47')]()[_0xdd8b('0x44')](function(){if(_0x2e7261['search']&&_0xde8cb7[_0xdd8b('0x48')]===_0xdd8b('0x49')&&!_0x3b59d2){return _0xde8cb7[_0xdd8b('0x4a')]({'attributes':['id'],'raw':!![]});}})[_0xdd8b('0x44')](function(_0x428a0b){if(_0x428a0b){if(_0x428a0b['length']===0x0){_0x5cf030[_0xdd8b('0x3e')](_0xdd8b('0x4b'));}else{_0x5cf030[_0xdd8b('0x3e')](_0xdd8b('0x4c'),_[_0xdd8b('0x38')](_0x428a0b,'id'));}}})[_0xdd8b('0x44')](function(){return _0x5cf030;});}function buildContactsQuery(_0x1f76af,_0x3a2547,_0x1ee0e7,_0x33fb4e,_0x2e1ce6,_0xa984cc){if(_0x3a2547){_0x3a2547=_0x1ee0e7[_0xdd8b('0x4d')];}_0x1f76af=addFieldsToQuery(_0x1f76af,_0x3a2547,_0x33fb4e,_0xa984cc,!![]);var _0x15d5e7=squel[_0xdd8b('0x5')]();_0x15d5e7=addFieldsToQuery(_0x15d5e7,_0x3a2547,_0x33fb4e,_0xa984cc,![]);if(_0x33fb4e||_0xa984cc){_0x1f76af=applyJoinClauses(_0x1f76af,!![]);_0x1f76af[_0xdd8b('0x4e')](_0xdd8b('0x4f'));if(_0x1ee0e7[_0xdd8b('0x50')]){_0x15d5e7['limit'](_0x1ee0e7[_0xdd8b('0x50')]);}if(_0x1ee0e7[_0xdd8b('0x51')]){_0x15d5e7['offset'](_0x1ee0e7['offset']);}}else{_0x15d5e7=applyJoinClauses(_0x15d5e7,![]);_0x15d5e7['group'](_0xdd8b('0x52'));if(_0x1ee0e7['limit']){_0x1f76af['limit'](_0x1ee0e7[_0xdd8b('0x50')]);}if(_0x1ee0e7[_0xdd8b('0x51')]){_0x1f76af['offset'](_0x1ee0e7[_0xdd8b('0x51')]);}}_0x15d5e7[_0xdd8b('0x53')](_0x2e1ce6);if(_0x1ee0e7['order']){_0x1ee0e7[_0xdd8b('0x54')][_0xdd8b('0x18')](function(_0x50bad0){_0x1f76af[_0xdd8b('0x54')]('c.'+_0x50bad0[0x0],_0x50bad0[0x1]===_0xdd8b('0x55')?![]:!![]);_0x15d5e7[_0xdd8b('0x54')](_0xdd8b('0x56')+_0x50bad0[0x0],_0x50bad0[0x1]==='DESC'?![]:!![]);});}_0x15d5e7[_0xdd8b('0x57')](_0x1f76af,_0xdd8b('0x8'));return _0x15d5e7;}function getFilteredContacts(_0xac0d77){var _0x293843=[];return db[_0xdd8b('0x37')][_0xdd8b('0x58')]({'attributes':['id',_0xdd8b('0x2b'),_0xdd8b('0x59')],'raw':!![]})['then'](function(_0x26df74){_0x293843=_[_0xdd8b('0x5a')](_0x26df74,'id');var _0x27f989={'type':db[_0xdd8b('0x5b')][_0xdd8b('0x5c')][_0xdd8b('0x5d')],'model':db[_0xdd8b('0x5e')],'mapToModel':!![],'nest':!![],'raw':!![]};return db[_0xdd8b('0x5f')][_0xdd8b('0x60')](_0xac0d77[_0xdd8b('0x61')](),_0x27f989);})['then'](function(_0x46bcce){_0x46bcce[_0xdd8b('0x18')](function(_0x4d1a39){if(_0x4d1a39['TagIds']){_0x4d1a39[_0xdd8b('0x62')]=[];_0x4d1a39['TagIds'][_0xdd8b('0x1e')](',')[_0xdd8b('0x18')](function(_0x6a067b){_0x4d1a39[_0xdd8b('0x62')][_0xdd8b('0x17')](_0x293843[_0x6a067b]);});}delete _0x4d1a39[_0xdd8b('0x16')];});return _0x46bcce;});}function countFilteredContacts(_0x25735a,_0x382b70){var _0x113f93=_0x25735a['clone']();_0x113f93['field'](_0xdd8b('0x63'));_0x113f93=applyJoinClauses(_0x113f93,!![]);_0x25735a['group'](_0xdd8b('0x4f'));var _0x1e4c00=utils['getSelectedTags'](_0x382b70);if(!_[_0xdd8b('0x64')](_0x1e4c00)){_0x113f93['where'](_0xdd8b('0x65'),_0x1e4c00);}var _0x1e843d={'type':db[_0xdd8b('0x5b')][_0xdd8b('0x5c')]['SELECT'],'raw':!![]};return db[_0xdd8b('0x5f')][_0xdd8b('0x60')](_0x113f93['toString'](),_0x1e843d)['then'](function(_0x26da7c){return _0x26da7c[0x0][_0xdd8b('0x63')];});}module[_0xdd8b('0x66')]={'buildContactsQuery':buildContactsQuery,'checkListsRestrictions':checkListsRestrictions,'countFilteredContacts':countFilteredContacts,'getContactsSubquery':getContactsSubquery,'getFilteredContacts':getFilteredContacts,'parseAdvancedSearchFilter':parseAdvancedSearchFilter,'parseQueryParameters':parseQueryParameters,'skipContactsQuery':skipContactsQuery};
\ No newline at end of file
+var _0x5287=['sqlOperator','conditions','length','find','dateOfBirth','fieldType','datetime','castTo','buildExpression','type','default','text','value','end','Tag','map','tags','clause','and','ids','User','user','uc.UserId\x20=\x20?','skip','some','name','compact','Contact','c.ListId\x20IN\x20?','\x20=\x20?','then','fields','filter','resolve','getLists','c.ListId\x20IS\x20NULL','attributes','c.id','limit','offset','group','having','order','DESC','color','keyBy','Sequelize','QueryTypes','SELECT','CmContact','query','toString','Tags','clone','COUNT(*)','getSelectedTags','t.id\x20IN\x20?','sequelize','squel','../parsers/advancedSearch','../../mysqldb','role','agent','search','ListId','autocomplete','true','select','from','cm_contacts','where','c.deletedAt\x20IS\x20NULL','subqry','cm_user_has_contacts','uc.CmContactId\x20=\x20','.id','cm_contact_has_tags','left_join','firstName','lastName','fax','CompanyId','createdAt','updatedAt','deletedAt','TagIds','includes','push','forEach','GROUP_CONCAT(DISTINCT\x20t.id)','field','expr','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.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','parseSearch'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x5287,0x10c));var _0x7528=function(_0x2654d2,_0x431293){_0x2654d2=_0x2654d2-0x0;var _0x3057df=_0x5287[_0x2654d2];return _0x3057df;};'use strict';var _=require('lodash');var squel=require(_0x7528('0x0'));var as=require(_0x7528('0x1'));var qs=require('../parsers/qs');var utils=require('../interaction/utils');var db=require(_0x7528('0x2'))['db'];function skipContactsQuery(_0x324830,_0x6ac564){var _0x13071b=![];if(_0x324830[_0x7528('0x3')]===_0x7528('0x4')&&!_0x6ac564[_0x7528('0x5')]&&!_0x6ac564[_0x7528('0x6')]&&_0x6ac564[_0x7528('0x7')]!==_0x7528('0x8')){_0x13071b=!![];}return _0x13071b;}function getContactsSubquery(){return squel[_0x7528('0x9')]()[_0x7528('0xa')](_0x7528('0xb'),'c')[_0x7528('0xc')](_0x7528('0xd'));}function applyJoinClauses(_0x431d2f,_0x581304){var _0x51538c=_0x581304?'c':_0x7528('0xe');_0x431d2f['left_join'](_0x7528('0xf'),'uc',_0x7528('0x10')+_0x51538c+_0x7528('0x11'))['left_join'](_0x7528('0x12'),'ct','ct.CmContactId\x20=\x20'+_0x51538c+_0x7528('0x11'))[_0x7528('0x13')]('tools_tags','t','t.id\x20=\x20ct.TagId');return _0x431d2f;}function addFieldsToQuery(_0xbf712d,_0x5cd329,_0x53da59,_0x26fc5e,_0x2bd5b6){var _0x42e9c1=_0x2bd5b6?'c':_0x7528('0xe');if(!_0x5cd329){_0x5cd329=['id',_0x7528('0x14'),_0x7528('0x15'),'phone','mobile',_0x7528('0x16'),'email',_0x7528('0x6'),_0x7528('0x17'),_0x7528('0x18'),_0x7528('0x19'),_0x7528('0x1a'),_0x7528('0x1b')];}else if(!_0x5cd329[_0x7528('0x1c')]('id')){_0x5cd329[_0x7528('0x1d')]('id');}var _0x161451=_0x53da59&&_0x2bd5b6||!_0x53da59&&!_0x2bd5b6;if(_0x26fc5e){_0x161451=_0x26fc5e&&_0x2bd5b6||!_0x26fc5e&&!_0x2bd5b6;}_0x5cd329[_0x7528('0x1e')](function(_0x256e1e){if(_0x256e1e==='TagIds'){if(_0x161451){_0xbf712d['field'](_0x7528('0x1f'),_0x256e1e);}else if(_0x53da59||_0x26fc5e){_0xbf712d['field'](_0x42e9c1+'.'+_0x256e1e);}}else{_0xbf712d[_0x7528('0x20')](_0x42e9c1+'.'+_0x256e1e);}});return _0xbf712d;}function getSqlClauses(){var _0xec5a12={'default':squel['expr'](),'fields':squel[_0x7528('0x21')](),'filter':squel[_0x7528('0x21')](),'tags':{'clause':squel[_0x7528('0x21')](),'ids':null},'user':{'clause':squel[_0x7528('0x21')](),'skip':![]}};return _0xec5a12;}function parseTagParameter(_0x2036b9){var _0x57024f=squel[_0x7528('0x21')]();if(_0x2036b9){var _0x3fd3ef=utils['getSelectedTags'](_0x2036b9);_0x3fd3ef[_0x7528('0x1e')](function(_0x334f2f){_0x57024f['or'](_0x7528('0x22'),'%,'+_0x334f2f+',%');});}return _0x57024f;}function parseSearchFilter(_0xb3fc4c){var _0x2f2ffa=squel[_0x7528('0x21')]();if(_0xb3fc4c){var _0x1866bf=_0xb3fc4c[_0x7528('0x23')]('\x5c','\x5c\x5c')[_0x7528('0x23')](/'/g,'\x27\x27');if(_0x1866bf[_0x7528('0x24')]('\x20')['length']>0x1){_0x2f2ffa['or'](_0x7528('0x25'),qs[_0x7528('0x26')](_0x1866bf),null);}else{if(qs[_0x7528('0x27')](_0x1866bf)){_0x2f2ffa['or']('c.id\x20LIKE\x20?',_0x1866bf+'%');_0x2f2ffa['or'](_0x7528('0x28'),_0x1866bf+'%');_0x2f2ffa['or'](_0x7528('0x29'),_0x1866bf+'%');_0x2f2ffa['or'](_0x7528('0x2a'),_0x1866bf+'%');}else if(qs['isEmail'](_0x1866bf)){_0x2f2ffa['or'](_0x7528('0x2b'),_0x1866bf+'%');}else{_0x2f2ffa['or'](_0x7528('0x2c'),'%'+_0x1866bf+'%');_0x2f2ffa['or'](_0x7528('0x2d'),'%'+_0x1866bf+'%');_0x2f2ffa['or'](_0x7528('0x2b'),'%'+_0x1866bf+'%');}}}return _0x2f2ffa;}function parseAdvancedSearchFilter(_0x19e19c,_0x30978f){var _0x3b8630=getSqlClauses();var _0x1c97d1=as[_0x7528('0x2e')](_0x19e19c);var _0x182e3c=_0x1c97d1[_0x7528('0x2f')];for(var _0x3f5765=0x0;_0x3f5765<_0x1c97d1[_0x7528('0x30')][_0x7528('0x31')];_0x3f5765++){var _0x371b48=_0x1c97d1[_0x7528('0x30')][_0x3f5765];var _0x3660fa='c';var _0x56e406=_[_0x7528('0x32')](_0x30978f,['name',_0x371b48[_0x7528('0x20')]]);if(_0x56e406){if(_0x371b48[_0x7528('0x20')]===_0x7528('0x33')||_0x56e406[_0x7528('0x34')]===_0x7528('0x35')){_0x371b48[_0x7528('0x36')]='DATE';}var _0x17db78=as[_0x7528('0x37')](_0x3660fa,_0x56e406[_0x7528('0x38')],_0x371b48);_0x3b8630[_0x7528('0x39')][_0x182e3c](_0x17db78[_0x7528('0x3a')],_0x17db78[_0x7528('0x3b')]['start'],_0x17db78[_0x7528('0x3b')][_0x7528('0x3c')]);}else{if(_0x371b48[_0x7528('0x20')]===_0x7528('0x3d')){var _0x3dadb5=_0x371b48[_0x7528('0x3b')][_0x7528('0x24')](',')[_0x7528('0x3e')](function(_0x427cd6){return Number(_0x427cd6);});var _0x1dfb21=parseTagParameter(_0x3dadb5);_0x3b8630[_0x7528('0x3f')][_0x7528('0x40')][_0x7528('0x41')](_0x1dfb21);_0x3b8630[_0x7528('0x3f')][_0x7528('0x42')]=_0x3dadb5;}else if(_0x371b48[_0x7528('0x20')]===_0x7528('0x43')){_0x3b8630[_0x7528('0x44')]['clause'][_0x7528('0x41')](_0x7528('0x45'),_0x371b48[_0x7528('0x3b')]);_0x3b8630[_0x7528('0x44')][_0x7528('0x46')]=!![];}}}return _0x3b8630;}function parseModelFields(_0x538a38,_0x43b404){var _0x2593e9=squel[_0x7528('0x21')]();var _0x421833=_(_0x538a38)['keys']()[_0x7528('0x3e')](function(_0x55858e){return _[_0x7528('0x47')](_0x43b404,[_0x7528('0x48'),_0x55858e])?_0x55858e:undefined;})[_0x7528('0x49')]()[_0x7528('0x3b')]();if(_0x538a38[_0x7528('0x4a')]){_0x421833[_0x7528('0x1d')](_0x7528('0x4a'));}if(_0x421833[_0x7528('0x31')]>0x0){_0x421833[_0x7528('0x1e')](function(_0x1b02c9){if(_0x1b02c9===_0x7528('0x6')){_0x2593e9[_0x7528('0x41')](_0x7528('0x4b'),[]['concat'](_0x538a38[_0x1b02c9]));}else if(_0x1b02c9===_0x7528('0x4a')){var _0x461680='%'+_0x538a38[_0x1b02c9]+'%';_0x2593e9[_0x7528('0x41')]('CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?',_0x461680);}else{_0x2593e9['and']('c.'+_0x1b02c9+_0x7528('0x4c'),_0x538a38[_0x1b02c9]);}});}return _0x2593e9;}function parseQueryParameters(_0x30c27d,_0x55d562){var _0xe33ce4=getSqlClauses();return Promise['resolve']()[_0x7528('0x4d')](function(){return parseModelFields(_0x30c27d,_0x55d562);})[_0x7528('0x4d')](function(_0x18ac01){_0xe33ce4[_0x7528('0x4e')][_0x7528('0x41')](_0x18ac01);return parseTagParameter(_0x30c27d['tag']);})[_0x7528('0x4d')](function(_0x2372d2){_0xe33ce4[_0x7528('0x3f')][_0x7528('0x40')][_0x7528('0x41')](_0x2372d2);return parseSearchFilter(_0x30c27d['filter']);})[_0x7528('0x4d')](function(_0x1b87b3){_0xe33ce4[_0x7528('0x4f')]=_0x1b87b3;return _0xe33ce4;});}function checkListsRestrictions(_0x53c960,_0x3d473b,_0x3b0065){var _0xefb15b=squel['expr']();return Promise[_0x7528('0x50')]()[_0x7528('0x4d')](function(){if(_0x3d473b[_0x7528('0x5')]&&_0x53c960[_0x7528('0x3')]===_0x7528('0x4')&&!_0x3b0065){return _0x53c960[_0x7528('0x51')]({'attributes':['id'],'raw':!![]});}})[_0x7528('0x4d')](function(_0x46ffc7){if(_0x46ffc7){if(_0x46ffc7[_0x7528('0x31')]===0x0){_0xefb15b['and'](_0x7528('0x52'));}else{_0xefb15b[_0x7528('0x41')](_0x7528('0x4b'),_[_0x7528('0x3e')](_0x46ffc7,'id'));}}})[_0x7528('0x4d')](function(){return _0xefb15b;});}function buildContactsQuery(_0x4579df,_0x126c4a,_0x1e23b3,_0x3d9aeb,_0x21559b,_0x58fe12){if(_0x126c4a){_0x126c4a=_0x1e23b3[_0x7528('0x53')];}_0x4579df=addFieldsToQuery(_0x4579df,_0x126c4a,_0x3d9aeb,_0x58fe12,!![]);var _0x2667d6=squel[_0x7528('0x9')]();_0x2667d6=addFieldsToQuery(_0x2667d6,_0x126c4a,_0x3d9aeb,_0x58fe12,![]);if(_0x3d9aeb||_0x58fe12){_0x4579df=applyJoinClauses(_0x4579df,!![]);_0x4579df['group'](_0x7528('0x54'));if(_0x1e23b3['limit']){_0x2667d6[_0x7528('0x55')](_0x1e23b3[_0x7528('0x55')]);}if(_0x1e23b3[_0x7528('0x56')]){_0x2667d6[_0x7528('0x56')](_0x1e23b3[_0x7528('0x56')]);}}else{_0x2667d6=applyJoinClauses(_0x2667d6,![]);_0x2667d6[_0x7528('0x57')]('subqry.id');if(_0x1e23b3[_0x7528('0x55')]){_0x4579df[_0x7528('0x55')](_0x1e23b3[_0x7528('0x55')]);}if(_0x1e23b3['offset']){_0x4579df[_0x7528('0x56')](_0x1e23b3[_0x7528('0x56')]);}}_0x2667d6[_0x7528('0x58')](_0x21559b);if(_0x1e23b3['order']){_0x1e23b3['order'][_0x7528('0x1e')](function(_0x11eeb1){_0x4579df[_0x7528('0x59')]('c.'+_0x11eeb1[0x0],_0x11eeb1[0x1]===_0x7528('0x5a')?![]:!![]);_0x2667d6[_0x7528('0x59')]('subqry.'+_0x11eeb1[0x0],_0x11eeb1[0x1]===_0x7528('0x5a')?![]:!![]);});}_0x2667d6[_0x7528('0xa')](_0x4579df,_0x7528('0xe'));return _0x2667d6;}function getFilteredContacts(_0x1f14e7){var _0x56b250=[];return db['Tag']['findAll']({'attributes':['id',_0x7528('0x48'),_0x7528('0x5b')],'raw':!![]})['then'](function(_0x3528f1){_0x56b250=_[_0x7528('0x5c')](_0x3528f1,'id');var _0x2e3479={'type':db[_0x7528('0x5d')][_0x7528('0x5e')][_0x7528('0x5f')],'model':db[_0x7528('0x60')],'mapToModel':!![],'nest':!![],'raw':!![]};return db['sequelize'][_0x7528('0x61')](_0x1f14e7[_0x7528('0x62')](),_0x2e3479);})[_0x7528('0x4d')](function(_0x49233b){_0x49233b[_0x7528('0x1e')](function(_0x45d0d0){if(_0x45d0d0[_0x7528('0x1b')]){_0x45d0d0[_0x7528('0x63')]=[];_0x45d0d0[_0x7528('0x1b')][_0x7528('0x24')](',')[_0x7528('0x1e')](function(_0x303c1c){_0x45d0d0[_0x7528('0x63')][_0x7528('0x1d')](_0x56b250[_0x303c1c]);});}delete _0x45d0d0[_0x7528('0x1b')];});return _0x49233b;});}function countFilteredContacts(_0x53003a,_0x168533){var _0x1617be=_0x53003a[_0x7528('0x64')]();_0x1617be[_0x7528('0x20')](_0x7528('0x65'));_0x1617be=applyJoinClauses(_0x1617be,!![]);_0x53003a[_0x7528('0x57')](_0x7528('0x54'));var _0x1d041b=utils[_0x7528('0x66')](_0x168533);if(!_['isEmpty'](_0x1d041b)){_0x1617be['where'](_0x7528('0x67'),_0x1d041b);}var _0x298389={'type':db['Sequelize']['QueryTypes'][_0x7528('0x5f')],'raw':!![]};return db[_0x7528('0x68')]['query'](_0x1617be[_0x7528('0x62')](),_0x298389)[_0x7528('0x4d')](function(_0x28cdc9){return _0x28cdc9[0x0][_0x7528('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