Built motion from commit 19a84241.|2.5.34
[motion2.git] / server / api / chatApplication / chatApplication.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 _0x9656=['../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','save','then','destroy','error','name','show','params','model','keys','rawAttributes','query','intersection','fields','attributes','length','includeAll','include','merge','options','ChatApplication','find','catch','update','body','eml-format','zip-dir','fast-json-patch','moment','path','to-csv','fs-extra','squel','crypto','querystring','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0x9656,0x15e));var _0x6965=function(_0x10b0c7,_0x2d1870){_0x10b0c7=_0x10b0c7-0x0;var _0x281443=_0x9656[_0x10b0c7];return _0x281443;};'use strict';var emlformat=require(_0x6965('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x6965('0x1'));var jsonpatch=require(_0x6965('0x2'));var rp=require('request-promise');var moment=require(_0x6965('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x6965('0x4'));var sox=require('sox');var csv=require(_0x6965('0x5'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x6965('0x6'));var _=require('lodash');var squel=require(_0x6965('0x7'));var crypto=require(_0x6965('0x8'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x6965('0x5'));var querystring=require(_0x6965('0x9'));var Papa=require(_0x6965('0xa'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x6965('0xb'));var hardwareService=require(_0x6965('0xc'));var logger=require(_0x6965('0xd'))('api');var utils=require(_0x6965('0xe'));var config=require(_0x6965('0xf'));var licenseUtil=require(_0x6965('0x10'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x48a1d0,_0x396c0a){_0x396c0a=_0x396c0a||0xcc;return function(_0x585d14){if(_0x585d14){return _0x48a1d0[_0x6965('0x11')](_0x396c0a);}return _0x48a1d0[_0x6965('0x12')](_0x396c0a)[_0x6965('0x13')]();};}function respondWithResult(_0x509f01,_0x2d52d5){_0x2d52d5=_0x2d52d5||0xc8;return function(_0x209912){if(_0x209912){return _0x509f01[_0x6965('0x12')](_0x2d52d5)[_0x6965('0x14')](_0x209912);}};}function respondWithFilteredResult(_0x3777b1,_0xd759ba){return function(_0x35e280){if(_0x35e280){var _0x40e4f3=typeof _0xd759ba[_0x6965('0x15')]===_0x6965('0x16')&&typeof _0xd759ba[_0x6965('0x17')]==='undefined';var _0x17f50e=_0x35e280[_0x6965('0x18')];var _0xc31577=_0x40e4f3?0x0:_0xd759ba['offset'];var _0x31e3f5=_0x40e4f3?_0x35e280[_0x6965('0x18')]:_0xd759ba[_0x6965('0x15')]+_0xd759ba[_0x6965('0x17')];var _0x130eff;if(_0x31e3f5>=_0x17f50e){_0x31e3f5=_0x17f50e;_0x130eff=0xc8;}else{_0x130eff=0xce;}_0x3777b1['status'](_0x130eff);return _0x3777b1[_0x6965('0x19')](_0x6965('0x1a'),_0xc31577+'-'+_0x31e3f5+'/'+_0x17f50e)[_0x6965('0x14')](_0x35e280);}return null;};}function patchUpdates(_0x263adc){return function(_0x5b9561){try{jsonpatch[_0x6965('0x1b')](_0x5b9561,_0x263adc,!![]);}catch(_0x414498){return BPromise['reject'](_0x414498);}return _0x5b9561[_0x6965('0x1c')]();};}function saveUpdates(_0x213e2c,_0x19148a){return function(_0x4e5015){if(_0x4e5015){return _0x4e5015['update'](_0x213e2c)[_0x6965('0x1d')](function(_0x38fd5b){return _0x38fd5b;});}return null;};}function removeEntity(_0x416ae4,_0x47d18b){return function(_0x175585){if(_0x175585){return _0x175585[_0x6965('0x1e')]()[_0x6965('0x1d')](function(){_0x416ae4[_0x6965('0x12')](0xcc)[_0x6965('0x13')]();});}};}function handleEntityNotFound(_0x1726bb,_0x3a0845){return function(_0x3568d5){if(!_0x3568d5){_0x1726bb[_0x6965('0x11')](0x194);}return _0x3568d5;};}function handleError(_0x77b7ac,_0x14cc29){_0x14cc29=_0x14cc29||0x1f4;return function(_0x3a8f78){logger[_0x6965('0x1f')](_0x3a8f78['stack']);if(_0x3a8f78[_0x6965('0x20')]){delete _0x3a8f78['name'];}_0x77b7ac[_0x6965('0x12')](_0x14cc29)['send'](_0x3a8f78);};}exports[_0x6965('0x21')]=function(_0x1ae67e,_0x35373c){var _0x538eeb={'raw':!![],'where':{'id':_0x1ae67e[_0x6965('0x22')]['id']}},_0x28715c={};_0x28715c[_0x6965('0x23')]=_[_0x6965('0x24')](db['ChatApplication'][_0x6965('0x25')]);_0x28715c[_0x6965('0x26')]=_[_0x6965('0x24')](_0x1ae67e[_0x6965('0x26')]);_0x28715c['filters']=_[_0x6965('0x27')](_0x28715c['model'],_0x28715c['query']);_0x538eeb['attributes']=_['intersection'](_0x28715c['model'],qs[_0x6965('0x28')](_0x1ae67e['query'][_0x6965('0x28')]));_0x538eeb[_0x6965('0x29')]=_0x538eeb['attributes'][_0x6965('0x2a')]?_0x538eeb['attributes']:_0x28715c[_0x6965('0x23')];if(_0x1ae67e[_0x6965('0x26')][_0x6965('0x2b')]){_0x538eeb[_0x6965('0x2c')]=[{'all':!![]}];}_0x538eeb=_[_0x6965('0x2d')]({},_0x538eeb,_0x1ae67e[_0x6965('0x2e')]);return db[_0x6965('0x2f')][_0x6965('0x30')](_0x538eeb)['then'](handleEntityNotFound(_0x35373c,null))[_0x6965('0x1d')](respondWithResult(_0x35373c,null))[_0x6965('0x31')](handleError(_0x35373c,null));};exports[_0x6965('0x32')]=function(_0x82c811,_0x5c6372){if(_0x82c811[_0x6965('0x33')]['id']){delete _0x82c811['body']['id'];}return db['ChatApplication'][_0x6965('0x30')]({'where':{'id':_0x82c811[_0x6965('0x22')]['id']}})[_0x6965('0x1d')](handleEntityNotFound(_0x5c6372,null))[_0x6965('0x1d')](saveUpdates(_0x82c811['body'],null))[_0x6965('0x1d')](respondWithResult(_0x5c6372,null))[_0x6965('0x31')](handleError(_0x5c6372,null));};exports['destroy']=function(_0x1d7a3d,_0x95ee61){return db[_0x6965('0x2f')][_0x6965('0x30')]({'where':{'id':_0x1d7a3d[_0x6965('0x22')]['id']}})[_0x6965('0x1d')](handleEntityNotFound(_0x95ee61,null))['then'](removeEntity(_0x95ee61,null))['catch'](handleError(_0x95ee61,null));};