c4534bf6ed688455a00e61a3974bff903bdc4b05
[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 _0x18ab=['api','../../config/utils','../../mysqldb','sendStatus','status','end','count','offset','limit','set','Content-Range','apply','save','update','then','destroy','error','stack','name','send','show','params','model','keys','ChatApplication','rawAttributes','query','intersection','attributes','fields','length','includeAll','find','catch','body','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger'];(function(_0x30cec2,_0xfecd0a){var _0x1d44bd=function(_0x3ca538){while(--_0x3ca538){_0x30cec2['push'](_0x30cec2['shift']());}};_0x1d44bd(++_0xfecd0a);}(_0x18ab,0x8f));var _0xb18a=function(_0x2109cb,_0x596e11){_0x2109cb=_0x2109cb-0x0;var _0x21718c=_0x18ab[_0x2109cb];return _0x21718c;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xb18a('0x0'));var jsonpatch=require(_0xb18a('0x1'));var rp=require(_0xb18a('0x2'));var moment=require(_0xb18a('0x3'));var BPromise=require(_0xb18a('0x4'));var Mustache=require(_0xb18a('0x5'));var util=require(_0xb18a('0x6'));var path=require('path');var sox=require(_0xb18a('0x7'));var csv=require(_0xb18a('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0xb18a('0x9'));var crypto=require('crypto');var jsforce=require(_0xb18a('0xa'));var deskjs=require(_0xb18a('0xb'));var toCsv=require(_0xb18a('0x8'));var querystring=require(_0xb18a('0xc'));var Papa=require(_0xb18a('0xd'));var Redis=require(_0xb18a('0xe'));var authService=require(_0xb18a('0xf'));var qs=require(_0xb18a('0x10'));var as=require(_0xb18a('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xb18a('0x12'))(_0xb18a('0x13'));var utils=require(_0xb18a('0x14'));var config=require('../../config/environment');var db=require(_0xb18a('0x15'))['db'];function respondWithStatusCode(_0x5ab8ee,_0x54831b){_0x54831b=_0x54831b||0xcc;return function(_0x1354de){if(_0x1354de){return _0x5ab8ee[_0xb18a('0x16')](_0x54831b);}return _0x5ab8ee[_0xb18a('0x17')](_0x54831b)[_0xb18a('0x18')]();};}function respondWithResult(_0x26dc91,_0x576780){_0x576780=_0x576780||0xc8;return function(_0x5a84e3){if(_0x5a84e3){return _0x26dc91['status'](_0x576780)['json'](_0x5a84e3);}};}function respondWithFilteredResult(_0xfe8677,_0x343b61){return function(_0x47f23f){if(_0x47f23f){var _0xc06693=_0x47f23f[_0xb18a('0x19')],_0x3ec5a9=_0x343b61['offset'],_0x37962b=_0x343b61[_0xb18a('0x1a')]+_0x343b61[_0xb18a('0x1b')],_0x98eede;if(_0x37962b>=_0xc06693){_0x37962b=_0xc06693;_0x98eede=0xc8;}else{_0x98eede=0xce;}_0xfe8677[_0xb18a('0x17')](_0x98eede);return _0xfe8677[_0xb18a('0x1c')](_0xb18a('0x1d'),_0x3ec5a9+'-'+_0x37962b+'/'+_0xc06693)['json'](_0x47f23f);}return null;};}function patchUpdates(_0x3a5714){return function(_0x3e6af2){try{jsonpatch[_0xb18a('0x1e')](_0x3e6af2,_0x3a5714,!![]);}catch(_0x2b842d){return BPromise['reject'](_0x2b842d);}return _0x3e6af2[_0xb18a('0x1f')]();};}function saveUpdates(_0x1cc251,_0x56494e){return function(_0xfc0b19){if(_0xfc0b19){return _0xfc0b19[_0xb18a('0x20')](_0x1cc251)[_0xb18a('0x21')](function(_0x1ea4ec){return _0x1ea4ec;});}return null;};}function removeEntity(_0x449f67,_0x3fafd6){return function(_0x422755){if(_0x422755){return _0x422755[_0xb18a('0x22')]()[_0xb18a('0x21')](function(){_0x449f67[_0xb18a('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x318093,_0x2c73c1){return function(_0x4c11f3){if(!_0x4c11f3){_0x318093['sendStatus'](0x194);}return _0x4c11f3;};}function handleError(_0x39c90f,_0x3e2c57){_0x3e2c57=_0x3e2c57||0x1f4;return function(_0xce63a8){logger[_0xb18a('0x23')](_0xce63a8[_0xb18a('0x24')]);if(_0xce63a8[_0xb18a('0x25')]){delete _0xce63a8[_0xb18a('0x25')];}_0x39c90f[_0xb18a('0x17')](_0x3e2c57)[_0xb18a('0x26')](_0xce63a8);};}exports[_0xb18a('0x27')]=function(_0x1fe245,_0x48611a){var _0x26e9a9={'raw':!![],'where':{'id':_0x1fe245[_0xb18a('0x28')]['id']}},_0x4da512={};_0x4da512[_0xb18a('0x29')]=_[_0xb18a('0x2a')](db[_0xb18a('0x2b')][_0xb18a('0x2c')]);_0x4da512[_0xb18a('0x2d')]=_[_0xb18a('0x2a')](_0x1fe245[_0xb18a('0x2d')]);_0x4da512['filters']=_[_0xb18a('0x2e')](_0x4da512[_0xb18a('0x29')],_0x4da512[_0xb18a('0x2d')]);_0x26e9a9[_0xb18a('0x2f')]=_[_0xb18a('0x2e')](_0x4da512[_0xb18a('0x29')],qs[_0xb18a('0x30')](_0x1fe245[_0xb18a('0x2d')]['fields']));_0x26e9a9['attributes']=_0x26e9a9['attributes'][_0xb18a('0x31')]?_0x26e9a9[_0xb18a('0x2f')]:_0x4da512[_0xb18a('0x29')];if(_0x1fe245[_0xb18a('0x2d')][_0xb18a('0x32')]){_0x26e9a9['include']=[{'all':!![]}];}_0x26e9a9=_['merge']({},_0x26e9a9,_0x1fe245['options']);return db[_0xb18a('0x2b')][_0xb18a('0x33')](_0x26e9a9)[_0xb18a('0x21')](handleEntityNotFound(_0x48611a,null))['then'](respondWithResult(_0x48611a,null))[_0xb18a('0x34')](handleError(_0x48611a,null));};exports[_0xb18a('0x20')]=function(_0x285d2a,_0x3ff93a){if(_0x285d2a[_0xb18a('0x35')]['id']){delete _0x285d2a[_0xb18a('0x35')]['id'];}return db[_0xb18a('0x2b')][_0xb18a('0x33')]({'where':{'id':_0x285d2a[_0xb18a('0x28')]['id']}})[_0xb18a('0x21')](handleEntityNotFound(_0x3ff93a,null))[_0xb18a('0x21')](saveUpdates(_0x285d2a['body'],null))[_0xb18a('0x21')](respondWithResult(_0x3ff93a,null))[_0xb18a('0x34')](handleError(_0x3ff93a,null));};exports[_0xb18a('0x22')]=function(_0xc47b14,_0x23527b){return db['ChatApplication'][_0xb18a('0x33')]({'where':{'id':_0xc47b14['params']['id']}})['then'](handleEntityNotFound(_0x23527b,null))['then'](removeEntity(_0x23527b,null))[_0xb18a('0x34')](handleError(_0x23527b,null));};