Built motion from commit 0900f080.|2.5.45
[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 _0x65ef=['offset','limit','undefined','count','set','Content-Range','reject','save','update','destroy','then','sendStatus','error','name','send','index','map','OpenchannelApplication','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','rows','catch','show','params','length','include','find','create','body','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','json'];(function(_0x1acfb9,_0x52bc80){var _0x1416e3=function(_0x1909d1){while(--_0x1909d1){_0x1acfb9['push'](_0x1acfb9['shift']());}};_0x1416e3(++_0x52bc80);}(_0x65ef,0x10b));var _0xf65e=function(_0x2170fd,_0x471b22){_0x2170fd=_0x2170fd-0x0;var _0x169314=_0x65ef[_0x2170fd];return _0x169314;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xf65e('0x0'));var zipdir=require(_0xf65e('0x1'));var jsonpatch=require(_0xf65e('0x2'));var rp=require(_0xf65e('0x3'));var moment=require(_0xf65e('0x4'));var BPromise=require(_0xf65e('0x5'));var Mustache=require(_0xf65e('0x6'));var util=require(_0xf65e('0x7'));var path=require('path');var sox=require(_0xf65e('0x8'));var csv=require(_0xf65e('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xf65e('0xa'));var squel=require(_0xf65e('0xb'));var crypto=require(_0xf65e('0xc'));var jsforce=require(_0xf65e('0xd'));var deskjs=require(_0xf65e('0xe'));var toCsv=require(_0xf65e('0x9'));var querystring=require(_0xf65e('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xf65e('0x10'));var qs=require(_0xf65e('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf65e('0x12'));var logger=require('../../config/logger')('api');var utils=require(_0xf65e('0x13'));var config=require(_0xf65e('0x14'));var licenseUtil=require(_0xf65e('0x15'));var db=require(_0xf65e('0x16'))['db'];function respondWithStatusCode(_0x335e1c,_0x18e00e){_0x18e00e=_0x18e00e||0xcc;return function(_0x40f441){if(_0x40f441){return _0x335e1c['sendStatus'](_0x18e00e);}return _0x335e1c[_0xf65e('0x17')](_0x18e00e)['end']();};}function respondWithResult(_0x5c268b,_0x590913){_0x590913=_0x590913||0xc8;return function(_0x2976f9){if(_0x2976f9){return _0x5c268b[_0xf65e('0x17')](_0x590913)[_0xf65e('0x18')](_0x2976f9);}};}function respondWithFilteredResult(_0x4492c2,_0x4db927){return function(_0x2fe71c){if(_0x2fe71c){var _0x7ffa6c=typeof _0x4db927[_0xf65e('0x19')]==='undefined'&&typeof _0x4db927[_0xf65e('0x1a')]===_0xf65e('0x1b');var _0x3b2fbd=_0x2fe71c[_0xf65e('0x1c')];var _0x3b3005=_0x7ffa6c?0x0:_0x4db927[_0xf65e('0x19')];var _0x3a9b95=_0x7ffa6c?_0x2fe71c[_0xf65e('0x1c')]:_0x4db927[_0xf65e('0x19')]+_0x4db927['limit'];var _0x2656a4;if(_0x3a9b95>=_0x3b2fbd){_0x3a9b95=_0x3b2fbd;_0x2656a4=0xc8;}else{_0x2656a4=0xce;}_0x4492c2[_0xf65e('0x17')](_0x2656a4);return _0x4492c2[_0xf65e('0x1d')](_0xf65e('0x1e'),_0x3b3005+'-'+_0x3a9b95+'/'+_0x3b2fbd)[_0xf65e('0x18')](_0x2fe71c);}return null;};}function patchUpdates(_0x42cfe7){return function(_0x33c342){try{jsonpatch['apply'](_0x33c342,_0x42cfe7,!![]);}catch(_0x33bcb5){return BPromise[_0xf65e('0x1f')](_0x33bcb5);}return _0x33c342[_0xf65e('0x20')]();};}function saveUpdates(_0x21e557,_0x2504f9){return function(_0x34860d){if(_0x34860d){return _0x34860d[_0xf65e('0x21')](_0x21e557)['then'](function(_0x170862){return _0x170862;});}return null;};}function removeEntity(_0x4bb6af,_0x322dd){return function(_0x5c276f){if(_0x5c276f){return _0x5c276f[_0xf65e('0x22')]()[_0xf65e('0x23')](function(){_0x4bb6af[_0xf65e('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x5f55bd,_0x14def6){return function(_0x3e50e1){if(!_0x3e50e1){_0x5f55bd[_0xf65e('0x24')](0x194);}return _0x3e50e1;};}function handleError(_0x2c2409,_0x5df028){_0x5df028=_0x5df028||0x1f4;return function(_0x3a3f6d){logger[_0xf65e('0x25')](_0x3a3f6d['stack']);if(_0x3a3f6d['name']){delete _0x3a3f6d[_0xf65e('0x26')];}_0x2c2409[_0xf65e('0x17')](_0x5df028)[_0xf65e('0x27')](_0x3a3f6d);};}exports[_0xf65e('0x28')]=function(_0x2904b7,_0x38f64e){var _0x9108ca={},_0x4fc222={},_0x324e8c={'count':0x0,'rows':[]};var _0xe96657=_[_0xf65e('0x29')](db[_0xf65e('0x2a')][_0xf65e('0x2b')],function(_0x219694){return{'name':_0x219694[_0xf65e('0x2c')],'type':_0x219694[_0xf65e('0x2d')][_0xf65e('0x2e')]};});_0x4fc222['model']=_[_0xf65e('0x29')](_0xe96657,_0xf65e('0x26'));_0x4fc222[_0xf65e('0x2f')]=_[_0xf65e('0x30')](_0x2904b7[_0xf65e('0x2f')]);_0x4fc222[_0xf65e('0x31')]=_[_0xf65e('0x32')](_0x4fc222[_0xf65e('0x33')],_0x4fc222[_0xf65e('0x2f')]);_0x9108ca[_0xf65e('0x34')]=_[_0xf65e('0x32')](_0x4fc222[_0xf65e('0x33')],qs['fields'](_0x2904b7[_0xf65e('0x2f')][_0xf65e('0x35')]));_0x9108ca[_0xf65e('0x34')]=_0x9108ca[_0xf65e('0x34')]['length']?_0x9108ca['attributes']:_0x4fc222[_0xf65e('0x33')];if(!_0x2904b7[_0xf65e('0x2f')][_0xf65e('0x36')](_0xf65e('0x37'))){_0x9108ca[_0xf65e('0x1a')]=qs[_0xf65e('0x1a')](_0x2904b7[_0xf65e('0x2f')][_0xf65e('0x1a')]);_0x9108ca[_0xf65e('0x19')]=qs['offset'](_0x2904b7['query'][_0xf65e('0x19')]);}_0x9108ca[_0xf65e('0x38')]=qs[_0xf65e('0x39')](_0x2904b7['query'][_0xf65e('0x39')]);_0x9108ca[_0xf65e('0x3a')]=qs[_0xf65e('0x31')](_['pick'](_0x2904b7[_0xf65e('0x2f')],_0x4fc222[_0xf65e('0x31')]),_0xe96657);if(_0x2904b7[_0xf65e('0x2f')][_0xf65e('0x3b')]){_0x9108ca['where']=_[_0xf65e('0x3c')](_0x9108ca['where'],{'$or':_[_0xf65e('0x29')](_0xe96657,function(_0x139163){if(_0x139163[_0xf65e('0x2d')]!==_0xf65e('0x3d')){var _0x262d97={};_0x262d97[_0x139163[_0xf65e('0x26')]]={'$like':'%'+_0x2904b7[_0xf65e('0x2f')][_0xf65e('0x3b')]+'%'};return _0x262d97;}})});}_0x9108ca=_[_0xf65e('0x3c')]({},_0x9108ca,_0x2904b7[_0xf65e('0x3e')]);var _0x189b8c={'where':_0x9108ca[_0xf65e('0x3a')]};return db[_0xf65e('0x2a')][_0xf65e('0x1c')](_0x189b8c)[_0xf65e('0x23')](function(_0x2ee7db){_0x324e8c[_0xf65e('0x1c')]=_0x2ee7db;if(_0x2904b7[_0xf65e('0x2f')][_0xf65e('0x3f')]){_0x9108ca['include']=[{'all':!![]}];}return db[_0xf65e('0x2a')]['findAll'](_0x9108ca);})[_0xf65e('0x23')](function(_0x4fd2cb){_0x324e8c[_0xf65e('0x40')]=_0x4fd2cb;return _0x324e8c;})[_0xf65e('0x23')](respondWithFilteredResult(_0x38f64e,_0x9108ca))[_0xf65e('0x41')](handleError(_0x38f64e,null));};exports[_0xf65e('0x42')]=function(_0x4ad97d,_0x56d48b){var _0x46d3d6={'raw':!![],'where':{'id':_0x4ad97d[_0xf65e('0x43')]['id']}},_0x641b69={};_0x641b69[_0xf65e('0x33')]=_[_0xf65e('0x30')](db[_0xf65e('0x2a')]['rawAttributes']);_0x641b69[_0xf65e('0x2f')]=_[_0xf65e('0x30')](_0x4ad97d[_0xf65e('0x2f')]);_0x641b69[_0xf65e('0x31')]=_[_0xf65e('0x32')](_0x641b69[_0xf65e('0x33')],_0x641b69[_0xf65e('0x2f')]);_0x46d3d6['attributes']=_[_0xf65e('0x32')](_0x641b69[_0xf65e('0x33')],qs[_0xf65e('0x35')](_0x4ad97d[_0xf65e('0x2f')]['fields']));_0x46d3d6[_0xf65e('0x34')]=_0x46d3d6[_0xf65e('0x34')][_0xf65e('0x44')]?_0x46d3d6['attributes']:_0x641b69[_0xf65e('0x33')];if(_0x4ad97d[_0xf65e('0x2f')][_0xf65e('0x3f')]){_0x46d3d6[_0xf65e('0x45')]=[{'all':!![]}];}_0x46d3d6=_[_0xf65e('0x3c')]({},_0x46d3d6,_0x4ad97d['options']);return db[_0xf65e('0x2a')][_0xf65e('0x46')](_0x46d3d6)['then'](handleEntityNotFound(_0x56d48b,null))[_0xf65e('0x23')](respondWithResult(_0x56d48b,null))['catch'](handleError(_0x56d48b,null));};exports[_0xf65e('0x47')]=function(_0x298053,_0x2ca8cd){return db[_0xf65e('0x2a')][_0xf65e('0x47')](_0x298053[_0xf65e('0x48')],{})[_0xf65e('0x23')](respondWithResult(_0x2ca8cd,0xc9))[_0xf65e('0x41')](handleError(_0x2ca8cd,null));};exports['update']=function(_0x4265bf,_0x5762a8){if(_0x4265bf[_0xf65e('0x48')]['id']){delete _0x4265bf['body']['id'];}return db[_0xf65e('0x2a')][_0xf65e('0x46')]({'where':{'id':_0x4265bf['params']['id']}})[_0xf65e('0x23')](handleEntityNotFound(_0x5762a8,null))[_0xf65e('0x23')](saveUpdates(_0x4265bf[_0xf65e('0x48')],null))[_0xf65e('0x23')](respondWithResult(_0x5762a8,null))['catch'](handleError(_0x5762a8,null));};exports['destroy']=function(_0x391d45,_0x203f9f){return db[_0xf65e('0x2a')][_0xf65e('0x46')]({'where':{'id':_0x391d45['params']['id']}})[_0xf65e('0x23')](handleEntityNotFound(_0x203f9f,null))[_0xf65e('0x23')](removeEntity(_0x203f9f,null))[_0xf65e('0x41')](handleError(_0x203f9f,null));};