Built motion from commit 67e5df37.|2.0.66
[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 _0x56bf=['lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','destroy','stack','name','show','params','model','keys','ChatApplication','rawAttributes','query','attributes','intersection','fields','length','merge','options','find','then','catch','update','body','moment','bluebird','util','path','to-csv','ejs'];(function(_0x1f9dbf,_0x52bc57){var _0x45bbf3=function(_0xd30d94){while(--_0xd30d94){_0x1f9dbf['push'](_0x1f9dbf['shift']());}};_0x45bbf3(++_0x52bc57);}(_0x56bf,0x192));var _0xf56b=function(_0x1b6311,_0x42ec20){_0x1b6311=_0x1b6311-0x0;var _0x25aab6=_0x56bf[_0x1b6311];return _0x25aab6;};'use strict';var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xf56b('0x0'));var BPromise=require(_0xf56b('0x1'));var Mustache=require('mustache');var util=require(_0xf56b('0x2'));var path=require(_0xf56b('0x3'));var sox=require('sox');var csv=require(_0xf56b('0x4'));var ejs=require(_0xf56b('0x5'));var fs=require('fs');var _=require(_0xf56b('0x6'));var squel=require(_0xf56b('0x7'));var crypto=require(_0xf56b('0x8'));var jsforce=require(_0xf56b('0x9'));var deskjs=require(_0xf56b('0xa'));var toCsv=require(_0xf56b('0x4'));var querystring=require(_0xf56b('0xb'));var Papa=require(_0xf56b('0xc'));var qs=require(_0xf56b('0xd'));var logger=require(_0xf56b('0xe'))(_0xf56b('0xf'));var utils=require(_0xf56b('0x10'));var config=require(_0xf56b('0x11'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x59d37e,_0x41d96c){_0x41d96c=_0x41d96c||0xcc;return function(_0x44eb6b){if(_0x44eb6b){return _0x59d37e[_0xf56b('0x12')](_0x41d96c);}return _0x59d37e[_0xf56b('0x13')](_0x41d96c)[_0xf56b('0x14')]();};}function respondWithResult(_0x48d968,_0x16cd16){_0x16cd16=_0x16cd16||0xc8;return function(_0x16ed27){if(_0x16ed27){return _0x48d968['status'](_0x16cd16)[_0xf56b('0x15')](_0x16ed27);}};}function respondWithFilteredResult(_0x1537b5,_0x435566){return function(_0x4cd31f){if(_0x4cd31f){var _0x1aa24e=_0x4cd31f[_0xf56b('0x16')],_0x3d1a82=_0x435566[_0xf56b('0x17')],_0x59bf00=_0x435566['offset']+_0x435566[_0xf56b('0x18')],_0x27012c;if(_0x59bf00>=_0x1aa24e){_0x59bf00=_0x1aa24e;_0x27012c=0xc8;}else{_0x27012c=0xce;}_0x1537b5[_0xf56b('0x13')](_0x27012c);return _0x1537b5[_0xf56b('0x19')](_0xf56b('0x1a'),_0x3d1a82+'-'+_0x59bf00+'/'+_0x1aa24e)[_0xf56b('0x15')](_0x4cd31f);}return null;};}function patchUpdates(_0x53ffe9){return function(_0x1edd8d){try{jsonpatch[_0xf56b('0x1b')](_0x1edd8d,_0x53ffe9,!![]);}catch(_0x45f083){return BPromise[_0xf56b('0x1c')](_0x45f083);}return _0x1edd8d[_0xf56b('0x1d')]();};}function saveUpdates(_0x14f070,_0x2ef662){return function(_0x2c3d6d){if(_0x2c3d6d){return _0x2c3d6d['update'](_0x14f070)['then'](function(_0xac22ac){return _0xac22ac;});}return null;};}function removeEntity(_0x54b598,_0x11e46c){return function(_0x205def){if(_0x205def){return _0x205def[_0xf56b('0x1e')]()['then'](function(){_0x54b598[_0xf56b('0x13')](0xcc)[_0xf56b('0x14')]();});}};}function handleEntityNotFound(_0x54842a,_0x452d6c){return function(_0x24d4bc){if(!_0x24d4bc){_0x54842a[_0xf56b('0x12')](0x194);}return _0x24d4bc;};}function handleError(_0x470fdc,_0x240d40){_0x240d40=_0x240d40||0x1f4;return function(_0x372bf9){logger['error'](_0x372bf9[_0xf56b('0x1f')]);if(_0x372bf9['name']){delete _0x372bf9[_0xf56b('0x20')];}_0x470fdc[_0xf56b('0x13')](_0x240d40)['send'](_0x372bf9);};}exports[_0xf56b('0x21')]=function(_0x23e48a,_0xd3abea){var _0x5c78be={'raw':!![],'where':{'id':_0x23e48a[_0xf56b('0x22')]['id']}},_0xc70ac8={};_0xc70ac8[_0xf56b('0x23')]=_[_0xf56b('0x24')](db[_0xf56b('0x25')][_0xf56b('0x26')]);_0xc70ac8[_0xf56b('0x27')]=_['keys'](_0x23e48a[_0xf56b('0x27')]);_0xc70ac8['filters']=_['intersection'](_0xc70ac8[_0xf56b('0x23')],_0xc70ac8[_0xf56b('0x27')]);_0x5c78be[_0xf56b('0x28')]=_[_0xf56b('0x29')](_0xc70ac8[_0xf56b('0x23')],qs[_0xf56b('0x2a')](_0x23e48a[_0xf56b('0x27')]['fields']));_0x5c78be['attributes']=_0x5c78be[_0xf56b('0x28')][_0xf56b('0x2b')]?_0x5c78be[_0xf56b('0x28')]:_0xc70ac8[_0xf56b('0x23')];if(_0x23e48a[_0xf56b('0x27')]['includeAll']){_0x5c78be['include']=[{'all':!![]}];}_0x5c78be=_[_0xf56b('0x2c')]({},_0x5c78be,_0x23e48a[_0xf56b('0x2d')]);return db[_0xf56b('0x25')][_0xf56b('0x2e')](_0x5c78be)[_0xf56b('0x2f')](handleEntityNotFound(_0xd3abea,null))[_0xf56b('0x2f')](respondWithResult(_0xd3abea,null))[_0xf56b('0x30')](handleError(_0xd3abea,null));};exports[_0xf56b('0x31')]=function(_0x573144,_0x4ba6a0){if(_0x573144['body']['id']){delete _0x573144[_0xf56b('0x32')]['id'];}return db['ChatApplication'][_0xf56b('0x2e')]({'where':{'id':_0x573144['params']['id']}})['then'](handleEntityNotFound(_0x4ba6a0,null))['then'](saveUpdates(_0x573144[_0xf56b('0x32')],null))[_0xf56b('0x2f')](respondWithResult(_0x4ba6a0,null))['catch'](handleError(_0x4ba6a0,null));};exports['destroy']=function(_0x5146f8,_0x560762){return db['ChatApplication'][_0xf56b('0x2e')]({'where':{'id':_0x5146f8['params']['id']}})[_0xf56b('0x2f')](handleEntityNotFound(_0x560762,null))[_0xf56b('0x2f')](removeEntity(_0x560762,null))[_0xf56b('0x30')](handleError(_0x560762,null));};