Built motion from commit 775e2a94.|2.6.3
[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 _0x0901=['model','keys','ChatApplication','rawAttributes','query','filters','intersection','attributes','fields','length','includeAll','include','merge','options','find','then','catch','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','desk.js','querystring','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','reject','save','update','stack','name','send','show','params'];(function(_0x486be1,_0x3fdf5e){var _0x586fa1=function(_0x18ba96){while(--_0x18ba96){_0x486be1['push'](_0x486be1['shift']());}};_0x586fa1(++_0x3fdf5e);}(_0x0901,0x134));var _0x1090=function(_0xf352d1,_0x2f4579){_0xf352d1=_0xf352d1-0x0;var _0x556ac9=_0x0901[_0xf352d1];return _0x556ac9;};'use strict';var emlformat=require(_0x1090('0x0'));var rimraf=require(_0x1090('0x1'));var zipdir=require(_0x1090('0x2'));var jsonpatch=require(_0x1090('0x3'));var rp=require(_0x1090('0x4'));var moment=require(_0x1090('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x1090('0x6'));var path=require(_0x1090('0x7'));var sox=require(_0x1090('0x8'));var csv=require(_0x1090('0x9'));var ejs=require(_0x1090('0xa'));var fs=require('fs');var fs_extra=require(_0x1090('0xb'));var _=require('lodash');var squel=require(_0x1090('0xc'));var crypto=require(_0x1090('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x1090('0xe'));var toCsv=require(_0x1090('0x9'));var querystring=require(_0x1090('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x1090('0x10'));var as=require(_0x1090('0x11'));var hardwareService=require(_0x1090('0x12'));var logger=require('../../config/logger')(_0x1090('0x13'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x1090('0x14'));var db=require(_0x1090('0x15'))['db'];function respondWithStatusCode(_0x43f1b6,_0x2c0afa){_0x2c0afa=_0x2c0afa||0xcc;return function(_0x4250c6){if(_0x4250c6){return _0x43f1b6[_0x1090('0x16')](_0x2c0afa);}return _0x43f1b6[_0x1090('0x17')](_0x2c0afa)[_0x1090('0x18')]();};}function respondWithResult(_0x1cbc74,_0x897055){_0x897055=_0x897055||0xc8;return function(_0x477a41){if(_0x477a41){return _0x1cbc74[_0x1090('0x17')](_0x897055)[_0x1090('0x19')](_0x477a41);}};}function respondWithFilteredResult(_0x4dadef,_0x465cbd){return function(_0x28a09a){if(_0x28a09a){var _0x14e6dc=typeof _0x465cbd['offset']===_0x1090('0x1a')&&typeof _0x465cbd[_0x1090('0x1b')]===_0x1090('0x1a');var _0x31ef2f=_0x28a09a[_0x1090('0x1c')];var _0x496fb1=_0x14e6dc?0x0:_0x465cbd[_0x1090('0x1d')];var _0x2ea64c=_0x14e6dc?_0x28a09a[_0x1090('0x1c')]:_0x465cbd[_0x1090('0x1d')]+_0x465cbd[_0x1090('0x1b')];var _0x392fcc;if(_0x2ea64c>=_0x31ef2f){_0x2ea64c=_0x31ef2f;_0x392fcc=0xc8;}else{_0x392fcc=0xce;}_0x4dadef[_0x1090('0x17')](_0x392fcc);return _0x4dadef[_0x1090('0x1e')](_0x1090('0x1f'),_0x496fb1+'-'+_0x2ea64c+'/'+_0x31ef2f)['json'](_0x28a09a);}return null;};}function patchUpdates(_0x57dfc5){return function(_0x8df216){try{jsonpatch['apply'](_0x8df216,_0x57dfc5,!![]);}catch(_0x304e6d){return BPromise[_0x1090('0x20')](_0x304e6d);}return _0x8df216[_0x1090('0x21')]();};}function saveUpdates(_0xa48311,_0x211b39){return function(_0x29633c){if(_0x29633c){return _0x29633c[_0x1090('0x22')](_0xa48311)['then'](function(_0x505d09){return _0x505d09;});}return null;};}function removeEntity(_0x4c7434,_0x48b5c0){return function(_0x4d187a){if(_0x4d187a){return _0x4d187a['destroy']()['then'](function(){_0x4c7434[_0x1090('0x17')](0xcc)[_0x1090('0x18')]();});}};}function handleEntityNotFound(_0x54eeec,_0x3face7){return function(_0x50267d){if(!_0x50267d){_0x54eeec[_0x1090('0x16')](0x194);}return _0x50267d;};}function handleError(_0x33dc42,_0x3a2123){_0x3a2123=_0x3a2123||0x1f4;return function(_0x5e2859){logger['error'](_0x5e2859[_0x1090('0x23')]);if(_0x5e2859['name']){delete _0x5e2859[_0x1090('0x24')];}_0x33dc42['status'](_0x3a2123)[_0x1090('0x25')](_0x5e2859);};}exports[_0x1090('0x26')]=function(_0x124ac,_0x3b7f54){var _0x257645={'raw':!![],'where':{'id':_0x124ac[_0x1090('0x27')]['id']}},_0x5bd6ab={};_0x5bd6ab[_0x1090('0x28')]=_[_0x1090('0x29')](db[_0x1090('0x2a')][_0x1090('0x2b')]);_0x5bd6ab[_0x1090('0x2c')]=_[_0x1090('0x29')](_0x124ac[_0x1090('0x2c')]);_0x5bd6ab[_0x1090('0x2d')]=_[_0x1090('0x2e')](_0x5bd6ab['model'],_0x5bd6ab['query']);_0x257645[_0x1090('0x2f')]=_[_0x1090('0x2e')](_0x5bd6ab[_0x1090('0x28')],qs['fields'](_0x124ac[_0x1090('0x2c')][_0x1090('0x30')]));_0x257645[_0x1090('0x2f')]=_0x257645[_0x1090('0x2f')][_0x1090('0x31')]?_0x257645['attributes']:_0x5bd6ab[_0x1090('0x28')];if(_0x124ac[_0x1090('0x2c')][_0x1090('0x32')]){_0x257645[_0x1090('0x33')]=[{'all':!![]}];}_0x257645=_[_0x1090('0x34')]({},_0x257645,_0x124ac[_0x1090('0x35')]);return db['ChatApplication'][_0x1090('0x36')](_0x257645)['then'](handleEntityNotFound(_0x3b7f54,null))[_0x1090('0x37')](respondWithResult(_0x3b7f54,null))[_0x1090('0x38')](handleError(_0x3b7f54,null));};exports[_0x1090('0x22')]=function(_0x1b1d3a,_0x5ae313){if(_0x1b1d3a[_0x1090('0x39')]['id']){delete _0x1b1d3a[_0x1090('0x39')]['id'];}return db[_0x1090('0x2a')]['find']({'where':{'id':_0x1b1d3a['params']['id']}})[_0x1090('0x37')](handleEntityNotFound(_0x5ae313,null))['then'](saveUpdates(_0x1b1d3a[_0x1090('0x39')],null))['then'](respondWithResult(_0x5ae313,null))[_0x1090('0x38')](handleError(_0x5ae313,null));};exports['destroy']=function(_0x18cc57,_0x3f910f){return db['ChatApplication'][_0x1090('0x36')]({'where':{'id':_0x18cc57[_0x1090('0x27')]['id']}})[_0x1090('0x37')](handleEntityNotFound(_0x3f910f,null))[_0x1090('0x37')](removeEntity(_0x3f910f,null))[_0x1090('0x38')](handleError(_0x3f910f,null));};