Built motion from commit 092f8824.|2.5.49
[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 _0x9e6d=['attributes','length','hasOwnProperty','nolimit','order','sort','where','merge','VIRTUAL','filter','includeAll','include','findAll','rows','params','keys','rawAttributes','options','find','catch','create','body','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','squel','crypto','jsforce','querystring','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','undefined','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','end','stack','name','send','index','map','WhatsappApplication','fieldName','type','key','model','query','filters','intersection','fields'];(function(_0x37e845,_0x219f9f){var _0x59e55b=function(_0x5dc6c8){while(--_0x5dc6c8){_0x37e845['push'](_0x37e845['shift']());}};_0x59e55b(++_0x219f9f);}(_0x9e6d,0x1d2));var _0xd9e6=function(_0x574378,_0x18210b){_0x574378=_0x574378-0x0;var _0x4674b8=_0x9e6d[_0x574378];return _0x4674b8;};'use strict';var emlformat=require(_0xd9e6('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xd9e6('0x1'));var jsonpatch=require(_0xd9e6('0x2'));var rp=require(_0xd9e6('0x3'));var moment=require('moment');var BPromise=require(_0xd9e6('0x4'));var Mustache=require(_0xd9e6('0x5'));var util=require(_0xd9e6('0x6'));var path=require(_0xd9e6('0x7'));var sox=require('sox');var csv=require(_0xd9e6('0x8'));var ejs=require(_0xd9e6('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xd9e6('0xa'));var crypto=require(_0xd9e6('0xb'));var jsforce=require(_0xd9e6('0xc'));var deskjs=require('desk.js');var toCsv=require(_0xd9e6('0x8'));var querystring=require(_0xd9e6('0xd'));var Papa=require('papaparse');var Redis=require(_0xd9e6('0xe'));var authService=require(_0xd9e6('0xf'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd9e6('0x10'));var logger=require(_0xd9e6('0x11'))(_0xd9e6('0x12'));var utils=require(_0xd9e6('0x13'));var config=require(_0xd9e6('0x14'));var licenseUtil=require(_0xd9e6('0x15'));var db=require(_0xd9e6('0x16'))['db'];function respondWithStatusCode(_0x350b53,_0x3bb322){_0x3bb322=_0x3bb322||0xcc;return function(_0x590c7b){if(_0x590c7b){return _0x350b53[_0xd9e6('0x17')](_0x3bb322);}return _0x350b53[_0xd9e6('0x18')](_0x3bb322)['end']();};}function respondWithResult(_0x51e0b2,_0x1b32bb){_0x1b32bb=_0x1b32bb||0xc8;return function(_0x5a9940){if(_0x5a9940){return _0x51e0b2[_0xd9e6('0x18')](_0x1b32bb)[_0xd9e6('0x19')](_0x5a9940);}};}function respondWithFilteredResult(_0x1404d6,_0x1591d5){return function(_0x79ce6a){if(_0x79ce6a){var _0x4eb591=typeof _0x1591d5['offset']===_0xd9e6('0x1a')&&typeof _0x1591d5['limit']===_0xd9e6('0x1a');var _0x232770=_0x79ce6a[_0xd9e6('0x1b')];var _0x2db831=_0x4eb591?0x0:_0x1591d5[_0xd9e6('0x1c')];var _0xa7fa90=_0x4eb591?_0x79ce6a[_0xd9e6('0x1b')]:_0x1591d5[_0xd9e6('0x1c')]+_0x1591d5[_0xd9e6('0x1d')];var _0x2604a0;if(_0xa7fa90>=_0x232770){_0xa7fa90=_0x232770;_0x2604a0=0xc8;}else{_0x2604a0=0xce;}_0x1404d6['status'](_0x2604a0);return _0x1404d6['set'](_0xd9e6('0x1e'),_0x2db831+'-'+_0xa7fa90+'/'+_0x232770)[_0xd9e6('0x19')](_0x79ce6a);}return null;};}function patchUpdates(_0x19dfd7){return function(_0x4a6e39){try{jsonpatch[_0xd9e6('0x1f')](_0x4a6e39,_0x19dfd7,!![]);}catch(_0x106026){return BPromise[_0xd9e6('0x20')](_0x106026);}return _0x4a6e39[_0xd9e6('0x21')]();};}function saveUpdates(_0x4f8db1,_0x4e7873){return function(_0x162e67){if(_0x162e67){return _0x162e67[_0xd9e6('0x22')](_0x4f8db1)[_0xd9e6('0x23')](function(_0x5dc0bd){return _0x5dc0bd;});}return null;};}function removeEntity(_0x33158e,_0x370c64){return function(_0x2393b9){if(_0x2393b9){return _0x2393b9[_0xd9e6('0x24')]()[_0xd9e6('0x23')](function(){_0x33158e[_0xd9e6('0x18')](0xcc)[_0xd9e6('0x25')]();});}};}function handleEntityNotFound(_0x5e2eef,_0x3a8c62){return function(_0x3b17f9){if(!_0x3b17f9){_0x5e2eef[_0xd9e6('0x17')](0x194);}return _0x3b17f9;};}function handleError(_0x3ea715,_0x147a4f){_0x147a4f=_0x147a4f||0x1f4;return function(_0x3e8b29){logger['error'](_0x3e8b29[_0xd9e6('0x26')]);if(_0x3e8b29[_0xd9e6('0x27')]){delete _0x3e8b29[_0xd9e6('0x27')];}_0x3ea715[_0xd9e6('0x18')](_0x147a4f)[_0xd9e6('0x28')](_0x3e8b29);};}exports[_0xd9e6('0x29')]=function(_0x105831,_0x2b2f4b){var _0x3e98d6={},_0x874243={},_0x3470f5={'count':0x0,'rows':[]};var _0x3c4043=_[_0xd9e6('0x2a')](db[_0xd9e6('0x2b')]['rawAttributes'],function(_0x339d5f){return{'name':_0x339d5f[_0xd9e6('0x2c')],'type':_0x339d5f[_0xd9e6('0x2d')][_0xd9e6('0x2e')]};});_0x874243[_0xd9e6('0x2f')]=_[_0xd9e6('0x2a')](_0x3c4043,_0xd9e6('0x27'));_0x874243[_0xd9e6('0x30')]=_['keys'](_0x105831[_0xd9e6('0x30')]);_0x874243[_0xd9e6('0x31')]=_[_0xd9e6('0x32')](_0x874243['model'],_0x874243[_0xd9e6('0x30')]);_0x3e98d6['attributes']=_[_0xd9e6('0x32')](_0x874243[_0xd9e6('0x2f')],qs['fields'](_0x105831['query'][_0xd9e6('0x33')]));_0x3e98d6[_0xd9e6('0x34')]=_0x3e98d6['attributes'][_0xd9e6('0x35')]?_0x3e98d6['attributes']:_0x874243[_0xd9e6('0x2f')];if(!_0x105831[_0xd9e6('0x30')][_0xd9e6('0x36')](_0xd9e6('0x37'))){_0x3e98d6[_0xd9e6('0x1d')]=qs[_0xd9e6('0x1d')](_0x105831[_0xd9e6('0x30')][_0xd9e6('0x1d')]);_0x3e98d6['offset']=qs['offset'](_0x105831[_0xd9e6('0x30')][_0xd9e6('0x1c')]);}_0x3e98d6[_0xd9e6('0x38')]=qs[_0xd9e6('0x39')](_0x105831[_0xd9e6('0x30')][_0xd9e6('0x39')]);_0x3e98d6[_0xd9e6('0x3a')]=qs[_0xd9e6('0x31')](_['pick'](_0x105831[_0xd9e6('0x30')],_0x874243[_0xd9e6('0x31')]),_0x3c4043);if(_0x105831[_0xd9e6('0x30')]['filter']){_0x3e98d6[_0xd9e6('0x3a')]=_[_0xd9e6('0x3b')](_0x3e98d6[_0xd9e6('0x3a')],{'$or':_[_0xd9e6('0x2a')](_0x3c4043,function(_0x3012f6){if(_0x3012f6[_0xd9e6('0x2d')]!==_0xd9e6('0x3c')){var _0x5f2f98={};_0x5f2f98[_0x3012f6['name']]={'$like':'%'+_0x105831['query'][_0xd9e6('0x3d')]+'%'};return _0x5f2f98;}})});}_0x3e98d6=_['merge']({},_0x3e98d6,_0x105831['options']);var _0x452b7b={'where':_0x3e98d6[_0xd9e6('0x3a')]};return db[_0xd9e6('0x2b')]['count'](_0x452b7b)[_0xd9e6('0x23')](function(_0x9d22ea){_0x3470f5[_0xd9e6('0x1b')]=_0x9d22ea;if(_0x105831['query'][_0xd9e6('0x3e')]){_0x3e98d6[_0xd9e6('0x3f')]=[{'all':!![]}];}return db[_0xd9e6('0x2b')][_0xd9e6('0x40')](_0x3e98d6);})[_0xd9e6('0x23')](function(_0x4b874e){_0x3470f5[_0xd9e6('0x41')]=_0x4b874e;return _0x3470f5;})['then'](respondWithFilteredResult(_0x2b2f4b,_0x3e98d6))['catch'](handleError(_0x2b2f4b,null));};exports['show']=function(_0xad2935,_0x101350){var _0x5f339f={'raw':!![],'where':{'id':_0xad2935[_0xd9e6('0x42')]['id']}},_0x2e3fa8={};_0x2e3fa8[_0xd9e6('0x2f')]=_[_0xd9e6('0x43')](db[_0xd9e6('0x2b')][_0xd9e6('0x44')]);_0x2e3fa8[_0xd9e6('0x30')]=_[_0xd9e6('0x43')](_0xad2935['query']);_0x2e3fa8[_0xd9e6('0x31')]=_[_0xd9e6('0x32')](_0x2e3fa8[_0xd9e6('0x2f')],_0x2e3fa8[_0xd9e6('0x30')]);_0x5f339f[_0xd9e6('0x34')]=_[_0xd9e6('0x32')](_0x2e3fa8[_0xd9e6('0x2f')],qs[_0xd9e6('0x33')](_0xad2935[_0xd9e6('0x30')]['fields']));_0x5f339f[_0xd9e6('0x34')]=_0x5f339f[_0xd9e6('0x34')][_0xd9e6('0x35')]?_0x5f339f[_0xd9e6('0x34')]:_0x2e3fa8[_0xd9e6('0x2f')];if(_0xad2935[_0xd9e6('0x30')][_0xd9e6('0x3e')]){_0x5f339f[_0xd9e6('0x3f')]=[{'all':!![]}];}_0x5f339f=_['merge']({},_0x5f339f,_0xad2935[_0xd9e6('0x45')]);return db[_0xd9e6('0x2b')][_0xd9e6('0x46')](_0x5f339f)[_0xd9e6('0x23')](handleEntityNotFound(_0x101350,null))[_0xd9e6('0x23')](respondWithResult(_0x101350,null))[_0xd9e6('0x47')](handleError(_0x101350,null));};exports[_0xd9e6('0x48')]=function(_0x1f2265,_0x1b9973){return db['WhatsappApplication'][_0xd9e6('0x48')](_0x1f2265[_0xd9e6('0x49')],{})[_0xd9e6('0x23')](respondWithResult(_0x1b9973,0xc9))['catch'](handleError(_0x1b9973,null));};exports[_0xd9e6('0x22')]=function(_0x324fe8,_0x14719a){if(_0x324fe8[_0xd9e6('0x49')]['id']){delete _0x324fe8[_0xd9e6('0x49')]['id'];}return db[_0xd9e6('0x2b')][_0xd9e6('0x46')]({'where':{'id':_0x324fe8[_0xd9e6('0x42')]['id']}})[_0xd9e6('0x23')](handleEntityNotFound(_0x14719a,null))[_0xd9e6('0x23')](saveUpdates(_0x324fe8[_0xd9e6('0x49')],null))['then'](respondWithResult(_0x14719a,null))['catch'](handleError(_0x14719a,null));};exports[_0xd9e6('0x24')]=function(_0x37ae2d,_0x3a3325){return db[_0xd9e6('0x2b')][_0xd9e6('0x46')]({'where':{'id':_0x37ae2d[_0xd9e6('0x42')]['id']}})['then'](handleEntityNotFound(_0x3a3325,null))[_0xd9e6('0x23')](removeEntity(_0x3a3325,null))['catch'](handleError(_0x3a3325,null));};