d650e9eb389339467ae458b1d16bf0a96173a6bd
[motion2.git] / server / components / contacts / index.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x841e=['rows','catch','describe','CmContact','keys','cf_','map','CmCustomField','findOne','slice','length','fieldType','type','lodash','./sql-utils','findAll','skipContactsQuery','resolve','then','search','parseAdvancedSearchFilter','parseQueryParameters','default','where','fields','user','skip','checkListsRestrictions','ids','tag','countFilteredContacts','count','buildContactsQuery','clause','getFilteredContacts'];(function(_0x5b9a96,_0x4b901d){var _0x4ef128=function(_0x1bb544){while(--_0x1bb544){_0x5b9a96['push'](_0x5b9a96['shift']());}};_0x4ef128(++_0x4b901d);}(_0x841e,0x125));var _0xe841=function(_0xa464c9,_0x7c86d8){_0xa464c9=_0xa464c9-0x0;var _0x3d73c4=_0x841e[_0xa464c9];return _0x3d73c4;};'use strict';var _=require(_0xe841('0x0'));var sqlUtils=require(_0xe841('0x1'));var db=require('../../mysqldb')['db'];exports[_0xe841('0x2')]=function(_0x45d667,_0x9fac58,_0x5137a6,_0x2888b3){var _0x36ebc2={'count':0x0,'rows':[]};var _0x141f36=sqlUtils[_0xe841('0x3')](_0x9fac58,_0x45d667);if(_0x141f36){return Promise['resolve'](_0x36ebc2);}var _0x36777f=sqlUtils['getContactsSubquery']();var _0x51ca77={};var _0x4c76ea=![];var _0x300253=![];return Promise[_0xe841('0x4')]()[_0xe841('0x5')](function(){if(_0x45d667[_0xe841('0x6')]){return sqlUtils[_0xe841('0x7')](_0x45d667[_0xe841('0x6')],_0x2888b3);}else{return sqlUtils[_0xe841('0x8')](_0x45d667,_0x2888b3);}})[_0xe841('0x5')](function(_0x2e5621){_0x36777f['where'](_0x2e5621[_0xe841('0x9')]);_0x36777f[_0xe841('0xa')](_0x2e5621[_0xe841('0xb')]);_0x36777f[_0xe841('0xa')](_0x2e5621['filter']);_0x36777f[_0xe841('0xa')](_0x2e5621['user']['clause']);_0x51ca77=_0x2e5621['tags'];_0x300253=_0x2e5621[_0xe841('0xc')][_0xe841('0xd')];return sqlUtils[_0xe841('0xe')](_0x9fac58,_0x45d667,_0x300253);})[_0xe841('0x5')](function(_0x1fc15a){_0x36777f['where'](_0x1fc15a);var _0x2c9622=_0x45d667[_0xe841('0x6')]?_0x51ca77[_0xe841('0xf')]:_0x45d667[_0xe841('0x10')];_0x4c76ea=_0x2c9622?!![]:![];return sqlUtils[_0xe841('0x11')](_0x36777f,_0x2c9622);})['then'](function(_0x1405f1){_0x36ebc2[_0xe841('0x12')]=_0x1405f1;if(_0x36ebc2[_0xe841('0x12')]===0x0){return;}if(_0x45d667['User']){_0x300253=!![];}return sqlUtils[_0xe841('0x13')](_0x36777f,_0x45d667[_0xe841('0xb')],_0x5137a6,_0x4c76ea,_0x51ca77[_0xe841('0x14')],_0x300253);})[_0xe841('0x5')](function(_0x457ac2){if(!_0x457ac2){return[];}return sqlUtils[_0xe841('0x15')](_0x457ac2,_0x45d667,_0x5137a6);})[_0xe841('0x5')](function(_0x122fd6){_0x36ebc2[_0xe841('0x16')]=_0x122fd6;return _0x36ebc2;})[_0xe841('0x17')](function(_0x3bcc66){throw _0x3bcc66;});};exports[_0xe841('0x18')]=function(){var _0x5242a0={};var _0x4162bc=[];return db[_0xe841('0x19')][_0xe841('0x18')]()[_0xe841('0x5')](function(_0x308504){_0x5242a0=_0x308504;var _0x363d0f=Object[_0xe841('0x1a')](_0x5242a0)['filter'](function(_0x58fd7e){return _['startsWith'](_0x58fd7e,_0xe841('0x1b'))?_0x58fd7e:undefined;});var _0x18481b=_0x363d0f[_0xe841('0x1c')](function(_0xdbfcfc){return db[_0xe841('0x1d')][_0xe841('0x1e')]({'where':{'id':_0xdbfcfc[_0xe841('0x1f')](0x3)},'raw':!![]});});return Promise['all'](_0x18481b);})['then'](function(_0x537cdb){for(var _0x31ed7e=0x0;_0x31ed7e<_0x537cdb[_0xe841('0x20')];_0x31ed7e++){if(_0x537cdb[_0x31ed7e]){var _0x5dbfc7=_0xe841('0x1b')+_0x537cdb[_0x31ed7e]['id'];_0x5242a0[_0x5dbfc7][_0xe841('0x21')]=_0x537cdb[_0x31ed7e][_0xe841('0x22')];}}_0x4162bc=_['map'](Object[_0xe841('0x1a')](_0x5242a0),function(_0xe458ae){return{'name':_0xe458ae,'type':_0x5242a0[_0xe458ae][_0xe841('0x22')]};});return _0x4162bc;})[_0xe841('0x17')](function(_0x54feac){throw _0x54feac;});};