14422403c9a17cf4cbb7a7626b91262516c0fa91
[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 _0x4c25=['clause','tags','skip','checkListsRestrictions','ids','tag','count','User','buildContactsQuery','fields','getFilteredContacts','catch','describe','keys','startsWith','cf_','map','CmCustomField','findOne','all','length','fieldType','type','lodash','./sql-utils','../../mysqldb','skipContactsQuery','getContactsSubquery','resolve','then','search','parseAdvancedSearchFilter','parseQueryParameters','default','where','filter','user'];(function(_0x5e86af,_0x4f5f60){var _0x11b894=function(_0x38d906){while(--_0x38d906){_0x5e86af['push'](_0x5e86af['shift']());}};_0x11b894(++_0x4f5f60);}(_0x4c25,0xf5));var _0x54c2=function(_0x2f9467,_0x40576f){_0x2f9467=_0x2f9467-0x0;var _0x39894c=_0x4c25[_0x2f9467];return _0x39894c;};'use strict';var _=require(_0x54c2('0x0'));var sqlUtils=require(_0x54c2('0x1'));var db=require(_0x54c2('0x2'))['db'];exports['findAll']=function(_0x4c8474,_0x2f0f79,_0xf80382,_0x1cf2f6){var _0x1e8250={'count':0x0,'rows':[]};var _0x5662af=sqlUtils[_0x54c2('0x3')](_0x2f0f79,_0x4c8474);if(_0x5662af){return Promise['resolve'](_0x1e8250);}var _0x58a7e1=sqlUtils[_0x54c2('0x4')]();var _0x48c5db={};var _0x12e0b5=![];var _0x1b28c4=![];return Promise[_0x54c2('0x5')]()[_0x54c2('0x6')](function(){if(_0x4c8474[_0x54c2('0x7')]){return sqlUtils[_0x54c2('0x8')](_0x4c8474[_0x54c2('0x7')],_0x1cf2f6);}else{return sqlUtils[_0x54c2('0x9')](_0x4c8474,_0x1cf2f6);}})[_0x54c2('0x6')](function(_0x5dc004){_0x58a7e1['where'](_0x5dc004[_0x54c2('0xa')]);_0x58a7e1['where'](_0x5dc004['fields']);_0x58a7e1[_0x54c2('0xb')](_0x5dc004[_0x54c2('0xc')]);_0x58a7e1[_0x54c2('0xb')](_0x5dc004[_0x54c2('0xd')][_0x54c2('0xe')]);_0x48c5db=_0x5dc004[_0x54c2('0xf')];_0x1b28c4=_0x5dc004['user'][_0x54c2('0x10')];return sqlUtils[_0x54c2('0x11')](_0x2f0f79,_0x4c8474,_0x1b28c4);})[_0x54c2('0x6')](function(_0x3a43e0){_0x58a7e1['where'](_0x3a43e0);var _0x4f9cee=_0x4c8474[_0x54c2('0x7')]?_0x48c5db[_0x54c2('0x12')]:_0x4c8474[_0x54c2('0x13')];_0x12e0b5=_0x4f9cee?!![]:![];return sqlUtils['countFilteredContacts'](_0x58a7e1,_0x4f9cee);})[_0x54c2('0x6')](function(_0x1b1d28){_0x1e8250[_0x54c2('0x14')]=_0x1b1d28;if(_0x1e8250['count']===0x0){return;}if(_0x4c8474[_0x54c2('0x15')]){_0x1b28c4=!![];}return sqlUtils[_0x54c2('0x16')](_0x58a7e1,_0x4c8474[_0x54c2('0x17')],_0xf80382,_0x12e0b5,_0x48c5db[_0x54c2('0xe')],_0x1b28c4);})[_0x54c2('0x6')](function(_0x2516b){if(!_0x2516b){return[];}return sqlUtils[_0x54c2('0x18')](_0x2516b,_0x4c8474,_0xf80382);})[_0x54c2('0x6')](function(_0x431f05){_0x1e8250['rows']=_0x431f05;return _0x1e8250;})[_0x54c2('0x19')](function(_0x36059f){throw _0x36059f;});};exports['describe']=function(){var _0x1715dc={};var _0x2ae901=[];return db['CmContact'][_0x54c2('0x1a')]()[_0x54c2('0x6')](function(_0x3b7433){_0x1715dc=_0x3b7433;var _0x107bb1=Object[_0x54c2('0x1b')](_0x1715dc)[_0x54c2('0xc')](function(_0x4d76b5){return _[_0x54c2('0x1c')](_0x4d76b5,_0x54c2('0x1d'))?_0x4d76b5:undefined;});var _0x5239cd=_0x107bb1[_0x54c2('0x1e')](function(_0x15e903){return db[_0x54c2('0x1f')][_0x54c2('0x20')]({'where':{'id':_0x15e903['slice'](0x3)},'raw':!![]});});return Promise[_0x54c2('0x21')](_0x5239cd);})[_0x54c2('0x6')](function(_0x5cb3b3){for(var _0x929cf7=0x0;_0x929cf7<_0x5cb3b3[_0x54c2('0x22')];_0x929cf7++){if(_0x5cb3b3[_0x929cf7]){var _0x526488=_0x54c2('0x1d')+_0x5cb3b3[_0x929cf7]['id'];_0x1715dc[_0x526488][_0x54c2('0x23')]=_0x5cb3b3[_0x929cf7]['type'];}}_0x2ae901=_[_0x54c2('0x1e')](Object[_0x54c2('0x1b')](_0x1715dc),function(_0x49096b){return{'name':_0x49096b,'type':_0x1715dc[_0x49096b][_0x54c2('0x24')]};});return _0x2ae901;})[_0x54c2('0x19')](function(_0x57a682){throw _0x57a682;});};