Built motion from commit 9e1399f3.|2.5.37
[motion2.git] / server / api / cmHopperBlack / cmHopperBlack.controller.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 _0x529a=['../../config/license/util','../../mysqldb','sendStatus','status','json','limit','count','offset','Content-Range','apply','reject','save','then','end','error','stack','name','index','map','CmHopperBlack','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','sort','filter','where','merge','VIRTUAL','options','include','rows','catch','rawAttributes','includeAll','find','update','body','params','destroy','describe','eml-format','zip-dir','moment','bluebird','path','sox','to-csv','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment'];(function(_0x317395,_0x54537c){var _0x297041=function(_0x5b4073){while(--_0x5b4073){_0x317395['push'](_0x317395['shift']());}};_0x297041(++_0x54537c);}(_0x529a,0x77));var _0xa529=function(_0x45e98e,_0x169b60){_0x45e98e=_0x45e98e-0x0;var _0x374dba=_0x529a[_0x45e98e];return _0x374dba;};'use strict';var emlformat=require(_0xa529('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xa529('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xa529('0x2'));var BPromise=require(_0xa529('0x3'));var Mustache=require('mustache');var util=require('util');var path=require(_0xa529('0x4'));var sox=require(_0xa529('0x5'));var csv=require(_0xa529('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xa529('0x7'));var squel=require(_0xa529('0x8'));var crypto=require(_0xa529('0x9'));var jsforce=require(_0xa529('0xa'));var deskjs=require('desk.js');var toCsv=require(_0xa529('0x6'));var querystring=require(_0xa529('0xb'));var Papa=require(_0xa529('0xc'));var Redis=require('ioredis');var authService=require(_0xa529('0xd'));var qs=require(_0xa529('0xe'));var as=require(_0xa529('0xf'));var hardwareService=require(_0xa529('0x10'));var logger=require(_0xa529('0x11'))(_0xa529('0x12'));var utils=require(_0xa529('0x13'));var config=require(_0xa529('0x14'));var licenseUtil=require(_0xa529('0x15'));var db=require(_0xa529('0x16'))['db'];function respondWithStatusCode(_0x48fd89,_0x3dddd5){_0x3dddd5=_0x3dddd5||0xcc;return function(_0x14be07){if(_0x14be07){return _0x48fd89[_0xa529('0x17')](_0x3dddd5);}return _0x48fd89[_0xa529('0x18')](_0x3dddd5)['end']();};}function respondWithResult(_0x18b1db,_0x5608c9){_0x5608c9=_0x5608c9||0xc8;return function(_0x47aa7a){if(_0x47aa7a){return _0x18b1db[_0xa529('0x18')](_0x5608c9)[_0xa529('0x19')](_0x47aa7a);}};}function respondWithFilteredResult(_0x55683b,_0x2cd846){return function(_0x41a708){if(_0x41a708){var _0x490247=typeof _0x2cd846['offset']==='undefined'&&typeof _0x2cd846[_0xa529('0x1a')]==='undefined';var _0x1afc7c=_0x41a708[_0xa529('0x1b')];var _0x463687=_0x490247?0x0:_0x2cd846[_0xa529('0x1c')];var _0x37c9c9=_0x490247?_0x41a708['count']:_0x2cd846[_0xa529('0x1c')]+_0x2cd846[_0xa529('0x1a')];var _0xf67ddf;if(_0x37c9c9>=_0x1afc7c){_0x37c9c9=_0x1afc7c;_0xf67ddf=0xc8;}else{_0xf67ddf=0xce;}_0x55683b[_0xa529('0x18')](_0xf67ddf);return _0x55683b['set'](_0xa529('0x1d'),_0x463687+'-'+_0x37c9c9+'/'+_0x1afc7c)[_0xa529('0x19')](_0x41a708);}return null;};}function patchUpdates(_0x1580d4){return function(_0x502ea1){try{jsonpatch[_0xa529('0x1e')](_0x502ea1,_0x1580d4,!![]);}catch(_0x150b6b){return BPromise[_0xa529('0x1f')](_0x150b6b);}return _0x502ea1[_0xa529('0x20')]();};}function saveUpdates(_0x24dac2,_0x5cd9c0){return function(_0x5c6ecc){if(_0x5c6ecc){return _0x5c6ecc['update'](_0x24dac2)[_0xa529('0x21')](function(_0x1bb7bc){return _0x1bb7bc;});}return null;};}function removeEntity(_0x33ce95,_0x39c0d3){return function(_0x4170d2){if(_0x4170d2){return _0x4170d2['destroy']()[_0xa529('0x21')](function(){_0x33ce95[_0xa529('0x18')](0xcc)[_0xa529('0x22')]();});}};}function handleEntityNotFound(_0x19cbe,_0x1800e7){return function(_0x391760){if(!_0x391760){_0x19cbe[_0xa529('0x17')](0x194);}return _0x391760;};}function handleError(_0x5ddbef,_0x5d5983){_0x5d5983=_0x5d5983||0x1f4;return function(_0x2c6921){logger[_0xa529('0x23')](_0x2c6921[_0xa529('0x24')]);if(_0x2c6921[_0xa529('0x25')]){delete _0x2c6921[_0xa529('0x25')];}_0x5ddbef[_0xa529('0x18')](_0x5d5983)['send'](_0x2c6921);};}exports[_0xa529('0x26')]=function(_0x4f117b,_0x2243d2){var _0x215f5e={},_0x228c7e={},_0x90852a={'count':0x0,'rows':[]};var _0x447e0f=_[_0xa529('0x27')](db[_0xa529('0x28')]['rawAttributes'],function(_0x48ca5a){return{'name':_0x48ca5a[_0xa529('0x29')],'type':_0x48ca5a[_0xa529('0x2a')][_0xa529('0x2b')]};});_0x228c7e[_0xa529('0x2c')]=_[_0xa529('0x27')](_0x447e0f,_0xa529('0x25'));_0x228c7e[_0xa529('0x2d')]=_[_0xa529('0x2e')](_0x4f117b[_0xa529('0x2d')]);_0x228c7e[_0xa529('0x2f')]=_[_0xa529('0x30')](_0x228c7e['model'],_0x228c7e[_0xa529('0x2d')]);_0x215f5e['attributes']=_[_0xa529('0x30')](_0x228c7e[_0xa529('0x2c')],qs[_0xa529('0x31')](_0x4f117b[_0xa529('0x2d')]['fields']));_0x215f5e[_0xa529('0x32')]=_0x215f5e[_0xa529('0x32')]['length']?_0x215f5e['attributes']:_0x228c7e['model'];if(!_0x4f117b[_0xa529('0x2d')][_0xa529('0x33')](_0xa529('0x34'))){_0x215f5e[_0xa529('0x1a')]=qs[_0xa529('0x1a')](_0x4f117b['query'][_0xa529('0x1a')]);_0x215f5e[_0xa529('0x1c')]=qs['offset'](_0x4f117b[_0xa529('0x2d')]['offset']);}_0x215f5e['order']=qs[_0xa529('0x35')](_0x4f117b[_0xa529('0x2d')]['sort']);_0x215f5e['where']=qs[_0xa529('0x2f')](_['pick'](_0x4f117b[_0xa529('0x2d')],_0x228c7e['filters']),_0x447e0f);if(_0x4f117b['query'][_0xa529('0x36')]){_0x215f5e[_0xa529('0x37')]=_[_0xa529('0x38')](_0x215f5e[_0xa529('0x37')],{'$or':_[_0xa529('0x27')](_0x447e0f,function(_0x3bee04){if(_0x3bee04[_0xa529('0x2a')]!==_0xa529('0x39')){var _0x492f7d={};_0x492f7d[_0x3bee04[_0xa529('0x25')]]={'$like':'%'+_0x4f117b[_0xa529('0x2d')][_0xa529('0x36')]+'%'};return _0x492f7d;}})});}_0x215f5e=_['merge']({},_0x215f5e,_0x4f117b[_0xa529('0x3a')]);var _0x40735e={'where':_0x215f5e[_0xa529('0x37')]};return db[_0xa529('0x28')][_0xa529('0x1b')](_0x40735e)[_0xa529('0x21')](function(_0x4b6e1f){_0x90852a[_0xa529('0x1b')]=_0x4b6e1f;if(_0x4f117b[_0xa529('0x2d')]['includeAll']){_0x215f5e[_0xa529('0x3b')]=[{'all':!![]}];}return db[_0xa529('0x28')]['findAll'](_0x215f5e);})[_0xa529('0x21')](function(_0x16ec9f){_0x90852a[_0xa529('0x3c')]=_0x16ec9f;return _0x90852a;})[_0xa529('0x21')](respondWithFilteredResult(_0x2243d2,_0x215f5e))[_0xa529('0x3d')](handleError(_0x2243d2,null));};exports['show']=function(_0x4931d4,_0x28418e){var _0x2ca541={'raw':!![],'where':{'id':_0x4931d4['params']['id']}},_0x50bcff={};_0x50bcff[_0xa529('0x2c')]=_[_0xa529('0x2e')](db['CmHopperBlack'][_0xa529('0x3e')]);_0x50bcff[_0xa529('0x2d')]=_[_0xa529('0x2e')](_0x4931d4[_0xa529('0x2d')]);_0x50bcff['filters']=_[_0xa529('0x30')](_0x50bcff[_0xa529('0x2c')],_0x50bcff[_0xa529('0x2d')]);_0x2ca541[_0xa529('0x32')]=_['intersection'](_0x50bcff[_0xa529('0x2c')],qs[_0xa529('0x31')](_0x4931d4['query'][_0xa529('0x31')]));_0x2ca541['attributes']=_0x2ca541['attributes']['length']?_0x2ca541['attributes']:_0x50bcff[_0xa529('0x2c')];if(_0x4931d4[_0xa529('0x2d')][_0xa529('0x3f')]){_0x2ca541[_0xa529('0x3b')]=[{'all':!![]}];}_0x2ca541=_[_0xa529('0x38')]({},_0x2ca541,_0x4931d4[_0xa529('0x3a')]);return db[_0xa529('0x28')][_0xa529('0x40')](_0x2ca541)[_0xa529('0x21')](handleEntityNotFound(_0x28418e,null))[_0xa529('0x21')](respondWithResult(_0x28418e,null))[_0xa529('0x3d')](handleError(_0x28418e,null));};exports[_0xa529('0x41')]=function(_0x48de43,_0x59fb2f){if(_0x48de43[_0xa529('0x42')]['id']){delete _0x48de43[_0xa529('0x42')]['id'];}return db[_0xa529('0x28')][_0xa529('0x40')]({'where':{'id':_0x48de43[_0xa529('0x43')]['id']}})[_0xa529('0x21')](handleEntityNotFound(_0x59fb2f,null))['then'](saveUpdates(_0x48de43[_0xa529('0x42')],null))[_0xa529('0x21')](respondWithResult(_0x59fb2f,null))[_0xa529('0x3d')](handleError(_0x59fb2f,null));};exports[_0xa529('0x44')]=function(_0x3e71bb,_0x3e27af){return db['CmHopperBlack'][_0xa529('0x40')]({'where':{'id':_0x3e71bb[_0xa529('0x43')]['id']}})['then'](handleEntityNotFound(_0x3e27af,null))[_0xa529('0x21')](removeEntity(_0x3e27af,null))[_0xa529('0x3d')](handleError(_0x3e27af,null));};exports['describe']=function(_0x4d7938,_0x96ca54){return db[_0xa529('0x28')][_0xa529('0x45')]()[_0xa529('0x21')](respondWithResult(_0x96ca54,null))[_0xa529('0x3d')](handleError(_0x96ca54,null));};