95c24b04d6ad1dd8f6da55acf6085f44328074f6
[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 _0x1988=['buildContactsQuery','getFilteredContacts','rows','catch','describe','CmContact','keys','filter','startsWith','cf_','map','CmCustomField','findOne','slice','length','fieldType','findAll','skipContactsQuery','getContactsSubquery','resolve','search','parseQueryParameters','then','where','fields','user','clause','skip','checkListsRestrictions','tag','countFilteredContacts','count','User'];(function(_0x1612ac,_0x11cf88){var _0x25cf92=function(_0x8b82fc){while(--_0x8b82fc){_0x1612ac['push'](_0x1612ac['shift']());}};_0x25cf92(++_0x11cf88);}(_0x1988,0x139));var _0x8198=function(_0x584117,_0x111b02){_0x584117=_0x584117-0x0;var _0xef0a23=_0x1988[_0x584117];return _0xef0a23;};'use strict';var _=require('lodash');var sqlUtils=require('./sql-utils');var db=require('../../mysqldb')['db'];exports[_0x8198('0x0')]=function(_0x590377,_0x4a8ee9,_0x84d79c,_0x2e0915){var _0x1402d5={'count':0x0,'rows':[]};var _0x575f9c=sqlUtils[_0x8198('0x1')](_0x4a8ee9,_0x590377);if(_0x575f9c){return Promise['resolve'](_0x1402d5);}var _0x545c44=sqlUtils[_0x8198('0x2')]();var _0x3ead44={};var _0x453da3=![];var _0x4763c0=![];return Promise[_0x8198('0x3')]()['then'](function(){if(_0x590377[_0x8198('0x4')]){return sqlUtils['parseAdvancedSearchFilter'](_0x590377[_0x8198('0x4')],_0x2e0915);}else{return sqlUtils[_0x8198('0x5')](_0x590377,_0x2e0915);}})[_0x8198('0x6')](function(_0x1822a5){_0x545c44[_0x8198('0x7')](_0x1822a5['default']);_0x545c44[_0x8198('0x7')](_0x1822a5[_0x8198('0x8')]);_0x545c44[_0x8198('0x7')](_0x1822a5['filter']);_0x545c44[_0x8198('0x7')](_0x1822a5[_0x8198('0x9')][_0x8198('0xa')]);_0x3ead44=_0x1822a5['tags'];_0x4763c0=_0x1822a5[_0x8198('0x9')][_0x8198('0xb')];return sqlUtils[_0x8198('0xc')](_0x4a8ee9,_0x590377,_0x4763c0);})[_0x8198('0x6')](function(_0x475c6b){_0x545c44[_0x8198('0x7')](_0x475c6b);var _0x34438b=_0x590377['search']?_0x3ead44['ids']:_0x590377[_0x8198('0xd')];_0x453da3=_0x34438b?!![]:![];return sqlUtils[_0x8198('0xe')](_0x545c44,_0x34438b);})[_0x8198('0x6')](function(_0x3c0288){_0x1402d5[_0x8198('0xf')]=_0x3c0288;if(_0x1402d5[_0x8198('0xf')]===0x0){return;}if(_0x590377[_0x8198('0x10')]){_0x4763c0=!![];}return sqlUtils[_0x8198('0x11')](_0x545c44,_0x590377[_0x8198('0x8')],_0x84d79c,_0x453da3,_0x3ead44[_0x8198('0xa')],_0x4763c0);})['then'](function(_0x32ccd2){if(!_0x32ccd2){return[];}return sqlUtils[_0x8198('0x12')](_0x32ccd2,_0x590377,_0x84d79c);})[_0x8198('0x6')](function(_0x1f4b2c){_0x1402d5[_0x8198('0x13')]=_0x1f4b2c;return _0x1402d5;})[_0x8198('0x14')](function(_0x3b5820){throw _0x3b5820;});};exports[_0x8198('0x15')]=function(){var _0x52007d={};var _0x25c855=[];return db[_0x8198('0x16')]['describe']()[_0x8198('0x6')](function(_0x5ce420){_0x52007d=_0x5ce420;var _0x29f52d=Object[_0x8198('0x17')](_0x52007d)[_0x8198('0x18')](function(_0x4e277d){return _[_0x8198('0x19')](_0x4e277d,_0x8198('0x1a'))?_0x4e277d:undefined;});var _0x53625b=_0x29f52d[_0x8198('0x1b')](function(_0x51c044){return db[_0x8198('0x1c')][_0x8198('0x1d')]({'where':{'id':_0x51c044[_0x8198('0x1e')](0x3)},'raw':!![]});});return Promise['all'](_0x53625b);})[_0x8198('0x6')](function(_0x4ace44){for(var _0x196588=0x0;_0x196588<_0x4ace44[_0x8198('0x1f')];_0x196588++){if(_0x4ace44[_0x196588]){var _0x5091dd=_0x8198('0x1a')+_0x4ace44[_0x196588]['id'];_0x52007d[_0x5091dd][_0x8198('0x20')]=_0x4ace44[_0x196588]['type'];}}_0x25c855=_['map'](Object[_0x8198('0x17')](_0x52007d),function(_0x88ec02){return{'name':_0x88ec02,'type':_0x52007d[_0x88ec02]['type']};});return _0x25c855;})[_0x8198('0x14')](function(_0x3fc45c){throw _0x3fc45c;});};