Built motion from commit 092f8824.|2.5.49
[motion2.git] / server / api / userProfile / userProfile.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 _0x117c=['addResources','bulkCreate','removeResources','ids','getResources','nolimit','No\x20User\x20Profile\x20found\x20for\x20id\x20','fast-json-patch','bluebird','mustache','util','path','sox','to-csv','fs-extra','lodash','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/license/util','redis','defaults','localhost','./userProfile.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','Content-Range','apply','update','then','destroy','error','stack','name','send','UserProfile','rawAttributes','fieldName','key','map','query','intersection','model','fields','attributes','length','hasOwnProperty','order','sort','where','filters','merge','type','filter','options','includeAll','include','findAll','rows','catch','show','keys','find','create','body','clone','params','get','createdAt','crudPermissions','omit','updatedAt','sequelize','transaction','UserProfileSection','each','autoAssociation','UserProfileResource','sectionId','userProfileId','Resources','describe','addSections','push','removeSections','getSections','enabled','includes','isEmpty','subsections','forEach','resourceId','Plugin'];(function(_0x162802,_0x555c15){var _0x24d606=function(_0x4eff2f){while(--_0x4eff2f){_0x162802['push'](_0x162802['shift']());}};_0x24d606(++_0x555c15);}(_0x117c,0x71));var _0xc117=function(_0x4c403d,_0x5ef49f){_0x4c403d=_0x4c403d-0x0;var _0x5a0c35=_0x117c[_0x4c403d];return _0x5a0c35;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xc117('0x0'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xc117('0x1'));var Mustache=require(_0xc117('0x2'));var util=require(_0xc117('0x3'));var path=require(_0xc117('0x4'));var sox=require(_0xc117('0x5'));var csv=require(_0xc117('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xc117('0x7'));var _=require(_0xc117('0x8'));var squel=require('squel');var crypto=require(_0xc117('0x9'));var jsforce=require('jsforce');var deskjs=require(_0xc117('0xa'));var toCsv=require(_0xc117('0x6'));var querystring=require(_0xc117('0xb'));var Papa=require(_0xc117('0xc'));var Redis=require(_0xc117('0xd'));var authService=require('../../components/auth/service');var qs=require(_0xc117('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xc117('0xf'));var logger=require('../../config/logger')(_0xc117('0x10'));var utils=require(_0xc117('0x11'));var config=require('../../config/environment');var licenseUtil=require(_0xc117('0x12'));var db=require('../../mysqldb')['db'];config[_0xc117('0x13')]=_[_0xc117('0x14')](config[_0xc117('0x13')],{'host':_0xc117('0x15'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xc117('0x13')]));require(_0xc117('0x16'))[_0xc117('0x17')](socket);function respondWithStatusCode(_0x9dec18,_0x534955){_0x534955=_0x534955||0xcc;return function(_0x375334){if(_0x375334){return _0x9dec18[_0xc117('0x18')](_0x534955);}return _0x9dec18[_0xc117('0x19')](_0x534955)[_0xc117('0x1a')]();};}function respondWithResult(_0x58bce8,_0x5350e9){_0x5350e9=_0x5350e9||0xc8;return function(_0x1dfaa6){if(_0x1dfaa6){return _0x58bce8[_0xc117('0x19')](_0x5350e9)[_0xc117('0x1b')](_0x1dfaa6);}};}function respondWithFilteredResult(_0x2c3a28,_0xe01373){return function(_0x339239){if(_0x339239){var _0x19a34c=typeof _0xe01373[_0xc117('0x1c')]===_0xc117('0x1d')&&typeof _0xe01373[_0xc117('0x1e')]===_0xc117('0x1d');var _0x224395=_0x339239['count'];var _0x1b9095=_0x19a34c?0x0:_0xe01373[_0xc117('0x1c')];var _0xf5307f=_0x19a34c?_0x339239[_0xc117('0x1f')]:_0xe01373[_0xc117('0x1c')]+_0xe01373[_0xc117('0x1e')];var _0x32ef4e;if(_0xf5307f>=_0x224395){_0xf5307f=_0x224395;_0x32ef4e=0xc8;}else{_0x32ef4e=0xce;}_0x2c3a28['status'](_0x32ef4e);return _0x2c3a28['set'](_0xc117('0x20'),_0x1b9095+'-'+_0xf5307f+'/'+_0x224395)[_0xc117('0x1b')](_0x339239);}return null;};}function patchUpdates(_0x1492d0){return function(_0x219819){try{jsonpatch[_0xc117('0x21')](_0x219819,_0x1492d0,!![]);}catch(_0x2531f1){return BPromise['reject'](_0x2531f1);}return _0x219819['save']();};}function saveUpdates(_0x3d670e,_0x481e10){return function(_0xa0ee6b){if(_0xa0ee6b){return _0xa0ee6b[_0xc117('0x22')](_0x3d670e)[_0xc117('0x23')](function(_0x4e6616){return _0x4e6616;});}return null;};}function removeEntity(_0x3d71f8,_0xfefce5){return function(_0x41e376){if(_0x41e376){return _0x41e376[_0xc117('0x24')]()[_0xc117('0x23')](function(){_0x3d71f8[_0xc117('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x334041,_0x5da63f){return function(_0x4a569e){if(!_0x4a569e){_0x334041[_0xc117('0x18')](0x194);}return _0x4a569e;};}function handleError(_0x35efea,_0x280c72){_0x280c72=_0x280c72||0x1f4;return function(_0x52c152){logger[_0xc117('0x25')](_0x52c152[_0xc117('0x26')]);if(_0x52c152['name']){delete _0x52c152[_0xc117('0x27')];}_0x35efea[_0xc117('0x19')](_0x280c72)[_0xc117('0x28')](_0x52c152);};}exports['index']=function(_0x416074,_0x5eabf1){var _0x396fa3={},_0x168a76={},_0x21eb0f={'count':0x0,'rows':[]};var _0x139e33=_['map'](db[_0xc117('0x29')][_0xc117('0x2a')],function(_0x180d0a){return{'name':_0x180d0a[_0xc117('0x2b')],'type':_0x180d0a['type'][_0xc117('0x2c')]};});_0x168a76['model']=_[_0xc117('0x2d')](_0x139e33,'name');_0x168a76[_0xc117('0x2e')]=_['keys'](_0x416074[_0xc117('0x2e')]);_0x168a76['filters']=_[_0xc117('0x2f')](_0x168a76[_0xc117('0x30')],_0x168a76[_0xc117('0x2e')]);_0x396fa3['attributes']=_[_0xc117('0x2f')](_0x168a76[_0xc117('0x30')],qs[_0xc117('0x31')](_0x416074[_0xc117('0x2e')][_0xc117('0x31')]));_0x396fa3[_0xc117('0x32')]=_0x396fa3[_0xc117('0x32')][_0xc117('0x33')]?_0x396fa3['attributes']:_0x168a76[_0xc117('0x30')];if(!_0x416074[_0xc117('0x2e')][_0xc117('0x34')]('nolimit')){_0x396fa3[_0xc117('0x1e')]=qs[_0xc117('0x1e')](_0x416074[_0xc117('0x2e')][_0xc117('0x1e')]);_0x396fa3[_0xc117('0x1c')]=qs[_0xc117('0x1c')](_0x416074[_0xc117('0x2e')]['offset']);}_0x396fa3[_0xc117('0x35')]=qs[_0xc117('0x36')](_0x416074['query'][_0xc117('0x36')]);_0x396fa3[_0xc117('0x37')]=qs[_0xc117('0x38')](_['pick'](_0x416074['query'],_0x168a76['filters']),_0x139e33);if(_0x416074[_0xc117('0x2e')]['filter']){_0x396fa3[_0xc117('0x37')]=_[_0xc117('0x39')](_0x396fa3[_0xc117('0x37')],{'$or':_[_0xc117('0x2d')](_0x139e33,function(_0xfcb2c4){if(_0xfcb2c4[_0xc117('0x3a')]!=='VIRTUAL'){var _0xeba310={};_0xeba310[_0xfcb2c4[_0xc117('0x27')]]={'$like':'%'+_0x416074['query'][_0xc117('0x3b')]+'%'};return _0xeba310;}})});}_0x396fa3=_['merge']({},_0x396fa3,_0x416074[_0xc117('0x3c')]);var _0x15a3a6={'where':_0x396fa3[_0xc117('0x37')]};return db['UserProfile'][_0xc117('0x1f')](_0x15a3a6)[_0xc117('0x23')](function(_0x2e0820){_0x21eb0f[_0xc117('0x1f')]=_0x2e0820;if(_0x416074['query'][_0xc117('0x3d')]){_0x396fa3[_0xc117('0x3e')]=[{'all':!![]}];}return db['UserProfile'][_0xc117('0x3f')](_0x396fa3);})[_0xc117('0x23')](function(_0x5128ef){_0x21eb0f[_0xc117('0x40')]=_0x5128ef;return _0x21eb0f;})['then'](respondWithFilteredResult(_0x5eabf1,_0x396fa3))[_0xc117('0x41')](handleError(_0x5eabf1,null));};exports[_0xc117('0x42')]=function(_0x19cf42,_0x3a5079){var _0x498a18={'raw':![],'where':{'id':_0x19cf42['params']['id']}},_0x5762ab={};_0x5762ab[_0xc117('0x30')]=_[_0xc117('0x43')](db['UserProfile']['rawAttributes']);_0x5762ab['query']=_[_0xc117('0x43')](_0x19cf42[_0xc117('0x2e')]);_0x5762ab[_0xc117('0x38')]=_[_0xc117('0x2f')](_0x5762ab[_0xc117('0x30')],_0x5762ab[_0xc117('0x2e')]);_0x498a18['attributes']=_['intersection'](_0x5762ab[_0xc117('0x30')],qs[_0xc117('0x31')](_0x19cf42['query']['fields']));_0x498a18[_0xc117('0x32')]=_0x498a18['attributes'][_0xc117('0x33')]?_0x498a18[_0xc117('0x32')]:_0x5762ab[_0xc117('0x30')];if(_0x19cf42[_0xc117('0x2e')]['includeAll']){_0x498a18[_0xc117('0x3e')]=[{'all':!![]}];}_0x498a18=_[_0xc117('0x39')]({},_0x498a18,_0x19cf42['options']);return db[_0xc117('0x29')][_0xc117('0x44')](_0x498a18)['then'](handleEntityNotFound(_0x3a5079,null))['then'](respondWithResult(_0x3a5079,null))['catch'](handleError(_0x3a5079,null));};exports[_0xc117('0x45')]=function(_0x461d76,_0x2b7534){return db[_0xc117('0x29')][_0xc117('0x45')](_0x461d76[_0xc117('0x46')],{})['then'](respondWithResult(_0x2b7534,0xc9))['catch'](handleError(_0x2b7534,null));};exports[_0xc117('0x47')]=function(_0x293e84,_0x444129){var _0x2171c1={'where':{'id':_0x293e84[_0xc117('0x48')]['id']}},_0x384162={};_0x384162['model']=_[_0xc117('0x43')](db[_0xc117('0x29')][_0xc117('0x2a')]);_0x2171c1[_0xc117('0x32')]=_[_0xc117('0x2f')](_0x384162[_0xc117('0x30')],qs[_0xc117('0x31')](_0x293e84[_0xc117('0x2e')][_0xc117('0x31')]));_0x2171c1[_0xc117('0x32')]=_0x2171c1['attributes'][_0xc117('0x33')]?_0x2171c1['attributes']:_0x384162[_0xc117('0x30')];if(_0x293e84['query'][_0xc117('0x3d')]){_0x2171c1[_0xc117('0x3e')]=[{'all':!![]}];}_0x2171c1=_[_0xc117('0x39')]({},_0x2171c1,_0x293e84[_0xc117('0x3c')]);return db[_0xc117('0x29')]['find'](_0x2171c1)[_0xc117('0x23')](handleEntityNotFound(_0x444129,null))[_0xc117('0x23')](function(_0x49af31){if(_0x49af31){var _0x424243=_0x49af31[_0xc117('0x49')]({'plain':!![]});_0x424243=qs['omit'](_0x424243,['id',_0xc117('0x4a'),'updatedAt',_0xc117('0x4b')]);_0x293e84['body']=_[_0xc117('0x4c')](_0x293e84['body'],['id',_0xc117('0x4a'),_0xc117('0x4d')]);return db[_0xc117('0x4e')][_0xc117('0x4f')](function(_0x4074b8){return db[_0xc117('0x29')]['create'](_['merge'](_0x424243,_0x293e84[_0xc117('0x46')]),{'include':_0x293e84['query'][_0xc117('0x3d')]?[{'all':!![]}]:undefined,'transaction':_0x4074b8})[_0xc117('0x23')](function(_0x13e1df){var _0x4aec46=_0x13e1df[_0xc117('0x49')]({'plain':!![]});return db[_0xc117('0x50')]['findAll']({'where':{'userProfileId':_0x293e84[_0xc117('0x48')]['id']},'raw':!![]})[_0xc117('0x23')](function(_0x2d8c07){if(_0x2d8c07){return BPromise[_0xc117('0x51')](_0x2d8c07,function(_0x14529d){return new BPromise(function(_0x27663d,_0x34f8cb){if(_0x14529d[_0xc117('0x52')]===null||_0x14529d[_0xc117('0x52')]===0x1)_0x27663d(null);return db[_0xc117('0x53')][_0xc117('0x3f')]({'where':{'sectionId':_0x14529d['id']},'raw':!![]})[_0xc117('0x23')](function(_0x3bfeda){var _0x55e51d=_['map'](_0x3bfeda,function(_0x4421f4){return qs[_0xc117('0x4c')](_0x4421f4,['id','createdAt',_0xc117('0x4d'),_0xc117('0x54')]);});_0x27663d(_0x55e51d);})[_0xc117('0x41')](function(_0x17c753){_0x34f8cb(_0x17c753);});})[_0xc117('0x23')](function(_0x9783d8){var _0x32ed57=qs[_0xc117('0x4c')](_0x14529d,['id',_0xc117('0x4a'),_0xc117('0x4d')]);_0x32ed57[_0xc117('0x55')]=_0x4aec46['id'];if(_0x9783d8)_0x32ed57['Resources']=_0x9783d8;return _0x32ed57;})[_0xc117('0x23')](function(_0x2fd5dc){return db[_0xc117('0x50')][_0xc117('0x45')](_0x2fd5dc,{'include':[{'model':db[_0xc117('0x53')],'as':_0xc117('0x56')}],'raw':!![],'transaction':_0x4074b8});});})[_0xc117('0x23')](function(){return _0x4aec46;});}});});});}})[_0xc117('0x23')](respondWithResult(_0x444129,0xc9))[_0xc117('0x41')](handleError(_0x444129,null));};exports[_0xc117('0x22')]=function(_0x59df9f,_0x29a9ad){if(_0x59df9f['body']['id']){delete _0x59df9f[_0xc117('0x46')]['id'];}return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x59df9f[_0xc117('0x48')]['id']}})[_0xc117('0x23')](handleEntityNotFound(_0x29a9ad,null))[_0xc117('0x23')](saveUpdates(_0x59df9f['body'],null))[_0xc117('0x23')](respondWithResult(_0x29a9ad,null))[_0xc117('0x41')](handleError(_0x29a9ad,null));};exports[_0xc117('0x24')]=function(_0x200a7f,_0x2907a5){return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x200a7f[_0xc117('0x48')]['id']}})[_0xc117('0x23')](handleEntityNotFound(_0x2907a5,null))[_0xc117('0x23')](removeEntity(_0x2907a5,null))[_0xc117('0x41')](handleError(_0x2907a5,null));};exports['describe']=function(_0x2aebbd,_0x136945){return db['UserProfile'][_0xc117('0x57')]()['then'](respondWithResult(_0x136945,null))['catch'](handleError(_0x136945,null));};exports[_0xc117('0x58')]=function(_0x42032c,_0x3b45ba){var _0x5e92ec=_0x42032c['body'];return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x42032c['params']['id']}})[_0xc117('0x23')](handleEntityNotFound(_0x3b45ba,null))[_0xc117('0x23')](function(_0x19537f){if(_0x19537f){return db['sequelize'][_0xc117('0x4f')](function(_0x54100c){return db[_0xc117('0x50')]['destroy']({'where':{'userProfileId':_0x42032c['params']['id'],'sectionId':_[_0xc117('0x2d')](_0x5e92ec,function(_0x120df9){return _0x120df9[_0xc117('0x54')];})},'transaction':_0x54100c})[_0xc117('0x23')](function(){var _0x45a3a9=_[_0xc117('0x2d')](_0x5e92ec,function(_0x1610d0){_0x1610d0[_0xc117('0x55')]=_0x42032c[_0xc117('0x48')]['id'];return _0x1610d0;});var _0x2125a6=[];return BPromise[_0xc117('0x51')](_0x45a3a9,function(_0x29561e){return db['UserProfileSection'][_0xc117('0x45')](_0x29561e,{'include':[{'model':db[_0xc117('0x53')],'as':_0xc117('0x56')}],'raw':!![],'transaction':_0x54100c})[_0xc117('0x23')](function(_0x1514b2){_0x2125a6[_0xc117('0x59')](_0x1514b2[_0xc117('0x49')]({'plain':!![]}));});})['then'](function(){return _0x2125a6;});});});}})[_0xc117('0x23')](function(_0x567d3c){return _0x567d3c;})[_0xc117('0x23')](respondWithResult(_0x3b45ba,null))[_0xc117('0x41')](handleError(_0x3b45ba,null));};exports[_0xc117('0x5a')]=function(_0x460227,_0x1dcd93){var _0x2f7ac7;return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x460227['params']['id']},'attributes':['id',_0xc117('0x27')]})[_0xc117('0x23')](handleEntityNotFound(_0x1dcd93,null))['then'](function(_0x3f4dda){if(_0x3f4dda){_0x2f7ac7=_0x3f4dda;return db['UserProfileSection'][_0xc117('0x24')]({'where':{'userProfileId':_0x460227[_0xc117('0x48')]['id'],'sectionId':_0x460227[_0xc117('0x2e')]['ids']}});}})['then'](function(){return _0x2f7ac7;})[_0xc117('0x23')](respondWithStatusCode(_0x1dcd93,null))[_0xc117('0x41')](handleError(_0x1dcd93,null));};exports[_0xc117('0x5b')]=function(_0x5d3ec0,_0xd1efc){var _0xb004ce=[];var _0x1a328a=[];return db['UserProfileSection']['findAll']({'where':{'userProfileId':_0x5d3ec0['params']['id']},'raw':!![]})[_0xc117('0x23')](function(_0x1c099f){_0xb004ce=_[_0xc117('0x3b')](_0x1c099f,function(_0x2683b5){return _0x2683b5[_0xc117('0x5c')]===0x1||_[_0xc117('0x5d')]([0x3eb,0x709],_0x2683b5[_0xc117('0x54')]);});if(!_[_0xc117('0x5e')](_0xb004ce)){return _[_0xc117('0x2d')](_0xb004ce,function(_0x5df9c0){return _0x5df9c0[_0xc117('0x54')];});}else{return;}})[_0xc117('0x23')](function(_0x3294be){if(_0x3294be)_0x1a328a=_0x3294be;if(_[_0xc117('0x5d')](_0x1a328a,0x64)){var _0x2789f6=_['find'](_0xb004ce,{'sectionId':0x64});return hasDefaultDashboard(_0x2789f6)[_0xc117('0x23')](function(_0x3544fb){return _[_0xc117('0x2d')](_0xb004ce,function(_0x4d0cba){if(_0x4d0cba[_0xc117('0x54')]===0x64){_0x4d0cba[_0xc117('0x5f')]=_0x3544fb;}return _0x4d0cba;});});}else{return;}})[_0xc117('0x23')](function(_0x5096f2){if(_0x5096f2)_0xb004ce=_0x5096f2;if(_['includes'](_0x1a328a,0x3eb)){var _0x33a0aa=_[_0xc117('0x44')](_0xb004ce,{'sectionId':0x3eb});return getCustomDashboards(_0x33a0aa)['then'](function(_0x5ebde6){return _['map'](_0xb004ce,function(_0x51d741){if(_0x33a0aa[_0xc117('0x5c')]){if(_0x51d741[_0xc117('0x54')]===0x3eb){_0x51d741[_0xc117('0x5f')]=_0x5ebde6;}}else{if(_0x51d741['sectionId']===0x64){_0x51d741[_0xc117('0x5f')]=_0x5ebde6;}}return _0x51d741;});});}else{return;}})['then'](function(_0x4f0db1){if(_0x4f0db1)_0xb004ce=_0x4f0db1;if(_['includes'](_0x1a328a,0x709)){var _0x58525a=_[_0xc117('0x44')](_0xb004ce,{'sectionId':0x709});return getPlugins(_0x58525a)[_0xc117('0x23')](function(_0x9f271a){if(_0x58525a['enabled']){return _[_0xc117('0x2d')](_0xb004ce,function(_0x571905){if(_0x571905[_0xc117('0x54')]===0x709){_0x571905['subsections']=_0x9f271a;}return _0x571905;});}else{var _0x304b90={'sectionId':0x76c,'enabled':0x1,'subsections':_0x9f271a};var _0x407645=_['map'](_0xb004ce);_0x407645[_0xc117('0x59')](_0x304b90);return _0x407645;}});}else{return;}})[_0xc117('0x23')](function(_0x56d082){if(_0x56d082)_0xb004ce=_0x56d082;return _[_0xc117('0x3b')](_0xb004ce,[_0xc117('0x5c'),0x1]);})[_0xc117('0x23')](respondWithResult(_0xd1efc,null))[_0xc117('0x41')](handleError(_0xd1efc,null));};function hasDefaultDashboard(_0x3a1a1d){var _0x4b888e=[0x65];return new BPromise(function(_0x5174c0,_0x284a87){try{if(_0x3a1a1d[_0xc117('0x52')]){_0x5174c0(_0x4b888e);}else{return db['UserProfileResource']['findOne']({'where':{'sectionId':_0x3a1a1d['id']},'raw':!![]})[_0xc117('0x23')](function(_0x1ade78){_0x1ade78?_0x5174c0(_0x4b888e):_0x5174c0();});}}catch(_0x19c831){_0x284a87(_0x19c831);}});}function getCustomDashboards(_0x850b57){var _0x14be09=[];return new BPromise(function(_0x4aa621,_0x2e5a27){try{if(_0x850b57[_0xc117('0x52')]){return db['Dashboard'][_0xc117('0x3f')]({'raw':!![]})[_0xc117('0x23')](function(_0x4fed85){_0x4fed85['forEach'](function(_0xe1c312){_0x14be09[_0xc117('0x59')](_0xe1c312['id']+0x1869f);});_0x4aa621(_0x14be09);});}else{return db['UserProfileResource'][_0xc117('0x3f')]({'where':{'sectionId':_0x850b57['id']},'raw':!![]})[_0xc117('0x23')](function(_0x5324a0){_0x5324a0[_0xc117('0x60')](function(_0x364478){_0x14be09[_0xc117('0x59')](_0x364478[_0xc117('0x61')]+0x1869f);});_0x4aa621(_0x14be09);});}}catch(_0x12e282){_0x2e5a27(_0x12e282);}});}function getPlugins(_0x3acd3f){var _0x369f26=[];return new BPromise(function(_0x229c1e,_0xbe3aed){try{if(_0x3acd3f[_0xc117('0x52')]){return db[_0xc117('0x62')][_0xc117('0x3f')]({'raw':!![]})[_0xc117('0x23')](function(_0x1af515){_0x1af515['forEach'](function(_0x533403){_0x369f26[_0xc117('0x59')](_0x533403['id']+0x15b38);});_0x229c1e(_0x369f26);});}else{return db[_0xc117('0x53')][_0xc117('0x3f')]({'where':{'sectionId':_0x3acd3f['id']},'raw':!![]})[_0xc117('0x23')](function(_0x54a0a3){_0x54a0a3['forEach'](function(_0x1f668b){_0x369f26[_0xc117('0x59')](_0x1f668b['resourceId']+0x15b38);});_0x229c1e(_0x369f26);});}}catch(_0x34a112){_0xbe3aed(_0x34a112);}});}exports[_0xc117('0x63')]=function(_0x1e1a2d,_0x529984){return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x1e1a2d[_0xc117('0x48')]['id']}})[_0xc117('0x23')](handleEntityNotFound(_0x529984,null))[_0xc117('0x23')](function(_0xbeabb0){if(_0xbeabb0){return db[_0xc117('0x4e')][_0xc117('0x4f')](function(_0xfb816a){return db[_0xc117('0x50')][_0xc117('0x3f')]({'where':{'userProfileId':_0x1e1a2d[_0xc117('0x48')]['id']},'attributes':['id'],'raw':!![]})['then'](function(_0x4f4de9){if(_0x4f4de9){return db[_0xc117('0x50')][_0xc117('0x24')]({'where':{'userProfileId':_0x1e1a2d['params']['id'],'id':_[_0xc117('0x2d')](_0x4f4de9,function(_0x4d92a4){return _0x4d92a4['id'];})},'transaction':_0xfb816a});}})[_0xc117('0x23')](function(_0x122b4b){var _0x1be905=_['map'](_0x1e1a2d['body'],function(_0x5c253c){_0x5c253c['userProfileId']=_0x1e1a2d['params']['id'];return _0x5c253c;});return db['UserProfileSection'][_0xc117('0x64')](_0x1be905,{'raw':!![],'transaction':_0xfb816a});})['then'](function(_0x1034e6){var _0x4ae1d7=_[_0xc117('0x3b')](_[_0xc117('0x2d')](_0x1034e6,function(_0x49331d){return _0x49331d['get']({'plain':!![]});}),{'includeAll':![]});if(_0x4ae1d7){return db[_0xc117('0x50')][_0xc117('0x3f')]({'where':{'userProfileId':_0x1e1a2d[_0xc117('0x48')]['id'],'sectionId':_[_0xc117('0x2d')](_0x4ae1d7,function(_0x3fe381){return _0x3fe381[_0xc117('0x54')];})},'attributes':['id',_0xc117('0x54')],'raw':!![]})['then'](function(_0x34ced6){var _0x4afe3e=_[_0xc117('0x2d')](_0x1e1a2d[_0xc117('0x46')],function(_0xd443da){_0xd443da[_0xc117('0x55')]=_0x1e1a2d['params']['id'];return _0xd443da;});return db[_0xc117('0x53')][_0xc117('0x64')](_0x4afe3e,{'raw':!![],'transaction':_0xfb816a});});}})['catch'](handleError(_0x529984,null));});}})['then'](function(_0x129959){var _0x2c0bce=_['map'](_0x129959,function(_0x5c8697){return _0x5c8697[_0xc117('0x49')]({'plain':!![]});});})['then'](respondWithResult(_0x529984,null))[_0xc117('0x41')](handleError(_0x529984,null));};exports['removeResources']=function(_0x1935f4,_0x31e987,_0xd3f6d1){return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x1935f4[_0xc117('0x48')]['id']}})[_0xc117('0x23')](handleEntityNotFound(_0x31e987,null))['then'](function(_0x2db852){if(_0x2db852){return _0x2db852[_0xc117('0x65')](_0x1935f4[_0xc117('0x2e')][_0xc117('0x66')]);}})[_0xc117('0x23')](respondWithStatusCode(_0x31e987,null))[_0xc117('0x41')](handleError(_0x31e987,null));};exports[_0xc117('0x67')]=function(_0x2fde89,_0x31f4b4){var _0x5a218d={};if(!_0x2fde89[_0xc117('0x2e')]['section'])throw new Error('Missing\x20section\x20parameter');if(!_0x2fde89[_0xc117('0x2e')][_0xc117('0x34')](_0xc117('0x68'))){_0x5a218d[_0xc117('0x1e')]=qs[_0xc117('0x1e')](_0x2fde89[_0xc117('0x2e')][_0xc117('0x1e')]);_0x5a218d[_0xc117('0x1c')]=qs[_0xc117('0x1c')](_0x2fde89[_0xc117('0x2e')][_0xc117('0x1c')]);}return db[_0xc117('0x29')][_0xc117('0x44')]({'where':{'id':_0x2fde89[_0xc117('0x48')]['id']}})[_0xc117('0x23')](function(_0x2f191e){if(!_0x2f191e)throw new Error(_0xc117('0x69')+_0x2fde89[_0xc117('0x48')]['id']);return db[_0xc117('0x29')]['getResources'](_0x2fde89);})[_0xc117('0x23')](respondWithFilteredResult(_0x31f4b4,_0x5a218d))[_0xc117('0x41')](handleError(_0x31f4b4,null));};