Built motion from commit (unavailable).|2.3.5
[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 _0x479a=['api','../../config/utils','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','apply','save','then','destroy','stack','name','send','show','params','model','rawAttributes','query','intersection','attributes','fields','length','includeAll','include','merge','options','ChatApplication','catch','body','find','html-pdf','rimraf','zip-dir','bluebird','mustache','path','sox','to-csv','ejs','jsforce','desk.js','../../components/auth/service','../../config/license/hardware','ioredis','../../config/logger'];(function(_0x11deef,_0x34bbdb){var _0xe9ba85=function(_0x591377){while(--_0x591377){_0x11deef['push'](_0x11deef['shift']());}};_0xe9ba85(++_0x34bbdb);}(_0x479a,0xb9));var _0xa479=function(_0x14e4c2,_0x32bbf4){_0x14e4c2=_0x14e4c2-0x0;var _0x5bcf07=_0x479a[_0x14e4c2];return _0x5bcf07;};'use strict';var pdf=require(_0xa479('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xa479('0x1'));var zipdir=require(_0xa479('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xa479('0x3'));var Mustache=require(_0xa479('0x4'));var util=require('util');var path=require(_0xa479('0x5'));var sox=require(_0xa479('0x6'));var csv=require(_0xa479('0x7'));var ejs=require(_0xa479('0x8'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0xa479('0x9'));var deskjs=require(_0xa479('0xa'));var toCsv=require(_0xa479('0x7'));var querystring=require('querystring');var Papa=require('papaparse');var authService=require(_0xa479('0xb'));var hardwareService=require(_0xa479('0xc'));var Redis=require(_0xa479('0xd'));var qs=require('../../components/parsers/qs');var logger=require(_0xa479('0xe'))(_0xa479('0xf'));var utils=require(_0xa479('0x10'));var config=require('../../config/environment');var db=require(_0xa479('0x11'))['db'];function respondWithStatusCode(_0x4e253a,_0x5bda61){_0x5bda61=_0x5bda61||0xcc;return function(_0x16e952){if(_0x16e952){return _0x4e253a[_0xa479('0x12')](_0x5bda61);}return _0x4e253a[_0xa479('0x13')](_0x5bda61)[_0xa479('0x14')]();};}function respondWithResult(_0x36f1ea,_0x587e91){_0x587e91=_0x587e91||0xc8;return function(_0x1795ad){if(_0x1795ad){return _0x36f1ea[_0xa479('0x13')](_0x587e91)[_0xa479('0x15')](_0x1795ad);}};}function respondWithFilteredResult(_0x395302,_0x44e836){return function(_0x3af276){if(_0x3af276){var _0x3e3cd9=_0x3af276[_0xa479('0x16')],_0x1414f0=_0x44e836[_0xa479('0x17')],_0x43184d=_0x44e836[_0xa479('0x17')]+_0x44e836[_0xa479('0x18')],_0x1423fc;if(_0x43184d>=_0x3e3cd9){_0x43184d=_0x3e3cd9;_0x1423fc=0xc8;}else{_0x1423fc=0xce;}_0x395302[_0xa479('0x13')](_0x1423fc);return _0x395302[_0xa479('0x19')]('Content-Range',_0x1414f0+'-'+_0x43184d+'/'+_0x3e3cd9)['json'](_0x3af276);}return null;};}function patchUpdates(_0x3dfbcb){return function(_0x4d79f7){try{jsonpatch[_0xa479('0x1a')](_0x4d79f7,_0x3dfbcb,!![]);}catch(_0x1da201){return BPromise['reject'](_0x1da201);}return _0x4d79f7[_0xa479('0x1b')]();};}function saveUpdates(_0x16a997,_0x20a962){return function(_0x5e76d1){if(_0x5e76d1){return _0x5e76d1['update'](_0x16a997)[_0xa479('0x1c')](function(_0x2ef912){return _0x2ef912;});}return null;};}function removeEntity(_0x43e25f,_0x3f497d){return function(_0x287266){if(_0x287266){return _0x287266[_0xa479('0x1d')]()['then'](function(){_0x43e25f[_0xa479('0x13')](0xcc)[_0xa479('0x14')]();});}};}function handleEntityNotFound(_0x32da11,_0x3db167){return function(_0x5dfa99){if(!_0x5dfa99){_0x32da11[_0xa479('0x12')](0x194);}return _0x5dfa99;};}function handleError(_0x2f54ad,_0x59d7f6){_0x59d7f6=_0x59d7f6||0x1f4;return function(_0xd4ce6){logger['error'](_0xd4ce6[_0xa479('0x1e')]);if(_0xd4ce6['name']){delete _0xd4ce6[_0xa479('0x1f')];}_0x2f54ad[_0xa479('0x13')](_0x59d7f6)[_0xa479('0x20')](_0xd4ce6);};}exports[_0xa479('0x21')]=function(_0x591a36,_0x2ae183){var _0x92d38c={'raw':!![],'where':{'id':_0x591a36[_0xa479('0x22')]['id']}},_0xf6c00d={};_0xf6c00d[_0xa479('0x23')]=_['keys'](db['ChatApplication'][_0xa479('0x24')]);_0xf6c00d[_0xa479('0x25')]=_['keys'](_0x591a36[_0xa479('0x25')]);_0xf6c00d['filters']=_[_0xa479('0x26')](_0xf6c00d[_0xa479('0x23')],_0xf6c00d[_0xa479('0x25')]);_0x92d38c[_0xa479('0x27')]=_['intersection'](_0xf6c00d['model'],qs[_0xa479('0x28')](_0x591a36[_0xa479('0x25')][_0xa479('0x28')]));_0x92d38c[_0xa479('0x27')]=_0x92d38c[_0xa479('0x27')][_0xa479('0x29')]?_0x92d38c['attributes']:_0xf6c00d[_0xa479('0x23')];if(_0x591a36[_0xa479('0x25')][_0xa479('0x2a')]){_0x92d38c[_0xa479('0x2b')]=[{'all':!![]}];}_0x92d38c=_[_0xa479('0x2c')]({},_0x92d38c,_0x591a36[_0xa479('0x2d')]);return db[_0xa479('0x2e')]['find'](_0x92d38c)[_0xa479('0x1c')](handleEntityNotFound(_0x2ae183,null))[_0xa479('0x1c')](respondWithResult(_0x2ae183,null))[_0xa479('0x2f')](handleError(_0x2ae183,null));};exports['update']=function(_0xa8d444,_0x53d6d9){if(_0xa8d444[_0xa479('0x30')]['id']){delete _0xa8d444[_0xa479('0x30')]['id'];}return db[_0xa479('0x2e')][_0xa479('0x31')]({'where':{'id':_0xa8d444[_0xa479('0x22')]['id']}})['then'](handleEntityNotFound(_0x53d6d9,null))[_0xa479('0x1c')](saveUpdates(_0xa8d444[_0xa479('0x30')],null))[_0xa479('0x1c')](respondWithResult(_0x53d6d9,null))[_0xa479('0x2f')](handleError(_0x53d6d9,null));};exports[_0xa479('0x1d')]=function(_0x338d43,_0x465d1d){return db[_0xa479('0x2e')][_0xa479('0x31')]({'where':{'id':_0x338d43[_0xa479('0x22')]['id']}})[_0xa479('0x1c')](handleEntityNotFound(_0x465d1d,null))[_0xa479('0x1c')](removeEntity(_0x465d1d,null))[_0xa479('0x2f')](handleError(_0x465d1d,null));};