2182e180806d7fe1fd0cdf8033759698dec78614
[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 _0xe91d=['where','default','fields','user','clause','tags','checkListsRestrictions','ids','tag','count','User','buildContactsQuery','getFilteredContacts','rows','catch','describe','CmContact','keys','filter','startsWith','findOne','slice','all','length','fieldType','type','map','./sql-utils','../../mysqldb','findAll','skipContactsQuery','getContactsSubquery','resolve','then','search','parseAdvancedSearchFilter'];(function(_0x952e3e,_0x4efa1e){var _0x418eb8=function(_0x4b70d7){while(--_0x4b70d7){_0x952e3e['push'](_0x952e3e['shift']());}};_0x418eb8(++_0x4efa1e);}(_0xe91d,0x1a7));var _0xde91=function(_0x457b64,_0x49a219){_0x457b64=_0x457b64-0x0;var _0x437111=_0xe91d[_0x457b64];return _0x437111;};'use strict';var _=require('lodash');var sqlUtils=require(_0xde91('0x0'));var db=require(_0xde91('0x1'))['db'];exports[_0xde91('0x2')]=function(_0x363b9c,_0x5871e7,_0x3246c2,_0x2a3a79){var _0x241d1a={'count':0x0,'rows':[]};var _0x219b03=sqlUtils[_0xde91('0x3')](_0x5871e7,_0x363b9c);if(_0x219b03){return Promise['resolve'](_0x241d1a);}var _0x217256=sqlUtils[_0xde91('0x4')]();var _0x1c2afa={};var _0x586931=![];var _0x117706=![];return Promise[_0xde91('0x5')]()[_0xde91('0x6')](function(){if(_0x363b9c[_0xde91('0x7')]){return sqlUtils[_0xde91('0x8')](_0x363b9c['search'],_0x2a3a79);}else{return sqlUtils['parseQueryParameters'](_0x363b9c,_0x2a3a79);}})[_0xde91('0x6')](function(_0x557ba7){_0x217256[_0xde91('0x9')](_0x557ba7[_0xde91('0xa')]);_0x217256[_0xde91('0x9')](_0x557ba7[_0xde91('0xb')]);_0x217256[_0xde91('0x9')](_0x557ba7['filter']);_0x217256['where'](_0x557ba7[_0xde91('0xc')][_0xde91('0xd')]);_0x1c2afa=_0x557ba7[_0xde91('0xe')];_0x117706=_0x557ba7[_0xde91('0xc')]['skip'];return sqlUtils[_0xde91('0xf')](_0x5871e7,_0x363b9c,_0x117706);})[_0xde91('0x6')](function(_0x1f2ab1){_0x217256[_0xde91('0x9')](_0x1f2ab1);var _0x2c1bad=_0x363b9c[_0xde91('0x7')]?_0x1c2afa[_0xde91('0x10')]:_0x363b9c[_0xde91('0x11')];_0x586931=_0x2c1bad?!![]:![];return sqlUtils['countFilteredContacts'](_0x217256,_0x2c1bad);})[_0xde91('0x6')](function(_0x57320b){_0x241d1a[_0xde91('0x12')]=_0x57320b;if(_0x241d1a[_0xde91('0x12')]===0x0){return;}if(_0x363b9c[_0xde91('0x13')]){_0x117706=!![];}return sqlUtils[_0xde91('0x14')](_0x217256,_0x363b9c[_0xde91('0xb')],_0x3246c2,_0x586931,_0x1c2afa[_0xde91('0xd')],_0x117706);})[_0xde91('0x6')](function(_0xaf4e56){if(!_0xaf4e56){return[];}return sqlUtils[_0xde91('0x15')](_0xaf4e56,_0x363b9c,_0x3246c2);})[_0xde91('0x6')](function(_0x34033f){_0x241d1a[_0xde91('0x16')]=_0x34033f;return _0x241d1a;})[_0xde91('0x17')](function(_0x394ec3){throw _0x394ec3;});};exports[_0xde91('0x18')]=function(){var _0xccb05c={};var _0x113731=[];return db[_0xde91('0x19')][_0xde91('0x18')]()[_0xde91('0x6')](function(_0xeefcd6){_0xccb05c=_0xeefcd6;var _0x316807=Object[_0xde91('0x1a')](_0xccb05c)[_0xde91('0x1b')](function(_0x49d107){return _[_0xde91('0x1c')](_0x49d107,'cf_')?_0x49d107:undefined;});var _0x4e4ddf=_0x316807['map'](function(_0xdce98c){return db['CmCustomField'][_0xde91('0x1d')]({'where':{'id':_0xdce98c[_0xde91('0x1e')](0x3)},'raw':!![]});});return Promise[_0xde91('0x1f')](_0x4e4ddf);})[_0xde91('0x6')](function(_0x47a5f4){for(var _0x36c036=0x0;_0x36c036<_0x47a5f4[_0xde91('0x20')];_0x36c036++){if(_0x47a5f4[_0x36c036]){var _0x259f61='cf_'+_0x47a5f4[_0x36c036]['id'];_0xccb05c[_0x259f61][_0xde91('0x21')]=_0x47a5f4[_0x36c036][_0xde91('0x22')];}}_0x113731=_[_0xde91('0x23')](Object[_0xde91('0x1a')](_0xccb05c),function(_0x55f654){return{'name':_0x55f654,'type':_0xccb05c[_0x55f654][_0xde91('0x22')]};});return _0x113731;})[_0xde91('0x17')](function(_0x4851e9){throw _0x4851e9;});};