aec7071500f68aa5225840fadc286331c01df685
[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 _0x1665=['countFilteredContacts','count','User','buildContactsQuery','clause','getFilteredContacts','rows','catch','describe','keys','startsWith','cf_','map','CmCustomField','findOne','slice','all','length','fieldType','type','lodash','./sql-utils','../../mysqldb','findAll','skipContactsQuery','resolve','getContactsSubquery','then','parseAdvancedSearchFilter','parseQueryParameters','where','fields','filter','user','skip','search','ids','tag'];(function(_0x1035c1,_0x2d8583){var _0x308d67=function(_0x58ddb6){while(--_0x58ddb6){_0x1035c1['push'](_0x1035c1['shift']());}};_0x308d67(++_0x2d8583);}(_0x1665,0x11e));var _0x5166=function(_0x2e30b0,_0x3be40e){_0x2e30b0=_0x2e30b0-0x0;var _0x5167d4=_0x1665[_0x2e30b0];return _0x5167d4;};'use strict';var _=require(_0x5166('0x0'));var sqlUtils=require(_0x5166('0x1'));var db=require(_0x5166('0x2'))['db'];exports[_0x5166('0x3')]=function(_0x30eaa3,_0x3bc497,_0x12ddd9,_0x4b9efc){var _0xe1420={'count':0x0,'rows':[]};var _0x36618e=sqlUtils[_0x5166('0x4')](_0x3bc497,_0x30eaa3);if(_0x36618e){return Promise[_0x5166('0x5')](_0xe1420);}var _0x5aa582=sqlUtils[_0x5166('0x6')]();var _0x4cd461={};var _0x41d3f0=![];var _0x3ecb42=![];return Promise[_0x5166('0x5')]()[_0x5166('0x7')](function(){if(_0x30eaa3['search']){return sqlUtils[_0x5166('0x8')](_0x30eaa3['search'],_0x4b9efc);}else{return sqlUtils[_0x5166('0x9')](_0x30eaa3,_0x4b9efc);}})[_0x5166('0x7')](function(_0x269d96){_0x5aa582[_0x5166('0xa')](_0x269d96['default']);_0x5aa582[_0x5166('0xa')](_0x269d96[_0x5166('0xb')]);_0x5aa582[_0x5166('0xa')](_0x269d96[_0x5166('0xc')]);_0x5aa582[_0x5166('0xa')](_0x269d96['user']['clause']);_0x4cd461=_0x269d96['tags'];_0x3ecb42=_0x269d96[_0x5166('0xd')][_0x5166('0xe')];return sqlUtils['checkListsRestrictions'](_0x3bc497,_0x30eaa3,_0x3ecb42);})[_0x5166('0x7')](function(_0xe8203e){_0x5aa582[_0x5166('0xa')](_0xe8203e);var _0x503ff0=_0x30eaa3[_0x5166('0xf')]?_0x4cd461[_0x5166('0x10')]:_0x30eaa3[_0x5166('0x11')];_0x41d3f0=_0x503ff0?!![]:![];return sqlUtils[_0x5166('0x12')](_0x5aa582,_0x503ff0);})[_0x5166('0x7')](function(_0x535e33){_0xe1420[_0x5166('0x13')]=_0x535e33;if(_0xe1420[_0x5166('0x13')]===0x0){return;}if(_0x30eaa3[_0x5166('0x14')]){_0x3ecb42=!![];}return sqlUtils[_0x5166('0x15')](_0x5aa582,_0x30eaa3['fields'],_0x12ddd9,_0x41d3f0,_0x4cd461[_0x5166('0x16')],_0x3ecb42);})['then'](function(_0x53280c){if(!_0x53280c){return[];}return sqlUtils[_0x5166('0x17')](_0x53280c,_0x30eaa3,_0x12ddd9);})[_0x5166('0x7')](function(_0x58623c){_0xe1420[_0x5166('0x18')]=_0x58623c;return _0xe1420;})[_0x5166('0x19')](function(_0x24a6a2){throw _0x24a6a2;});};exports[_0x5166('0x1a')]=function(){var _0x39a1c2={};var _0x4bd6e7=[];return db['CmContact']['describe']()[_0x5166('0x7')](function(_0x4a3a96){_0x39a1c2=_0x4a3a96;var _0xde80d4=Object[_0x5166('0x1b')](_0x39a1c2)[_0x5166('0xc')](function(_0x288b40){return _[_0x5166('0x1c')](_0x288b40,_0x5166('0x1d'))?_0x288b40:undefined;});var _0x32c91d=_0xde80d4[_0x5166('0x1e')](function(_0x58926f){return db[_0x5166('0x1f')][_0x5166('0x20')]({'where':{'id':_0x58926f[_0x5166('0x21')](0x3)},'raw':!![]});});return Promise[_0x5166('0x22')](_0x32c91d);})[_0x5166('0x7')](function(_0x4085b0){for(var _0x2eeb3f=0x0;_0x2eeb3f<_0x4085b0[_0x5166('0x23')];_0x2eeb3f++){if(_0x4085b0[_0x2eeb3f]){var _0x32ccdd=_0x5166('0x1d')+_0x4085b0[_0x2eeb3f]['id'];_0x39a1c2[_0x32ccdd][_0x5166('0x24')]=_0x4085b0[_0x2eeb3f][_0x5166('0x25')];}}_0x4bd6e7=_[_0x5166('0x1e')](Object[_0x5166('0x1b')](_0x39a1c2),function(_0x1673b3){return{'name':_0x1673b3,'type':_0x39a1c2[_0x1673b3][_0x5166('0x25')]};});return _0x4bd6e7;})[_0x5166('0x19')](function(_0x36441b){throw _0x36441b;});};