70da06fee006f058862077e5012890c31f022a5e
[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 _0xdfab=['parseAdvancedSearchFilter','parseQueryParameters','where','default','filter','user','clause','tags','skip','ids','tag','countFilteredContacts','count','User','buildContactsQuery','getFilteredContacts','rows','describe','keys','cf_','map','slice','all','length','fieldType','type','catch','lodash','./sql-utils','../../mysqldb','findAll','skipContactsQuery','resolve','getContactsSubquery','then','search'];(function(_0x1cd47d,_0x55bc75){var _0x29d52f=function(_0x37737a){while(--_0x37737a){_0x1cd47d['push'](_0x1cd47d['shift']());}};_0x29d52f(++_0x55bc75);}(_0xdfab,0x13b));var _0xbdfa=function(_0x484c03,_0x13c1d2){_0x484c03=_0x484c03-0x0;var _0x294127=_0xdfab[_0x484c03];return _0x294127;};'use strict';var _=require(_0xbdfa('0x0'));var sqlUtils=require(_0xbdfa('0x1'));var db=require(_0xbdfa('0x2'))['db'];exports[_0xbdfa('0x3')]=function(_0xd3c699,_0x2156df,_0x57cfb3,_0x23f3d0){var _0x509f56={'count':0x0,'rows':[]};var _0x325f0c=sqlUtils[_0xbdfa('0x4')](_0x2156df,_0xd3c699);if(_0x325f0c){return Promise[_0xbdfa('0x5')](_0x509f56);}var _0x275265=sqlUtils[_0xbdfa('0x6')]();var _0x49c85e={};var _0x25bc81=![];var _0x4e8e92=![];return Promise[_0xbdfa('0x5')]()[_0xbdfa('0x7')](function(){if(_0xd3c699[_0xbdfa('0x8')]){return sqlUtils[_0xbdfa('0x9')](_0xd3c699[_0xbdfa('0x8')],_0x23f3d0);}else{return sqlUtils[_0xbdfa('0xa')](_0xd3c699,_0x23f3d0);}})[_0xbdfa('0x7')](function(_0x560e69){_0x275265[_0xbdfa('0xb')](_0x560e69[_0xbdfa('0xc')]);_0x275265[_0xbdfa('0xb')](_0x560e69['fields']);_0x275265[_0xbdfa('0xb')](_0x560e69[_0xbdfa('0xd')]);_0x275265[_0xbdfa('0xb')](_0x560e69[_0xbdfa('0xe')][_0xbdfa('0xf')]);_0x49c85e=_0x560e69[_0xbdfa('0x10')];_0x4e8e92=_0x560e69[_0xbdfa('0xe')][_0xbdfa('0x11')];return sqlUtils['checkListsRestrictions'](_0x2156df,_0xd3c699,_0x4e8e92);})[_0xbdfa('0x7')](function(_0x3b54d9){_0x275265['where'](_0x3b54d9);var _0x243e53=_0xd3c699[_0xbdfa('0x8')]?_0x49c85e[_0xbdfa('0x12')]:_0xd3c699[_0xbdfa('0x13')];_0x25bc81=_0x243e53?!![]:![];return sqlUtils[_0xbdfa('0x14')](_0x275265,_0x243e53);})[_0xbdfa('0x7')](function(_0x148f7c){_0x509f56[_0xbdfa('0x15')]=_0x148f7c;if(_0x509f56[_0xbdfa('0x15')]===0x0){return;}if(_0xd3c699[_0xbdfa('0x16')]){_0x4e8e92=!![];}return sqlUtils[_0xbdfa('0x17')](_0x275265,_0xd3c699['fields'],_0x57cfb3,_0x25bc81,_0x49c85e['clause'],_0x4e8e92);})[_0xbdfa('0x7')](function(_0x42e27d){if(!_0x42e27d){return[];}return sqlUtils[_0xbdfa('0x18')](_0x42e27d,_0xd3c699,_0x57cfb3);})[_0xbdfa('0x7')](function(_0x148d77){_0x509f56[_0xbdfa('0x19')]=_0x148d77;return _0x509f56;})['catch'](function(_0xd3e60b){throw _0xd3e60b;});};exports[_0xbdfa('0x1a')]=function(){var _0x3223b4={};var _0x2410d9=[];return db['CmContact'][_0xbdfa('0x1a')]()['then'](function(_0x203211){_0x3223b4=_0x203211;var _0x32e99e=Object[_0xbdfa('0x1b')](_0x3223b4)[_0xbdfa('0xd')](function(_0x314198){return _['startsWith'](_0x314198,_0xbdfa('0x1c'))?_0x314198:undefined;});var _0xc714ed=_0x32e99e[_0xbdfa('0x1d')](function(_0x3d57cf){return db['CmCustomField']['findOne']({'where':{'id':_0x3d57cf[_0xbdfa('0x1e')](0x3)},'raw':!![]});});return Promise[_0xbdfa('0x1f')](_0xc714ed);})[_0xbdfa('0x7')](function(_0x3d0207){for(var _0x453e7d=0x0;_0x453e7d<_0x3d0207[_0xbdfa('0x20')];_0x453e7d++){if(_0x3d0207[_0x453e7d]){var _0x4c8a1e=_0xbdfa('0x1c')+_0x3d0207[_0x453e7d]['id'];_0x3223b4[_0x4c8a1e][_0xbdfa('0x21')]=_0x3d0207[_0x453e7d][_0xbdfa('0x22')];}}_0x2410d9=_[_0xbdfa('0x1d')](Object[_0xbdfa('0x1b')](_0x3223b4),function(_0x3ed127){return{'name':_0x3ed127,'type':_0x3223b4[_0x3ed127][_0xbdfa('0x22')]};});return _0x2410d9;})[_0xbdfa('0x23')](function(_0x5b6a2a){throw _0x5b6a2a;});};