bff2a2524745533200cca86437b91a64f053f28f
[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 _0xd1a2=['../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','reject','update','destroy','error','stack','name','send','show','params','model','keys','ChatApplication','rawAttributes','query','filters','attributes','intersection','fields','includeAll','options','then','catch','body','find','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','path','to-csv','ejs','squel','crypto','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs'];(function(_0x24c914,_0x29257c){var _0x5af158=function(_0x5d06a7){while(--_0x5d06a7){_0x24c914['push'](_0x24c914['shift']());}};_0x5af158(++_0x29257c);}(_0xd1a2,0x97));var _0x2d1a=function(_0x177ac8,_0x5ed1b5){_0x177ac8=_0x177ac8-0x0;var _0x3649f8=_0xd1a2[_0x177ac8];return _0x3649f8;};'use strict';var pdf=require(_0x2d1a('0x0'));var emlformat=require(_0x2d1a('0x1'));var rimraf=require(_0x2d1a('0x2'));var zipdir=require(_0x2d1a('0x3'));var jsonpatch=require(_0x2d1a('0x4'));var rp=require('request-promise');var moment=require(_0x2d1a('0x5'));var BPromise=require(_0x2d1a('0x6'));var Mustache=require(_0x2d1a('0x7'));var util=require('util');var path=require(_0x2d1a('0x8'));var sox=require('sox');var csv=require(_0x2d1a('0x9'));var ejs=require(_0x2d1a('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0x2d1a('0xb'));var crypto=require(_0x2d1a('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x2d1a('0xd'));var toCsv=require(_0x2d1a('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x2d1a('0xe'));var authService=require(_0x2d1a('0xf'));var qs=require(_0x2d1a('0x10'));var hardwareService=require(_0x2d1a('0x11'));var logger=require(_0x2d1a('0x12'))(_0x2d1a('0x13'));var utils=require(_0x2d1a('0x14'));var config=require(_0x2d1a('0x15'));var db=require(_0x2d1a('0x16'))['db'];function respondWithStatusCode(_0x4ee78f,_0xb6cd73){_0xb6cd73=_0xb6cd73||0xcc;return function(_0x468f18){if(_0x468f18){return _0x4ee78f[_0x2d1a('0x17')](_0xb6cd73);}return _0x4ee78f[_0x2d1a('0x18')](_0xb6cd73)[_0x2d1a('0x19')]();};}function respondWithResult(_0x361c63,_0x1c66ad){_0x1c66ad=_0x1c66ad||0xc8;return function(_0x3a87f5){if(_0x3a87f5){return _0x361c63['status'](_0x1c66ad)[_0x2d1a('0x1a')](_0x3a87f5);}};}function respondWithFilteredResult(_0x250432,_0x2884e2){return function(_0x4cf63d){if(_0x4cf63d){var _0x2eca90=_0x4cf63d[_0x2d1a('0x1b')],_0x2f73bf=_0x2884e2[_0x2d1a('0x1c')],_0x12d405=_0x2884e2['offset']+_0x2884e2[_0x2d1a('0x1d')],_0x196296;if(_0x12d405>=_0x2eca90){_0x12d405=_0x2eca90;_0x196296=0xc8;}else{_0x196296=0xce;}_0x250432[_0x2d1a('0x18')](_0x196296);return _0x250432[_0x2d1a('0x1e')](_0x2d1a('0x1f'),_0x2f73bf+'-'+_0x12d405+'/'+_0x2eca90)[_0x2d1a('0x1a')](_0x4cf63d);}return null;};}function patchUpdates(_0x4d7da1){return function(_0x45d336){try{jsonpatch['apply'](_0x45d336,_0x4d7da1,!![]);}catch(_0x107c0c){return BPromise[_0x2d1a('0x20')](_0x107c0c);}return _0x45d336['save']();};}function saveUpdates(_0x451414,_0x2b1a22){return function(_0x3056d2){if(_0x3056d2){return _0x3056d2[_0x2d1a('0x21')](_0x451414)['then'](function(_0x26d470){return _0x26d470;});}return null;};}function removeEntity(_0x38ccdb,_0xce93c4){return function(_0x1f74d1){if(_0x1f74d1){return _0x1f74d1[_0x2d1a('0x22')]()['then'](function(){_0x38ccdb[_0x2d1a('0x18')](0xcc)[_0x2d1a('0x19')]();});}};}function handleEntityNotFound(_0x14d16d,_0x2f56f1){return function(_0x9173d1){if(!_0x9173d1){_0x14d16d[_0x2d1a('0x17')](0x194);}return _0x9173d1;};}function handleError(_0x4e91bc,_0x2dbad2){_0x2dbad2=_0x2dbad2||0x1f4;return function(_0xb37d2){logger[_0x2d1a('0x23')](_0xb37d2[_0x2d1a('0x24')]);if(_0xb37d2[_0x2d1a('0x25')]){delete _0xb37d2[_0x2d1a('0x25')];}_0x4e91bc[_0x2d1a('0x18')](_0x2dbad2)[_0x2d1a('0x26')](_0xb37d2);};}exports[_0x2d1a('0x27')]=function(_0x224f8e,_0x470dc0){var _0x300423={'raw':!![],'where':{'id':_0x224f8e[_0x2d1a('0x28')]['id']}},_0x18964f={};_0x18964f[_0x2d1a('0x29')]=_[_0x2d1a('0x2a')](db[_0x2d1a('0x2b')][_0x2d1a('0x2c')]);_0x18964f[_0x2d1a('0x2d')]=_['keys'](_0x224f8e[_0x2d1a('0x2d')]);_0x18964f[_0x2d1a('0x2e')]=_['intersection'](_0x18964f[_0x2d1a('0x29')],_0x18964f['query']);_0x300423[_0x2d1a('0x2f')]=_[_0x2d1a('0x30')](_0x18964f[_0x2d1a('0x29')],qs['fields'](_0x224f8e['query'][_0x2d1a('0x31')]));_0x300423[_0x2d1a('0x2f')]=_0x300423['attributes']['length']?_0x300423[_0x2d1a('0x2f')]:_0x18964f[_0x2d1a('0x29')];if(_0x224f8e[_0x2d1a('0x2d')][_0x2d1a('0x32')]){_0x300423['include']=[{'all':!![]}];}_0x300423=_['merge']({},_0x300423,_0x224f8e[_0x2d1a('0x33')]);return db['ChatApplication']['find'](_0x300423)[_0x2d1a('0x34')](handleEntityNotFound(_0x470dc0,null))['then'](respondWithResult(_0x470dc0,null))[_0x2d1a('0x35')](handleError(_0x470dc0,null));};exports[_0x2d1a('0x21')]=function(_0xb4f119,_0xd3ba76){if(_0xb4f119[_0x2d1a('0x36')]['id']){delete _0xb4f119[_0x2d1a('0x36')]['id'];}return db['ChatApplication']['find']({'where':{'id':_0xb4f119[_0x2d1a('0x28')]['id']}})[_0x2d1a('0x34')](handleEntityNotFound(_0xd3ba76,null))[_0x2d1a('0x34')](saveUpdates(_0xb4f119[_0x2d1a('0x36')],null))['then'](respondWithResult(_0xd3ba76,null))['catch'](handleError(_0xd3ba76,null));};exports[_0x2d1a('0x22')]=function(_0x431db3,_0x4e219d){return db[_0x2d1a('0x2b')][_0x2d1a('0x37')]({'where':{'id':_0x431db3['params']['id']}})['then'](handleEntityNotFound(_0x4e219d,null))[_0x2d1a('0x34')](removeEntity(_0x4e219d,null))[_0x2d1a('0x35')](handleError(_0x4e219d,null));};