Built motion from commit e02f907f.|2.6.14
[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 _0x87c7=['default','fields','filter','user','clause','tags','skip','checkListsRestrictions','ids','count','User','buildContactsQuery','getFilteredContacts','rows','catch','describe','CmContact','keys','startsWith','cf_','findOne','slice','all','fieldType','map','type','./sql-utils','findAll','skipContactsQuery','resolve','then','search','parseAdvancedSearchFilter','parseQueryParameters','where'];(function(_0x33725b,_0x3460c1){var _0x351e62=function(_0x129b2e){while(--_0x129b2e){_0x33725b['push'](_0x33725b['shift']());}};_0x351e62(++_0x3460c1);}(_0x87c7,0x83));var _0x787c=function(_0x220241,_0x101899){_0x220241=_0x220241-0x0;var _0xabf9d7=_0x87c7[_0x220241];return _0xabf9d7;};'use strict';var _=require('lodash');var sqlUtils=require(_0x787c('0x0'));var db=require('../../mysqldb')['db'];exports[_0x787c('0x1')]=function(_0x2dbd5a,_0x542c52,_0x4990ef,_0x48e932){var _0x40ec6c={'count':0x0,'rows':[]};var _0x28f106=sqlUtils[_0x787c('0x2')](_0x542c52,_0x2dbd5a);if(_0x28f106){return Promise[_0x787c('0x3')](_0x40ec6c);}var _0x1a0db8=sqlUtils['getContactsSubquery']();var _0x3ee368={};var _0x3e2843=![];var _0x84abf7=![];return Promise[_0x787c('0x3')]()[_0x787c('0x4')](function(){if(_0x2dbd5a[_0x787c('0x5')]){return sqlUtils[_0x787c('0x6')](_0x2dbd5a['search'],_0x48e932);}else{return sqlUtils[_0x787c('0x7')](_0x2dbd5a,_0x48e932);}})[_0x787c('0x4')](function(_0x24aaf6){_0x1a0db8[_0x787c('0x8')](_0x24aaf6[_0x787c('0x9')]);_0x1a0db8[_0x787c('0x8')](_0x24aaf6[_0x787c('0xa')]);_0x1a0db8['where'](_0x24aaf6[_0x787c('0xb')]);_0x1a0db8[_0x787c('0x8')](_0x24aaf6[_0x787c('0xc')][_0x787c('0xd')]);_0x3ee368=_0x24aaf6[_0x787c('0xe')];_0x84abf7=_0x24aaf6['user'][_0x787c('0xf')];return sqlUtils[_0x787c('0x10')](_0x542c52,_0x2dbd5a,_0x84abf7);})['then'](function(_0x2ce9b8){_0x1a0db8[_0x787c('0x8')](_0x2ce9b8);var _0x308707=_0x2dbd5a[_0x787c('0x5')]?_0x3ee368[_0x787c('0x11')]:_0x2dbd5a['tag'];_0x3e2843=_0x308707?!![]:![];return sqlUtils['countFilteredContacts'](_0x1a0db8,_0x308707);})['then'](function(_0xb6fb5f){_0x40ec6c['count']=_0xb6fb5f;if(_0x40ec6c[_0x787c('0x12')]===0x0){return;}if(_0x2dbd5a[_0x787c('0x13')]){_0x84abf7=!![];}return sqlUtils[_0x787c('0x14')](_0x1a0db8,_0x2dbd5a[_0x787c('0xa')],_0x4990ef,_0x3e2843,_0x3ee368['clause'],_0x84abf7);})[_0x787c('0x4')](function(_0x5c1440){if(!_0x5c1440){return[];}return sqlUtils[_0x787c('0x15')](_0x5c1440,_0x2dbd5a,_0x4990ef);})[_0x787c('0x4')](function(_0x17d603){_0x40ec6c[_0x787c('0x16')]=_0x17d603;return _0x40ec6c;})[_0x787c('0x17')](function(_0x1ccbce){throw _0x1ccbce;});};exports[_0x787c('0x18')]=function(){var _0x57b6f9={};var _0x256ceb=[];return db[_0x787c('0x19')][_0x787c('0x18')]()[_0x787c('0x4')](function(_0x3466cd){_0x57b6f9=_0x3466cd;var _0x339401=Object[_0x787c('0x1a')](_0x57b6f9)[_0x787c('0xb')](function(_0x1d8fa4){return _[_0x787c('0x1b')](_0x1d8fa4,_0x787c('0x1c'))?_0x1d8fa4:undefined;});var _0x4a1e07=_0x339401['map'](function(_0x3fd981){return db['CmCustomField'][_0x787c('0x1d')]({'where':{'id':_0x3fd981[_0x787c('0x1e')](0x3)},'raw':!![]});});return Promise[_0x787c('0x1f')](_0x4a1e07);})[_0x787c('0x4')](function(_0x3e8788){for(var _0x3c56f8=0x0;_0x3c56f8<_0x3e8788['length'];_0x3c56f8++){if(_0x3e8788[_0x3c56f8]){var _0x459122=_0x787c('0x1c')+_0x3e8788[_0x3c56f8]['id'];_0x57b6f9[_0x459122][_0x787c('0x20')]=_0x3e8788[_0x3c56f8]['type'];}}_0x256ceb=_[_0x787c('0x21')](Object[_0x787c('0x1a')](_0x57b6f9),function(_0x45e056){return{'name':_0x45e056,'type':_0x57b6f9[_0x45e056][_0x787c('0x22')]};});return _0x256ceb;})[_0x787c('0x17')](function(_0x51f8b3){throw _0x51f8b3;});};