Built motion from commit 19a84241.|2.5.34
[motion2.git] / server / api / openchannelApplication / openchannelApplication.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 _0x5ce3=['create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','sendStatus','error','name','send','OpenchannelApplication','rawAttributes','fieldName','key','map','query','keys','intersection','model','fields','attributes','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','params','find'];(function(_0x501510,_0x61caa9){var _0x1e6ee5=function(_0x32845b){while(--_0x32845b){_0x501510['push'](_0x501510['shift']());}};_0x1e6ee5(++_0x61caa9);}(_0x5ce3,0x12e));var _0x35ce=function(_0x1602ef,_0x447aba){_0x1602ef=_0x1602ef-0x0;var _0x5870ee=_0x5ce3[_0x1602ef];return _0x5870ee;};'use strict';var emlformat=require(_0x35ce('0x0'));var rimraf=require(_0x35ce('0x1'));var zipdir=require(_0x35ce('0x2'));var jsonpatch=require(_0x35ce('0x3'));var rp=require(_0x35ce('0x4'));var moment=require(_0x35ce('0x5'));var BPromise=require(_0x35ce('0x6'));var Mustache=require(_0x35ce('0x7'));var util=require(_0x35ce('0x8'));var path=require('path');var sox=require(_0x35ce('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x35ce('0xa'));var squel=require(_0x35ce('0xb'));var crypto=require(_0x35ce('0xc'));var jsforce=require(_0x35ce('0xd'));var deskjs=require(_0x35ce('0xe'));var toCsv=require('to-csv');var querystring=require(_0x35ce('0xf'));var Papa=require('papaparse');var Redis=require(_0x35ce('0x10'));var authService=require(_0x35ce('0x11'));var qs=require(_0x35ce('0x12'));var as=require(_0x35ce('0x13'));var hardwareService=require(_0x35ce('0x14'));var logger=require(_0x35ce('0x15'))(_0x35ce('0x16'));var utils=require(_0x35ce('0x17'));var config=require(_0x35ce('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0x35ce('0x19'))['db'];function respondWithStatusCode(_0x81b135,_0x20d092){_0x20d092=_0x20d092||0xcc;return function(_0x39590a){if(_0x39590a){return _0x81b135['sendStatus'](_0x20d092);}return _0x81b135['status'](_0x20d092)[_0x35ce('0x1a')]();};}function respondWithResult(_0x2ef35c,_0x4e8558){_0x4e8558=_0x4e8558||0xc8;return function(_0x251699){if(_0x251699){return _0x2ef35c[_0x35ce('0x1b')](_0x4e8558)[_0x35ce('0x1c')](_0x251699);}};}function respondWithFilteredResult(_0x27fa3c,_0x19e5c8){return function(_0x291545){if(_0x291545){var _0xc38d2a=typeof _0x19e5c8[_0x35ce('0x1d')]===_0x35ce('0x1e')&&typeof _0x19e5c8[_0x35ce('0x1f')]===_0x35ce('0x1e');var _0x272acf=_0x291545[_0x35ce('0x20')];var _0x376c46=_0xc38d2a?0x0:_0x19e5c8[_0x35ce('0x1d')];var _0x8623b0=_0xc38d2a?_0x291545[_0x35ce('0x20')]:_0x19e5c8[_0x35ce('0x1d')]+_0x19e5c8[_0x35ce('0x1f')];var _0x30f609;if(_0x8623b0>=_0x272acf){_0x8623b0=_0x272acf;_0x30f609=0xc8;}else{_0x30f609=0xce;}_0x27fa3c[_0x35ce('0x1b')](_0x30f609);return _0x27fa3c[_0x35ce('0x21')](_0x35ce('0x22'),_0x376c46+'-'+_0x8623b0+'/'+_0x272acf)['json'](_0x291545);}return null;};}function patchUpdates(_0x532c7d){return function(_0x2d44e0){try{jsonpatch[_0x35ce('0x23')](_0x2d44e0,_0x532c7d,!![]);}catch(_0x150101){return BPromise[_0x35ce('0x24')](_0x150101);}return _0x2d44e0[_0x35ce('0x25')]();};}function saveUpdates(_0x4c8074,_0x5ccaae){return function(_0x4d911d){if(_0x4d911d){return _0x4d911d[_0x35ce('0x26')](_0x4c8074)[_0x35ce('0x27')](function(_0x392824){return _0x392824;});}return null;};}function removeEntity(_0x51db7a,_0x3aa4c5){return function(_0x3bc772){if(_0x3bc772){return _0x3bc772[_0x35ce('0x28')]()[_0x35ce('0x27')](function(){_0x51db7a[_0x35ce('0x1b')](0xcc)[_0x35ce('0x1a')]();});}};}function handleEntityNotFound(_0x24a67d,_0x2e57d5){return function(_0x5cd9d3){if(!_0x5cd9d3){_0x24a67d[_0x35ce('0x29')](0x194);}return _0x5cd9d3;};}function handleError(_0x36462d,_0x39e634){_0x39e634=_0x39e634||0x1f4;return function(_0x49b808){logger[_0x35ce('0x2a')](_0x49b808['stack']);if(_0x49b808[_0x35ce('0x2b')]){delete _0x49b808[_0x35ce('0x2b')];}_0x36462d[_0x35ce('0x1b')](_0x39e634)[_0x35ce('0x2c')](_0x49b808);};}exports['index']=function(_0x359a46,_0x5c5268){var _0x28d899={},_0x2fa77f={},_0xcd3e13={'count':0x0,'rows':[]};var _0x5468fe=_['map'](db[_0x35ce('0x2d')][_0x35ce('0x2e')],function(_0x277331){return{'name':_0x277331[_0x35ce('0x2f')],'type':_0x277331['type'][_0x35ce('0x30')]};});_0x2fa77f['model']=_[_0x35ce('0x31')](_0x5468fe,_0x35ce('0x2b'));_0x2fa77f[_0x35ce('0x32')]=_[_0x35ce('0x33')](_0x359a46[_0x35ce('0x32')]);_0x2fa77f['filters']=_[_0x35ce('0x34')](_0x2fa77f['model'],_0x2fa77f[_0x35ce('0x32')]);_0x28d899['attributes']=_[_0x35ce('0x34')](_0x2fa77f[_0x35ce('0x35')],qs['fields'](_0x359a46[_0x35ce('0x32')][_0x35ce('0x36')]));_0x28d899[_0x35ce('0x37')]=_0x28d899[_0x35ce('0x37')]['length']?_0x28d899[_0x35ce('0x37')]:_0x2fa77f[_0x35ce('0x35')];if(!_0x359a46[_0x35ce('0x32')][_0x35ce('0x38')](_0x35ce('0x39'))){_0x28d899[_0x35ce('0x1f')]=qs[_0x35ce('0x1f')](_0x359a46[_0x35ce('0x32')][_0x35ce('0x1f')]);_0x28d899[_0x35ce('0x1d')]=qs[_0x35ce('0x1d')](_0x359a46[_0x35ce('0x32')][_0x35ce('0x1d')]);}_0x28d899[_0x35ce('0x3a')]=qs[_0x35ce('0x3b')](_0x359a46[_0x35ce('0x32')][_0x35ce('0x3b')]);_0x28d899[_0x35ce('0x3c')]=qs[_0x35ce('0x3d')](_[_0x35ce('0x3e')](_0x359a46[_0x35ce('0x32')],_0x2fa77f[_0x35ce('0x3d')]),_0x5468fe);if(_0x359a46[_0x35ce('0x32')]['filter']){_0x28d899['where']=_[_0x35ce('0x3f')](_0x28d899['where'],{'$or':_[_0x35ce('0x31')](_0x5468fe,function(_0x337ad2){if(_0x337ad2['type']!==_0x35ce('0x40')){var _0x7d5391={};_0x7d5391[_0x337ad2[_0x35ce('0x2b')]]={'$like':'%'+_0x359a46[_0x35ce('0x32')]['filter']+'%'};return _0x7d5391;}})});}_0x28d899=_[_0x35ce('0x3f')]({},_0x28d899,_0x359a46[_0x35ce('0x41')]);var _0xa5528={'where':_0x28d899[_0x35ce('0x3c')]};return db[_0x35ce('0x2d')][_0x35ce('0x20')](_0xa5528)[_0x35ce('0x27')](function(_0x3e8497){_0xcd3e13[_0x35ce('0x20')]=_0x3e8497;if(_0x359a46[_0x35ce('0x32')][_0x35ce('0x42')]){_0x28d899[_0x35ce('0x43')]=[{'all':!![]}];}return db[_0x35ce('0x2d')][_0x35ce('0x44')](_0x28d899);})[_0x35ce('0x27')](function(_0x5bbd0e){_0xcd3e13['rows']=_0x5bbd0e;return _0xcd3e13;})[_0x35ce('0x27')](respondWithFilteredResult(_0x5c5268,_0x28d899))[_0x35ce('0x45')](handleError(_0x5c5268,null));};exports[_0x35ce('0x46')]=function(_0x4a30bd,_0x248e7b){var _0x35497b={'raw':!![],'where':{'id':_0x4a30bd[_0x35ce('0x47')]['id']}},_0x3be8ca={};_0x3be8ca[_0x35ce('0x35')]=_['keys'](db[_0x35ce('0x2d')][_0x35ce('0x2e')]);_0x3be8ca[_0x35ce('0x32')]=_[_0x35ce('0x33')](_0x4a30bd[_0x35ce('0x32')]);_0x3be8ca[_0x35ce('0x3d')]=_[_0x35ce('0x34')](_0x3be8ca[_0x35ce('0x35')],_0x3be8ca[_0x35ce('0x32')]);_0x35497b[_0x35ce('0x37')]=_[_0x35ce('0x34')](_0x3be8ca[_0x35ce('0x35')],qs['fields'](_0x4a30bd[_0x35ce('0x32')][_0x35ce('0x36')]));_0x35497b[_0x35ce('0x37')]=_0x35497b[_0x35ce('0x37')]['length']?_0x35497b[_0x35ce('0x37')]:_0x3be8ca[_0x35ce('0x35')];if(_0x4a30bd[_0x35ce('0x32')][_0x35ce('0x42')]){_0x35497b[_0x35ce('0x43')]=[{'all':!![]}];}_0x35497b=_[_0x35ce('0x3f')]({},_0x35497b,_0x4a30bd[_0x35ce('0x41')]);return db[_0x35ce('0x2d')][_0x35ce('0x48')](_0x35497b)[_0x35ce('0x27')](handleEntityNotFound(_0x248e7b,null))[_0x35ce('0x27')](respondWithResult(_0x248e7b,null))['catch'](handleError(_0x248e7b,null));};exports[_0x35ce('0x49')]=function(_0x224106,_0x36ff51){return db[_0x35ce('0x2d')][_0x35ce('0x49')](_0x224106[_0x35ce('0x4a')],{})[_0x35ce('0x27')](respondWithResult(_0x36ff51,0xc9))[_0x35ce('0x45')](handleError(_0x36ff51,null));};exports[_0x35ce('0x26')]=function(_0x495734,_0x3e50ed){if(_0x495734[_0x35ce('0x4a')]['id']){delete _0x495734['body']['id'];}return db[_0x35ce('0x2d')][_0x35ce('0x48')]({'where':{'id':_0x495734[_0x35ce('0x47')]['id']}})['then'](handleEntityNotFound(_0x3e50ed,null))[_0x35ce('0x27')](saveUpdates(_0x495734['body'],null))['then'](respondWithResult(_0x3e50ed,null))[_0x35ce('0x45')](handleError(_0x3e50ed,null));};exports['destroy']=function(_0xafae17,_0x1c31eb){return db[_0x35ce('0x2d')][_0x35ce('0x48')]({'where':{'id':_0xafae17[_0x35ce('0x47')]['id']}})[_0x35ce('0x27')](handleEntityNotFound(_0x1c31eb,null))['then'](removeEntity(_0x1c31eb,null))[_0x35ce('0x45')](handleError(_0x1c31eb,null));};