5f3fa3fc08f5d0ead8f1278b9fe127167d933aa7
[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 _0x00cc=['lodash','./sql-utils','findAll','skipContactsQuery','resolve','then','search','parseAdvancedSearchFilter','parseQueryParameters','where','default','fields','filter','user','clause','tags','skip','checkListsRestrictions','ids','countFilteredContacts','count','getFilteredContacts','rows','catch','describe','CmContact','startsWith','CmCustomField','findOne','slice','all','length','fieldType','type','map','keys'];(function(_0x246f0c,_0x39f734){var _0x30fe50=function(_0x9a975c){while(--_0x9a975c){_0x246f0c['push'](_0x246f0c['shift']());}};_0x30fe50(++_0x39f734);}(_0x00cc,0x144));var _0xc00c=function(_0x9d421d,_0x2646c8){_0x9d421d=_0x9d421d-0x0;var _0x57b8e5=_0x00cc[_0x9d421d];return _0x57b8e5;};'use strict';var _=require(_0xc00c('0x0'));var sqlUtils=require(_0xc00c('0x1'));var db=require('../../mysqldb')['db'];exports[_0xc00c('0x2')]=function(_0x10965e,_0xdd77a0,_0x5d0d67,_0x2a86f0){var _0x26b7ec={'count':0x0,'rows':[]};var _0x1e19b4=sqlUtils[_0xc00c('0x3')](_0xdd77a0,_0x10965e);if(_0x1e19b4){return Promise[_0xc00c('0x4')](_0x26b7ec);}var _0x21a9b2=sqlUtils['getContactsSubquery']();var _0x4311c3={};var _0x296354=![];var _0x3f35f9=![];return Promise[_0xc00c('0x4')]()[_0xc00c('0x5')](function(){if(_0x10965e[_0xc00c('0x6')]){return sqlUtils[_0xc00c('0x7')](_0x10965e[_0xc00c('0x6')],_0x2a86f0);}else{return sqlUtils[_0xc00c('0x8')](_0x10965e,_0x2a86f0);}})[_0xc00c('0x5')](function(_0x426a53){_0x21a9b2[_0xc00c('0x9')](_0x426a53[_0xc00c('0xa')]);_0x21a9b2[_0xc00c('0x9')](_0x426a53[_0xc00c('0xb')]);_0x21a9b2[_0xc00c('0x9')](_0x426a53[_0xc00c('0xc')]);_0x21a9b2[_0xc00c('0x9')](_0x426a53[_0xc00c('0xd')][_0xc00c('0xe')]);_0x4311c3=_0x426a53[_0xc00c('0xf')];_0x3f35f9=_0x426a53['user'][_0xc00c('0x10')];return sqlUtils[_0xc00c('0x11')](_0xdd77a0,_0x10965e,_0x3f35f9);})[_0xc00c('0x5')](function(_0x4cbf4e){_0x21a9b2[_0xc00c('0x9')](_0x4cbf4e);var _0x585fe7=_0x10965e[_0xc00c('0x6')]?_0x4311c3[_0xc00c('0x12')]:_0x10965e['tag'];_0x296354=_0x585fe7?!![]:![];return sqlUtils[_0xc00c('0x13')](_0x21a9b2,_0x585fe7);})[_0xc00c('0x5')](function(_0x23f556){_0x26b7ec[_0xc00c('0x14')]=_0x23f556;if(_0x26b7ec[_0xc00c('0x14')]===0x0){return;}if(_0x10965e['User']){_0x3f35f9=!![];}return sqlUtils['buildContactsQuery'](_0x21a9b2,_0x10965e[_0xc00c('0xb')],_0x5d0d67,_0x296354,_0x4311c3[_0xc00c('0xe')],_0x3f35f9);})['then'](function(_0x1929f0){if(!_0x1929f0){return[];}return sqlUtils[_0xc00c('0x15')](_0x1929f0,_0x10965e,_0x5d0d67);})[_0xc00c('0x5')](function(_0x291b79){_0x26b7ec[_0xc00c('0x16')]=_0x291b79;return _0x26b7ec;})[_0xc00c('0x17')](function(_0x218153){throw _0x218153;});};exports[_0xc00c('0x18')]=function(){var _0x3b26b6={};var _0xf7730b=[];return db[_0xc00c('0x19')][_0xc00c('0x18')]()[_0xc00c('0x5')](function(_0x262545){_0x3b26b6=_0x262545;var _0x53e5b6=Object['keys'](_0x3b26b6)['filter'](function(_0x5d7091){return _[_0xc00c('0x1a')](_0x5d7091,'cf_')?_0x5d7091:undefined;});var _0x842840=_0x53e5b6['map'](function(_0x3b676e){return db[_0xc00c('0x1b')][_0xc00c('0x1c')]({'where':{'id':_0x3b676e[_0xc00c('0x1d')](0x3)},'raw':!![]});});return Promise[_0xc00c('0x1e')](_0x842840);})[_0xc00c('0x5')](function(_0x2aa479){for(var _0xeb2108=0x0;_0xeb2108<_0x2aa479[_0xc00c('0x1f')];_0xeb2108++){if(_0x2aa479[_0xeb2108]){var _0x5d4679='cf_'+_0x2aa479[_0xeb2108]['id'];_0x3b26b6[_0x5d4679][_0xc00c('0x20')]=_0x2aa479[_0xeb2108][_0xc00c('0x21')];}}_0xf7730b=_[_0xc00c('0x22')](Object[_0xc00c('0x23')](_0x3b26b6),function(_0x566808){return{'name':_0x566808,'type':_0x3b26b6[_0x566808][_0xc00c('0x21')]};});return _0xf7730b;})[_0xc00c('0x17')](function(_0x1be2fd){throw _0x1be2fd;});};