Built motion from commit fe909640.|2.6.8
[motion2.git] / server / api / whatsappApplication / whatsappApplication.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 _0x3588=['../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','update','then','error','stack','name','index','map','WhatsappApplication','rawAttributes','fieldName','type','model','query','keys','filters','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','filter','where','VIRTUAL','merge','options','includeAll','rows','catch','show','length','find','create','body','params','destroy','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','fs-extra','lodash','crypto','desk.js','querystring','papaparse','../../components/auth/service'];(function(_0x513b73,_0xf95151){var _0x3096b3=function(_0x599456){while(--_0x599456){_0x513b73['push'](_0x513b73['shift']());}};_0x3096b3(++_0xf95151);}(_0x3588,0x82));var _0x8358=function(_0x4cb231,_0x3d3c5b){_0x4cb231=_0x4cb231-0x0;var _0x4d5063=_0x3588[_0x4cb231];return _0x4d5063;};'use strict';var emlformat=require(_0x8358('0x0'));var rimraf=require(_0x8358('0x1'));var zipdir=require(_0x8358('0x2'));var jsonpatch=require(_0x8358('0x3'));var rp=require(_0x8358('0x4'));var moment=require(_0x8358('0x5'));var BPromise=require(_0x8358('0x6'));var Mustache=require('mustache');var util=require(_0x8358('0x7'));var path=require(_0x8358('0x8'));var sox=require(_0x8358('0x9'));var csv=require(_0x8358('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x8358('0xb'));var _=require(_0x8358('0xc'));var squel=require('squel');var crypto=require(_0x8358('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x8358('0xe'));var toCsv=require(_0x8358('0xa'));var querystring=require(_0x8358('0xf'));var Papa=require(_0x8358('0x10'));var Redis=require('ioredis');var authService=require(_0x8358('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x8358('0x12'));var hardwareService=require(_0x8358('0x13'));var logger=require(_0x8358('0x14'))(_0x8358('0x15'));var utils=require(_0x8358('0x16'));var config=require(_0x8358('0x17'));var licenseUtil=require(_0x8358('0x18'));var db=require(_0x8358('0x19'))['db'];function respondWithStatusCode(_0x3cf276,_0x2c2aeb){_0x2c2aeb=_0x2c2aeb||0xcc;return function(_0x213d5e){if(_0x213d5e){return _0x3cf276[_0x8358('0x1a')](_0x2c2aeb);}return _0x3cf276[_0x8358('0x1b')](_0x2c2aeb)[_0x8358('0x1c')]();};}function respondWithResult(_0xda422b,_0x317ea0){_0x317ea0=_0x317ea0||0xc8;return function(_0x51d21d){if(_0x51d21d){return _0xda422b['status'](_0x317ea0)[_0x8358('0x1d')](_0x51d21d);}};}function respondWithFilteredResult(_0x4bad9c,_0x19da0b){return function(_0x4f412a){if(_0x4f412a){var _0x585969=typeof _0x19da0b['offset']===_0x8358('0x1e')&&typeof _0x19da0b[_0x8358('0x1f')]===_0x8358('0x1e');var _0x366a2b=_0x4f412a[_0x8358('0x20')];var _0x27a21d=_0x585969?0x0:_0x19da0b[_0x8358('0x21')];var _0x524bfb=_0x585969?_0x4f412a[_0x8358('0x20')]:_0x19da0b[_0x8358('0x21')]+_0x19da0b['limit'];var _0x31038d;if(_0x524bfb>=_0x366a2b){_0x524bfb=_0x366a2b;_0x31038d=0xc8;}else{_0x31038d=0xce;}_0x4bad9c[_0x8358('0x1b')](_0x31038d);return _0x4bad9c[_0x8358('0x22')](_0x8358('0x23'),_0x27a21d+'-'+_0x524bfb+'/'+_0x366a2b)['json'](_0x4f412a);}return null;};}function patchUpdates(_0x56d435){return function(_0x19e667){try{jsonpatch[_0x8358('0x24')](_0x19e667,_0x56d435,!![]);}catch(_0x45ae60){return BPromise['reject'](_0x45ae60);}return _0x19e667['save']();};}function saveUpdates(_0x1330b5,_0x528ce8){return function(_0x218537){if(_0x218537){return _0x218537[_0x8358('0x25')](_0x1330b5)[_0x8358('0x26')](function(_0x21e9ad){return _0x21e9ad;});}return null;};}function removeEntity(_0x25d82a,_0x3675c3){return function(_0x1ae76d){if(_0x1ae76d){return _0x1ae76d['destroy']()[_0x8358('0x26')](function(){_0x25d82a['status'](0xcc)[_0x8358('0x1c')]();});}};}function handleEntityNotFound(_0x5d8317,_0x248d2f){return function(_0x1beaa7){if(!_0x1beaa7){_0x5d8317[_0x8358('0x1a')](0x194);}return _0x1beaa7;};}function handleError(_0x542499,_0x153e02){_0x153e02=_0x153e02||0x1f4;return function(_0x37a172){logger[_0x8358('0x27')](_0x37a172[_0x8358('0x28')]);if(_0x37a172[_0x8358('0x29')]){delete _0x37a172[_0x8358('0x29')];}_0x542499[_0x8358('0x1b')](_0x153e02)['send'](_0x37a172);};}exports[_0x8358('0x2a')]=function(_0x3921bc,_0x334443){var _0x458eb9={},_0x460d5c={},_0x1c1987={'count':0x0,'rows':[]};var _0x79b688=_[_0x8358('0x2b')](db[_0x8358('0x2c')][_0x8358('0x2d')],function(_0x340b39){return{'name':_0x340b39[_0x8358('0x2e')],'type':_0x340b39[_0x8358('0x2f')]['key']};});_0x460d5c[_0x8358('0x30')]=_['map'](_0x79b688,'name');_0x460d5c[_0x8358('0x31')]=_[_0x8358('0x32')](_0x3921bc[_0x8358('0x31')]);_0x460d5c[_0x8358('0x33')]=_['intersection'](_0x460d5c[_0x8358('0x30')],_0x460d5c[_0x8358('0x31')]);_0x458eb9[_0x8358('0x34')]=_['intersection'](_0x460d5c[_0x8358('0x30')],qs[_0x8358('0x35')](_0x3921bc[_0x8358('0x31')][_0x8358('0x35')]));_0x458eb9['attributes']=_0x458eb9[_0x8358('0x34')]['length']?_0x458eb9[_0x8358('0x34')]:_0x460d5c[_0x8358('0x30')];if(!_0x3921bc[_0x8358('0x31')][_0x8358('0x36')](_0x8358('0x37'))){_0x458eb9[_0x8358('0x1f')]=qs[_0x8358('0x1f')](_0x3921bc[_0x8358('0x31')][_0x8358('0x1f')]);_0x458eb9[_0x8358('0x21')]=qs[_0x8358('0x21')](_0x3921bc['query']['offset']);}_0x458eb9[_0x8358('0x38')]=qs[_0x8358('0x39')](_0x3921bc[_0x8358('0x31')][_0x8358('0x39')]);_0x458eb9['where']=qs[_0x8358('0x33')](_[_0x8358('0x3a')](_0x3921bc[_0x8358('0x31')],_0x460d5c[_0x8358('0x33')]),_0x79b688);if(_0x3921bc[_0x8358('0x31')][_0x8358('0x3b')]){_0x458eb9[_0x8358('0x3c')]=_['merge'](_0x458eb9[_0x8358('0x3c')],{'$or':_[_0x8358('0x2b')](_0x79b688,function(_0x546d2e){if(_0x546d2e[_0x8358('0x2f')]!==_0x8358('0x3d')){var _0x26ef7c={};_0x26ef7c[_0x546d2e[_0x8358('0x29')]]={'$like':'%'+_0x3921bc['query'][_0x8358('0x3b')]+'%'};return _0x26ef7c;}})});}_0x458eb9=_[_0x8358('0x3e')]({},_0x458eb9,_0x3921bc[_0x8358('0x3f')]);var _0x5b047a={'where':_0x458eb9[_0x8358('0x3c')]};return db[_0x8358('0x2c')][_0x8358('0x20')](_0x5b047a)[_0x8358('0x26')](function(_0x2c2a27){_0x1c1987['count']=_0x2c2a27;if(_0x3921bc['query'][_0x8358('0x40')]){_0x458eb9['include']=[{'all':!![]}];}return db[_0x8358('0x2c')]['findAll'](_0x458eb9);})['then'](function(_0x2a0a8a){_0x1c1987[_0x8358('0x41')]=_0x2a0a8a;return _0x1c1987;})[_0x8358('0x26')](respondWithFilteredResult(_0x334443,_0x458eb9))[_0x8358('0x42')](handleError(_0x334443,null));};exports[_0x8358('0x43')]=function(_0x106778,_0x2cd23f){var _0x32334f={'raw':!![],'where':{'id':_0x106778['params']['id']}},_0x59272f={};_0x59272f['model']=_[_0x8358('0x32')](db[_0x8358('0x2c')]['rawAttributes']);_0x59272f[_0x8358('0x31')]=_[_0x8358('0x32')](_0x106778[_0x8358('0x31')]);_0x59272f[_0x8358('0x33')]=_['intersection'](_0x59272f[_0x8358('0x30')],_0x59272f['query']);_0x32334f[_0x8358('0x34')]=_['intersection'](_0x59272f[_0x8358('0x30')],qs[_0x8358('0x35')](_0x106778[_0x8358('0x31')]['fields']));_0x32334f[_0x8358('0x34')]=_0x32334f[_0x8358('0x34')][_0x8358('0x44')]?_0x32334f[_0x8358('0x34')]:_0x59272f['model'];if(_0x106778['query']['includeAll']){_0x32334f['include']=[{'all':!![]}];}_0x32334f=_[_0x8358('0x3e')]({},_0x32334f,_0x106778[_0x8358('0x3f')]);return db[_0x8358('0x2c')][_0x8358('0x45')](_0x32334f)[_0x8358('0x26')](handleEntityNotFound(_0x2cd23f,null))[_0x8358('0x26')](respondWithResult(_0x2cd23f,null))['catch'](handleError(_0x2cd23f,null));};exports[_0x8358('0x46')]=function(_0x3e906d,_0x3664cb){return db[_0x8358('0x2c')][_0x8358('0x46')](_0x3e906d[_0x8358('0x47')],{})[_0x8358('0x26')](respondWithResult(_0x3664cb,0xc9))[_0x8358('0x42')](handleError(_0x3664cb,null));};exports['update']=function(_0x467fbc,_0x2da39c){if(_0x467fbc['body']['id']){delete _0x467fbc['body']['id'];}return db[_0x8358('0x2c')]['find']({'where':{'id':_0x467fbc[_0x8358('0x48')]['id']}})[_0x8358('0x26')](handleEntityNotFound(_0x2da39c,null))[_0x8358('0x26')](saveUpdates(_0x467fbc[_0x8358('0x47')],null))[_0x8358('0x26')](respondWithResult(_0x2da39c,null))[_0x8358('0x42')](handleError(_0x2da39c,null));};exports[_0x8358('0x49')]=function(_0x134144,_0x57e15f){return db[_0x8358('0x2c')][_0x8358('0x45')]({'where':{'id':_0x134144[_0x8358('0x48')]['id']}})['then'](handleEntityNotFound(_0x57e15f,null))[_0x8358('0x26')](removeEntity(_0x57e15f,null))[_0x8358('0x42')](handleError(_0x57e15f,null));};