Built motion from commit (unavailable).|2.4.18
[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 _0x3239=['model','fields','length','includeAll','include','options','catch','find','body','eml-format','rimraf','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../mysqldb','status','end','json','count','Content-Range','apply','reject','save','then','destroy','sendStatus','name','show','params','ChatApplication','rawAttributes','query','keys','filters','intersection','attributes'];(function(_0x2ff762,_0x342c0b){var _0x158b02=function(_0x13c38e){while(--_0x13c38e){_0x2ff762['push'](_0x2ff762['shift']());}};_0x158b02(++_0x342c0b);}(_0x3239,0x1b1));var _0x9323=function(_0x54b9ac,_0x1d40e8){_0x54b9ac=_0x54b9ac-0x0;var _0x5e0065=_0x3239[_0x54b9ac];return _0x5e0065;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x9323('0x0'));var rimraf=require(_0x9323('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x9323('0x2'));var rp=require(_0x9323('0x3'));var moment=require(_0x9323('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x9323('0x5'));var util=require(_0x9323('0x6'));var path=require('path');var sox=require(_0x9323('0x7'));var csv=require(_0x9323('0x8'));var ejs=require(_0x9323('0x9'));var fs=require('fs');var _=require(_0x9323('0xa'));var squel=require(_0x9323('0xb'));var crypto=require(_0x9323('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x9323('0xd'));var toCsv=require(_0x9323('0x8'));var querystring=require(_0x9323('0xe'));var Papa=require(_0x9323('0xf'));var Redis=require('ioredis');var authService=require(_0x9323('0x10'));var qs=require(_0x9323('0x11'));var as=require(_0x9323('0x12'));var hardwareService=require(_0x9323('0x13'));var logger=require(_0x9323('0x14'))('api');var utils=require(_0x9323('0x15'));var config=require('../../config/environment');var db=require(_0x9323('0x16'))['db'];function respondWithStatusCode(_0x24f74b,_0x4ccae4){_0x4ccae4=_0x4ccae4||0xcc;return function(_0x56f70a){if(_0x56f70a){return _0x24f74b['sendStatus'](_0x4ccae4);}return _0x24f74b[_0x9323('0x17')](_0x4ccae4)[_0x9323('0x18')]();};}function respondWithResult(_0x23dc13,_0x171692){_0x171692=_0x171692||0xc8;return function(_0xd2b363){if(_0xd2b363){return _0x23dc13[_0x9323('0x17')](_0x171692)[_0x9323('0x19')](_0xd2b363);}};}function respondWithFilteredResult(_0x4b3783,_0x41969e){return function(_0x4e21ed){if(_0x4e21ed){var _0x1a7891=_0x4e21ed[_0x9323('0x1a')],_0x9168d4=_0x41969e['offset'],_0x7e1f9d=_0x41969e['offset']+_0x41969e['limit'],_0x380e7b;if(_0x7e1f9d>=_0x1a7891){_0x7e1f9d=_0x1a7891;_0x380e7b=0xc8;}else{_0x380e7b=0xce;}_0x4b3783[_0x9323('0x17')](_0x380e7b);return _0x4b3783['set'](_0x9323('0x1b'),_0x9168d4+'-'+_0x7e1f9d+'/'+_0x1a7891)[_0x9323('0x19')](_0x4e21ed);}return null;};}function patchUpdates(_0x16c954){return function(_0x260a4d){try{jsonpatch[_0x9323('0x1c')](_0x260a4d,_0x16c954,!![]);}catch(_0x47e5e8){return BPromise[_0x9323('0x1d')](_0x47e5e8);}return _0x260a4d[_0x9323('0x1e')]();};}function saveUpdates(_0x576698,_0x49e0dc){return function(_0x573d27){if(_0x573d27){return _0x573d27['update'](_0x576698)[_0x9323('0x1f')](function(_0x542228){return _0x542228;});}return null;};}function removeEntity(_0x507750,_0x2087c3){return function(_0x46347f){if(_0x46347f){return _0x46347f[_0x9323('0x20')]()[_0x9323('0x1f')](function(){_0x507750['status'](0xcc)[_0x9323('0x18')]();});}};}function handleEntityNotFound(_0x3a10c3,_0x5412c3){return function(_0x62a40e){if(!_0x62a40e){_0x3a10c3[_0x9323('0x21')](0x194);}return _0x62a40e;};}function handleError(_0x2694d2,_0x5b0af3){_0x5b0af3=_0x5b0af3||0x1f4;return function(_0x44e995){logger['error'](_0x44e995['stack']);if(_0x44e995['name']){delete _0x44e995[_0x9323('0x22')];}_0x2694d2[_0x9323('0x17')](_0x5b0af3)['send'](_0x44e995);};}exports[_0x9323('0x23')]=function(_0xf3d559,_0x33ef81){var _0x113ad7={'raw':!![],'where':{'id':_0xf3d559[_0x9323('0x24')]['id']}},_0x3c861c={};_0x3c861c['model']=_['keys'](db[_0x9323('0x25')][_0x9323('0x26')]);_0x3c861c[_0x9323('0x27')]=_[_0x9323('0x28')](_0xf3d559[_0x9323('0x27')]);_0x3c861c[_0x9323('0x29')]=_[_0x9323('0x2a')](_0x3c861c['model'],_0x3c861c[_0x9323('0x27')]);_0x113ad7[_0x9323('0x2b')]=_[_0x9323('0x2a')](_0x3c861c[_0x9323('0x2c')],qs['fields'](_0xf3d559['query'][_0x9323('0x2d')]));_0x113ad7[_0x9323('0x2b')]=_0x113ad7['attributes'][_0x9323('0x2e')]?_0x113ad7['attributes']:_0x3c861c[_0x9323('0x2c')];if(_0xf3d559[_0x9323('0x27')][_0x9323('0x2f')]){_0x113ad7[_0x9323('0x30')]=[{'all':!![]}];}_0x113ad7=_['merge']({},_0x113ad7,_0xf3d559[_0x9323('0x31')]);return db[_0x9323('0x25')]['find'](_0x113ad7)['then'](handleEntityNotFound(_0x33ef81,null))[_0x9323('0x1f')](respondWithResult(_0x33ef81,null))[_0x9323('0x32')](handleError(_0x33ef81,null));};exports['update']=function(_0x2c23d5,_0x3341b5){if(_0x2c23d5['body']['id']){delete _0x2c23d5['body']['id'];}return db['ChatApplication'][_0x9323('0x33')]({'where':{'id':_0x2c23d5['params']['id']}})['then'](handleEntityNotFound(_0x3341b5,null))['then'](saveUpdates(_0x2c23d5[_0x9323('0x34')],null))[_0x9323('0x1f')](respondWithResult(_0x3341b5,null))[_0x9323('0x32')](handleError(_0x3341b5,null));};exports[_0x9323('0x20')]=function(_0x4f6c34,_0xb0dfa1){return db['ChatApplication'][_0x9323('0x33')]({'where':{'id':_0x4f6c34[_0x9323('0x24')]['id']}})['then'](handleEntityNotFound(_0xb0dfa1,null))['then'](removeEntity(_0xb0dfa1,null))[_0x9323('0x32')](handleError(_0xb0dfa1,null));};