Built motion from commit 3e059bc2.|2.5.32
[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 _0xb9e7=['omit','createdAt','updatedAt','crudPermissions','sequelize','transaction','get','autoAssociation','sectionId','userProfileId','Resources','UserProfileResource','describe','addSections','UserProfileSection','each','push','removeSections','ids','getSections','enabled','includes','isEmpty','subsections','Dashboard','Plugin','forEach','resourceId','addResources','bulkCreate','removeResources','getResources','section','Missing\x20section\x20parameter','No\x20User\x20Profile\x20found\x20for\x20id\x20','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','to-csv','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/license/util','redis','localhost','socket.io-emitter','register','sendStatus','status','end','json','offset','undefined','count','limit','Content-Range','apply','reject','save','update','then','destroy','error','name','send','index','UserProfile','rawAttributes','fieldName','type','model','map','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','sort','pick','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','params','length','find','create','body','clone'];(function(_0x79324e,_0x4af67e){var _0x555666=function(_0x15d9c2){while(--_0x15d9c2){_0x79324e['push'](_0x79324e['shift']());}};_0x555666(++_0x4af67e);}(_0xb9e7,0x1df));var _0x7b9e=function(_0x1b8f5a,_0x57c154){_0x1b8f5a=_0x1b8f5a-0x0;var _0x594189=_0xb9e7[_0x1b8f5a];return _0x594189;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x7b9e('0x0'));var zipdir=require(_0x7b9e('0x1'));var jsonpatch=require(_0x7b9e('0x2'));var rp=require(_0x7b9e('0x3'));var moment=require(_0x7b9e('0x4'));var BPromise=require(_0x7b9e('0x5'));var Mustache=require('mustache');var util=require(_0x7b9e('0x6'));var path=require(_0x7b9e('0x7'));var sox=require('sox');var csv=require(_0x7b9e('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x7b9e('0x9'));var _=require(_0x7b9e('0xa'));var squel=require(_0x7b9e('0xb'));var crypto=require(_0x7b9e('0xc'));var jsforce=require(_0x7b9e('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x7b9e('0x8'));var querystring=require(_0x7b9e('0xe'));var Papa=require(_0x7b9e('0xf'));var Redis=require('ioredis');var authService=require(_0x7b9e('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x7b9e('0x11'));var hardwareService=require(_0x7b9e('0x12'));var logger=require('../../config/logger')('api');var utils=require(_0x7b9e('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0x7b9e('0x14'));var db=require('../../mysqldb')['db'];config['redis']=_['defaults'](config[_0x7b9e('0x15')],{'host':_0x7b9e('0x16'),'port':0x18eb});var socket=require(_0x7b9e('0x17'))(new Redis(config[_0x7b9e('0x15')]));require('./userProfile.socket')[_0x7b9e('0x18')](socket);function respondWithStatusCode(_0x1fa0e8,_0x27d807){_0x27d807=_0x27d807||0xcc;return function(_0x13ddc0){if(_0x13ddc0){return _0x1fa0e8[_0x7b9e('0x19')](_0x27d807);}return _0x1fa0e8[_0x7b9e('0x1a')](_0x27d807)[_0x7b9e('0x1b')]();};}function respondWithResult(_0x504954,_0x1c573f){_0x1c573f=_0x1c573f||0xc8;return function(_0x6f90f8){if(_0x6f90f8){return _0x504954['status'](_0x1c573f)[_0x7b9e('0x1c')](_0x6f90f8);}};}function respondWithFilteredResult(_0x53a085,_0x2afe9f){return function(_0x455b45){if(_0x455b45){var _0x4c8728=typeof _0x2afe9f[_0x7b9e('0x1d')]===_0x7b9e('0x1e')&&typeof _0x2afe9f['limit']==='undefined';var _0x1fc588=_0x455b45[_0x7b9e('0x1f')];var _0x31dd0b=_0x4c8728?0x0:_0x2afe9f[_0x7b9e('0x1d')];var _0x524d43=_0x4c8728?_0x455b45[_0x7b9e('0x1f')]:_0x2afe9f[_0x7b9e('0x1d')]+_0x2afe9f[_0x7b9e('0x20')];var _0x112374;if(_0x524d43>=_0x1fc588){_0x524d43=_0x1fc588;_0x112374=0xc8;}else{_0x112374=0xce;}_0x53a085[_0x7b9e('0x1a')](_0x112374);return _0x53a085['set'](_0x7b9e('0x21'),_0x31dd0b+'-'+_0x524d43+'/'+_0x1fc588)[_0x7b9e('0x1c')](_0x455b45);}return null;};}function patchUpdates(_0x7db95f){return function(_0x9b24da){try{jsonpatch[_0x7b9e('0x22')](_0x9b24da,_0x7db95f,!![]);}catch(_0x258712){return BPromise[_0x7b9e('0x23')](_0x258712);}return _0x9b24da[_0x7b9e('0x24')]();};}function saveUpdates(_0x2b4b86,_0x5dcd42){return function(_0xf8b578){if(_0xf8b578){return _0xf8b578[_0x7b9e('0x25')](_0x2b4b86)[_0x7b9e('0x26')](function(_0x1033b0){return _0x1033b0;});}return null;};}function removeEntity(_0x35c12b,_0x2fde42){return function(_0x42fbe7){if(_0x42fbe7){return _0x42fbe7[_0x7b9e('0x27')]()[_0x7b9e('0x26')](function(){_0x35c12b[_0x7b9e('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2fd4c7,_0x1149cf){return function(_0x1a541c){if(!_0x1a541c){_0x2fd4c7[_0x7b9e('0x19')](0x194);}return _0x1a541c;};}function handleError(_0x2ac45e,_0x22a923){_0x22a923=_0x22a923||0x1f4;return function(_0x5b9db4){logger[_0x7b9e('0x28')](_0x5b9db4['stack']);if(_0x5b9db4[_0x7b9e('0x29')]){delete _0x5b9db4['name'];}_0x2ac45e[_0x7b9e('0x1a')](_0x22a923)[_0x7b9e('0x2a')](_0x5b9db4);};}exports[_0x7b9e('0x2b')]=function(_0x82d68a,_0x1abbba){var _0x1979d7={},_0x17d5b2={},_0x11329f={'count':0x0,'rows':[]};var _0x8ef2f2=_['map'](db[_0x7b9e('0x2c')][_0x7b9e('0x2d')],function(_0x286fdf){return{'name':_0x286fdf[_0x7b9e('0x2e')],'type':_0x286fdf[_0x7b9e('0x2f')]['key']};});_0x17d5b2[_0x7b9e('0x30')]=_[_0x7b9e('0x31')](_0x8ef2f2,_0x7b9e('0x29'));_0x17d5b2[_0x7b9e('0x32')]=_[_0x7b9e('0x33')](_0x82d68a['query']);_0x17d5b2[_0x7b9e('0x34')]=_[_0x7b9e('0x35')](_0x17d5b2[_0x7b9e('0x30')],_0x17d5b2[_0x7b9e('0x32')]);_0x1979d7['attributes']=_['intersection'](_0x17d5b2[_0x7b9e('0x30')],qs['fields'](_0x82d68a['query'][_0x7b9e('0x36')]));_0x1979d7['attributes']=_0x1979d7[_0x7b9e('0x37')]['length']?_0x1979d7[_0x7b9e('0x37')]:_0x17d5b2[_0x7b9e('0x30')];if(!_0x82d68a['query'][_0x7b9e('0x38')](_0x7b9e('0x39'))){_0x1979d7[_0x7b9e('0x20')]=qs[_0x7b9e('0x20')](_0x82d68a['query'][_0x7b9e('0x20')]);_0x1979d7[_0x7b9e('0x1d')]=qs[_0x7b9e('0x1d')](_0x82d68a[_0x7b9e('0x32')][_0x7b9e('0x1d')]);}_0x1979d7['order']=qs['sort'](_0x82d68a['query'][_0x7b9e('0x3a')]);_0x1979d7['where']=qs[_0x7b9e('0x34')](_[_0x7b9e('0x3b')](_0x82d68a[_0x7b9e('0x32')],_0x17d5b2['filters']),_0x8ef2f2);if(_0x82d68a[_0x7b9e('0x32')][_0x7b9e('0x3c')]){_0x1979d7[_0x7b9e('0x3d')]=_[_0x7b9e('0x3e')](_0x1979d7[_0x7b9e('0x3d')],{'$or':_[_0x7b9e('0x31')](_0x8ef2f2,function(_0x158bea){if(_0x158bea['type']!==_0x7b9e('0x3f')){var _0x45f209={};_0x45f209[_0x158bea['name']]={'$like':'%'+_0x82d68a[_0x7b9e('0x32')]['filter']+'%'};return _0x45f209;}})});}_0x1979d7=_[_0x7b9e('0x3e')]({},_0x1979d7,_0x82d68a[_0x7b9e('0x40')]);var _0x1657bf={'where':_0x1979d7['where']};return db[_0x7b9e('0x2c')][_0x7b9e('0x1f')](_0x1657bf)['then'](function(_0x3310fe){_0x11329f[_0x7b9e('0x1f')]=_0x3310fe;if(_0x82d68a['query'][_0x7b9e('0x41')]){_0x1979d7[_0x7b9e('0x42')]=[{'all':!![]}];}return db[_0x7b9e('0x2c')][_0x7b9e('0x43')](_0x1979d7);})['then'](function(_0x4e79fc){_0x11329f[_0x7b9e('0x44')]=_0x4e79fc;return _0x11329f;})[_0x7b9e('0x26')](respondWithFilteredResult(_0x1abbba,_0x1979d7))[_0x7b9e('0x45')](handleError(_0x1abbba,null));};exports['show']=function(_0x534f47,_0x2d2285){var _0x45e04e={'raw':![],'where':{'id':_0x534f47[_0x7b9e('0x46')]['id']}},_0x525b09={};_0x525b09['model']=_['keys'](db[_0x7b9e('0x2c')]['rawAttributes']);_0x525b09['query']=_[_0x7b9e('0x33')](_0x534f47[_0x7b9e('0x32')]);_0x525b09['filters']=_[_0x7b9e('0x35')](_0x525b09[_0x7b9e('0x30')],_0x525b09[_0x7b9e('0x32')]);_0x45e04e[_0x7b9e('0x37')]=_[_0x7b9e('0x35')](_0x525b09[_0x7b9e('0x30')],qs[_0x7b9e('0x36')](_0x534f47[_0x7b9e('0x32')][_0x7b9e('0x36')]));_0x45e04e[_0x7b9e('0x37')]=_0x45e04e['attributes'][_0x7b9e('0x47')]?_0x45e04e[_0x7b9e('0x37')]:_0x525b09[_0x7b9e('0x30')];if(_0x534f47[_0x7b9e('0x32')][_0x7b9e('0x41')]){_0x45e04e[_0x7b9e('0x42')]=[{'all':!![]}];}_0x45e04e=_['merge']({},_0x45e04e,_0x534f47[_0x7b9e('0x40')]);return db['UserProfile'][_0x7b9e('0x48')](_0x45e04e)[_0x7b9e('0x26')](handleEntityNotFound(_0x2d2285,null))[_0x7b9e('0x26')](respondWithResult(_0x2d2285,null))['catch'](handleError(_0x2d2285,null));};exports[_0x7b9e('0x49')]=function(_0x1acbc0,_0x15dabe){return db[_0x7b9e('0x2c')][_0x7b9e('0x49')](_0x1acbc0[_0x7b9e('0x4a')],{})[_0x7b9e('0x26')](respondWithResult(_0x15dabe,0xc9))[_0x7b9e('0x45')](handleError(_0x15dabe,null));};exports[_0x7b9e('0x4b')]=function(_0x3aa4de,_0xd0479){var _0x5cb41e={'where':{'id':_0x3aa4de[_0x7b9e('0x46')]['id']}},_0x1b6d61={};_0x1b6d61[_0x7b9e('0x30')]=_['keys'](db[_0x7b9e('0x2c')][_0x7b9e('0x2d')]);_0x5cb41e[_0x7b9e('0x37')]=_['intersection'](_0x1b6d61[_0x7b9e('0x30')],qs[_0x7b9e('0x36')](_0x3aa4de[_0x7b9e('0x32')][_0x7b9e('0x36')]));_0x5cb41e[_0x7b9e('0x37')]=_0x5cb41e[_0x7b9e('0x37')][_0x7b9e('0x47')]?_0x5cb41e['attributes']:_0x1b6d61[_0x7b9e('0x30')];if(_0x3aa4de[_0x7b9e('0x32')][_0x7b9e('0x41')]){_0x5cb41e[_0x7b9e('0x42')]=[{'all':!![]}];}_0x5cb41e=_[_0x7b9e('0x3e')]({},_0x5cb41e,_0x3aa4de['options']);return db[_0x7b9e('0x2c')]['find'](_0x5cb41e)['then'](handleEntityNotFound(_0xd0479,null))[_0x7b9e('0x26')](function(_0x69f1e7){if(_0x69f1e7){var _0x46c8d3=_0x69f1e7['get']({'plain':!![]});_0x46c8d3=qs[_0x7b9e('0x4c')](_0x46c8d3,['id',_0x7b9e('0x4d'),_0x7b9e('0x4e'),_0x7b9e('0x4f')]);_0x3aa4de[_0x7b9e('0x4a')]=_[_0x7b9e('0x4c')](_0x3aa4de[_0x7b9e('0x4a')],['id','createdAt',_0x7b9e('0x4e')]);return db[_0x7b9e('0x50')][_0x7b9e('0x51')](function(_0x5aa49d){return db[_0x7b9e('0x2c')][_0x7b9e('0x49')](_[_0x7b9e('0x3e')](_0x46c8d3,_0x3aa4de[_0x7b9e('0x4a')]),{'include':_0x3aa4de[_0x7b9e('0x32')][_0x7b9e('0x41')]?[{'all':!![]}]:undefined,'transaction':_0x5aa49d})[_0x7b9e('0x26')](function(_0xc631e1){var _0x1ff584=_0xc631e1[_0x7b9e('0x52')]({'plain':!![]});return db['UserProfileSection'][_0x7b9e('0x43')]({'where':{'userProfileId':_0x3aa4de[_0x7b9e('0x46')]['id']},'raw':!![]})['then'](function(_0x51f155){if(_0x51f155){return BPromise['each'](_0x51f155,function(_0x2debf6){return new BPromise(function(_0xc6c921,_0x193395){if(_0x2debf6[_0x7b9e('0x53')]===null||_0x2debf6[_0x7b9e('0x53')]===0x1)_0xc6c921(null);return db['UserProfileResource'][_0x7b9e('0x43')]({'where':{'sectionId':_0x2debf6['id']},'raw':!![]})[_0x7b9e('0x26')](function(_0x4d5410){var _0xb8b14=_[_0x7b9e('0x31')](_0x4d5410,function(_0x5284cd){return qs[_0x7b9e('0x4c')](_0x5284cd,['id',_0x7b9e('0x4d'),_0x7b9e('0x4e'),_0x7b9e('0x54')]);});_0xc6c921(_0xb8b14);})[_0x7b9e('0x45')](function(_0x4f5e99){_0x193395(_0x4f5e99);});})[_0x7b9e('0x26')](function(_0x2f675e){var _0x5d3163=qs[_0x7b9e('0x4c')](_0x2debf6,['id','createdAt',_0x7b9e('0x4e')]);_0x5d3163[_0x7b9e('0x55')]=_0x1ff584['id'];if(_0x2f675e)_0x5d3163[_0x7b9e('0x56')]=_0x2f675e;return _0x5d3163;})[_0x7b9e('0x26')](function(_0x56a05b){return db['UserProfileSection']['create'](_0x56a05b,{'include':[{'model':db[_0x7b9e('0x57')],'as':_0x7b9e('0x56')}],'raw':!![],'transaction':_0x5aa49d});});})[_0x7b9e('0x26')](function(){return _0x1ff584;});}});});});}})['then'](respondWithResult(_0xd0479,0xc9))['catch'](handleError(_0xd0479,null));};exports[_0x7b9e('0x25')]=function(_0x4ec9e0,_0x24e4d3){if(_0x4ec9e0['body']['id']){delete _0x4ec9e0[_0x7b9e('0x4a')]['id'];}return db['UserProfile'][_0x7b9e('0x48')]({'where':{'id':_0x4ec9e0['params']['id']}})[_0x7b9e('0x26')](handleEntityNotFound(_0x24e4d3,null))['then'](saveUpdates(_0x4ec9e0[_0x7b9e('0x4a')],null))['then'](respondWithResult(_0x24e4d3,null))['catch'](handleError(_0x24e4d3,null));};exports[_0x7b9e('0x27')]=function(_0x1c84ec,_0x33595a){return db[_0x7b9e('0x2c')][_0x7b9e('0x48')]({'where':{'id':_0x1c84ec['params']['id']}})['then'](handleEntityNotFound(_0x33595a,null))['then'](removeEntity(_0x33595a,null))[_0x7b9e('0x45')](handleError(_0x33595a,null));};exports[_0x7b9e('0x58')]=function(_0x19edb8,_0x1bbb17){return db[_0x7b9e('0x2c')][_0x7b9e('0x58')]()[_0x7b9e('0x26')](respondWithResult(_0x1bbb17,null))[_0x7b9e('0x45')](handleError(_0x1bbb17,null));};exports[_0x7b9e('0x59')]=function(_0x5ec971,_0x206677){var _0x6d8f73=_0x5ec971[_0x7b9e('0x4a')];return db[_0x7b9e('0x2c')]['find']({'where':{'id':_0x5ec971[_0x7b9e('0x46')]['id']}})[_0x7b9e('0x26')](handleEntityNotFound(_0x206677,null))['then'](function(_0x4b260e){if(_0x4b260e){return db['sequelize'][_0x7b9e('0x51')](function(_0x50c42e){return db[_0x7b9e('0x5a')]['destroy']({'where':{'userProfileId':_0x5ec971['params']['id'],'sectionId':_['map'](_0x6d8f73,function(_0x64c809){return _0x64c809['sectionId'];})},'transaction':_0x50c42e})['then'](function(){var _0x18ea96=_[_0x7b9e('0x31')](_0x6d8f73,function(_0x9b3e2e){_0x9b3e2e[_0x7b9e('0x55')]=_0x5ec971[_0x7b9e('0x46')]['id'];return _0x9b3e2e;});var _0x3b8c0c=[];return BPromise[_0x7b9e('0x5b')](_0x18ea96,function(_0x113753){return db['UserProfileSection'][_0x7b9e('0x49')](_0x113753,{'include':[{'model':db[_0x7b9e('0x57')],'as':_0x7b9e('0x56')}],'raw':!![],'transaction':_0x50c42e})[_0x7b9e('0x26')](function(_0x329fe2){_0x3b8c0c[_0x7b9e('0x5c')](_0x329fe2[_0x7b9e('0x52')]({'plain':!![]}));});})[_0x7b9e('0x26')](function(){return _0x3b8c0c;});});});}})[_0x7b9e('0x26')](function(_0x1b69cd){return _0x1b69cd;})[_0x7b9e('0x26')](respondWithResult(_0x206677,null))['catch'](handleError(_0x206677,null));};exports[_0x7b9e('0x5d')]=function(_0x31372e,_0x51d3a8){var _0x215af4;return db['UserProfile'][_0x7b9e('0x48')]({'where':{'id':_0x31372e[_0x7b9e('0x46')]['id']},'attributes':['id',_0x7b9e('0x29')]})[_0x7b9e('0x26')](handleEntityNotFound(_0x51d3a8,null))['then'](function(_0xc407b9){if(_0xc407b9){_0x215af4=_0xc407b9;return db[_0x7b9e('0x5a')][_0x7b9e('0x27')]({'where':{'userProfileId':_0x31372e[_0x7b9e('0x46')]['id'],'sectionId':_0x31372e[_0x7b9e('0x32')][_0x7b9e('0x5e')]}});}})[_0x7b9e('0x26')](function(){return _0x215af4;})[_0x7b9e('0x26')](respondWithStatusCode(_0x51d3a8,null))[_0x7b9e('0x45')](handleError(_0x51d3a8,null));};exports[_0x7b9e('0x5f')]=function(_0x27dffb,_0x4cf6c3){var _0x5088b=[];var _0x3f1f2b=[];return db[_0x7b9e('0x5a')][_0x7b9e('0x43')]({'where':{'userProfileId':_0x27dffb[_0x7b9e('0x46')]['id']},'raw':!![]})[_0x7b9e('0x26')](function(_0x3dac5f){_0x5088b=_[_0x7b9e('0x3c')](_0x3dac5f,function(_0x47d6b8){return _0x47d6b8[_0x7b9e('0x60')]===0x1||_[_0x7b9e('0x61')]([0x3eb,0x709],_0x47d6b8[_0x7b9e('0x54')]);});if(!_[_0x7b9e('0x62')](_0x5088b)){return _[_0x7b9e('0x31')](_0x5088b,function(_0x57075b){return _0x57075b['sectionId'];});}else{return;}})[_0x7b9e('0x26')](function(_0x695891){if(_0x695891)_0x3f1f2b=_0x695891;if(_[_0x7b9e('0x61')](_0x3f1f2b,0x64)){var _0x35f4c9=_[_0x7b9e('0x48')](_0x5088b,{'sectionId':0x64});return hasDefaultDashboard(_0x35f4c9)[_0x7b9e('0x26')](function(_0x24c985){return _[_0x7b9e('0x31')](_0x5088b,function(_0x5ba30b){if(_0x5ba30b[_0x7b9e('0x54')]===0x64){_0x5ba30b['subsections']=_0x24c985;}return _0x5ba30b;});});}else{return;}})[_0x7b9e('0x26')](function(_0x32cc43){if(_0x32cc43)_0x5088b=_0x32cc43;if(_[_0x7b9e('0x61')](_0x3f1f2b,0x3eb)){var _0xf94835=_['find'](_0x5088b,{'sectionId':0x3eb});return getCustomDashboards(_0xf94835)[_0x7b9e('0x26')](function(_0x4dbac2){return _[_0x7b9e('0x31')](_0x5088b,function(_0x26faa8){if(_0xf94835['enabled']){if(_0x26faa8[_0x7b9e('0x54')]===0x3eb){_0x26faa8[_0x7b9e('0x63')]=_0x4dbac2;}}else{if(_0x26faa8[_0x7b9e('0x54')]===0x64){_0x26faa8[_0x7b9e('0x63')]=_0x4dbac2;}}return _0x26faa8;});});}else{return;}})[_0x7b9e('0x26')](function(_0x31ac90){if(_0x31ac90)_0x5088b=_0x31ac90;if(_[_0x7b9e('0x61')](_0x3f1f2b,0x709)){var _0x183a7d=_['find'](_0x5088b,{'sectionId':0x709});return getPlugins(_0x183a7d)[_0x7b9e('0x26')](function(_0x34c57f){if(_0x183a7d['enabled']){return _['map'](_0x5088b,function(_0x2026ec){if(_0x2026ec['sectionId']===0x709){_0x2026ec[_0x7b9e('0x63')]=_0x34c57f;}return _0x2026ec;});}else{var _0x31d9bc={'sectionId':0x76c,'enabled':0x1,'subsections':_0x34c57f};var _0x4c40c2=_[_0x7b9e('0x31')](_0x5088b);_0x4c40c2[_0x7b9e('0x5c')](_0x31d9bc);return _0x4c40c2;}});}else{return;}})['then'](function(_0x9d0da3){if(_0x9d0da3)_0x5088b=_0x9d0da3;return _[_0x7b9e('0x3c')](_0x5088b,[_0x7b9e('0x60'),0x1]);})['then'](respondWithResult(_0x4cf6c3,null))[_0x7b9e('0x45')](handleError(_0x4cf6c3,null));};function hasDefaultDashboard(_0xf32ae0){var _0x8c3790=[0x65];return new BPromise(function(_0x41057c,_0x4b2901){try{if(_0xf32ae0[_0x7b9e('0x53')]){_0x41057c(_0x8c3790);}else{return db[_0x7b9e('0x57')]['findOne']({'where':{'sectionId':_0xf32ae0['id']},'raw':!![]})['then'](function(_0x24d3aa){_0x24d3aa?_0x41057c(_0x8c3790):_0x41057c();});}}catch(_0x5b39bf){_0x4b2901(_0x5b39bf);}});}function getCustomDashboards(_0xe7b15){var _0x3d8daa=[];return new BPromise(function(_0x5d28f9,_0x4e6784){try{if(_0xe7b15[_0x7b9e('0x53')]){return db[_0x7b9e('0x64')][_0x7b9e('0x43')]({'raw':!![]})['then'](function(_0x183532){_0x183532['forEach'](function(_0x220ac7){_0x3d8daa[_0x7b9e('0x5c')](_0x220ac7['id']+0x1869f);});_0x5d28f9(_0x3d8daa);});}else{return db[_0x7b9e('0x57')]['findAll']({'where':{'sectionId':_0xe7b15['id']},'raw':!![]})[_0x7b9e('0x26')](function(_0x3f3af3){_0x3f3af3['forEach'](function(_0x1ea8c2){_0x3d8daa[_0x7b9e('0x5c')](_0x1ea8c2['resourceId']+0x1869f);});_0x5d28f9(_0x3d8daa);});}}catch(_0x35682e){_0x4e6784(_0x35682e);}});}function getPlugins(_0x733927){var _0x40b675=[];return new BPromise(function(_0x1cfc0,_0x45693b){try{if(_0x733927[_0x7b9e('0x53')]){return db[_0x7b9e('0x65')][_0x7b9e('0x43')]({'raw':!![]})[_0x7b9e('0x26')](function(_0x3d61f4){_0x3d61f4[_0x7b9e('0x66')](function(_0x233745){_0x40b675['push'](_0x233745['id']+0x15b38);});_0x1cfc0(_0x40b675);});}else{return db[_0x7b9e('0x57')]['findAll']({'where':{'sectionId':_0x733927['id']},'raw':!![]})[_0x7b9e('0x26')](function(_0x4ff6cd){_0x4ff6cd['forEach'](function(_0x1e18d8){_0x40b675[_0x7b9e('0x5c')](_0x1e18d8[_0x7b9e('0x67')]+0x15b38);});_0x1cfc0(_0x40b675);});}}catch(_0x5f49ce){_0x45693b(_0x5f49ce);}});}exports[_0x7b9e('0x68')]=function(_0x1b1920,_0x9967b){return db[_0x7b9e('0x2c')][_0x7b9e('0x48')]({'where':{'id':_0x1b1920[_0x7b9e('0x46')]['id']}})[_0x7b9e('0x26')](handleEntityNotFound(_0x9967b,null))['then'](function(_0x180e95){if(_0x180e95){return db[_0x7b9e('0x50')]['transaction'](function(_0x1fe67f){return db[_0x7b9e('0x5a')][_0x7b9e('0x43')]({'where':{'userProfileId':_0x1b1920[_0x7b9e('0x46')]['id']},'attributes':['id'],'raw':!![]})[_0x7b9e('0x26')](function(_0x1d23aa){if(_0x1d23aa){return db[_0x7b9e('0x5a')]['destroy']({'where':{'userProfileId':_0x1b1920['params']['id'],'id':_['map'](_0x1d23aa,function(_0x3d5e30){return _0x3d5e30['id'];})},'transaction':_0x1fe67f});}})[_0x7b9e('0x26')](function(_0x347f03){var _0x2677b6=_[_0x7b9e('0x31')](_0x1b1920[_0x7b9e('0x4a')],function(_0x3f576a){_0x3f576a[_0x7b9e('0x55')]=_0x1b1920[_0x7b9e('0x46')]['id'];return _0x3f576a;});return db['UserProfileSection'][_0x7b9e('0x69')](_0x2677b6,{'raw':!![],'transaction':_0x1fe67f});})[_0x7b9e('0x26')](function(_0xc23470){var _0x4b6500=_[_0x7b9e('0x3c')](_['map'](_0xc23470,function(_0x4422c8){return _0x4422c8[_0x7b9e('0x52')]({'plain':!![]});}),{'includeAll':![]});if(_0x4b6500){return db[_0x7b9e('0x5a')][_0x7b9e('0x43')]({'where':{'userProfileId':_0x1b1920['params']['id'],'sectionId':_[_0x7b9e('0x31')](_0x4b6500,function(_0x5f32ef){return _0x5f32ef[_0x7b9e('0x54')];})},'attributes':['id',_0x7b9e('0x54')],'raw':!![]})['then'](function(_0x520793){var _0x744cd2=_['map'](_0x1b1920['body'],function(_0x23d320){_0x23d320[_0x7b9e('0x55')]=_0x1b1920[_0x7b9e('0x46')]['id'];return _0x23d320;});return db[_0x7b9e('0x57')]['bulkCreate'](_0x744cd2,{'raw':!![],'transaction':_0x1fe67f});});}})['catch'](handleError(_0x9967b,null));});}})['then'](function(_0x439790){var _0x3fdb14=_[_0x7b9e('0x31')](_0x439790,function(_0xd5b5e3){return _0xd5b5e3[_0x7b9e('0x52')]({'plain':!![]});});})[_0x7b9e('0x26')](respondWithResult(_0x9967b,null))['catch'](handleError(_0x9967b,null));};exports['removeResources']=function(_0x2f5df2,_0x18c1a8,_0x125c93){return db['UserProfile'][_0x7b9e('0x48')]({'where':{'id':_0x2f5df2[_0x7b9e('0x46')]['id']}})[_0x7b9e('0x26')](handleEntityNotFound(_0x18c1a8,null))['then'](function(_0x4cdcb0){if(_0x4cdcb0){return _0x4cdcb0[_0x7b9e('0x6a')](_0x2f5df2[_0x7b9e('0x32')][_0x7b9e('0x5e')]);}})[_0x7b9e('0x26')](respondWithStatusCode(_0x18c1a8,null))[_0x7b9e('0x45')](handleError(_0x18c1a8,null));};exports[_0x7b9e('0x6b')]=function(_0x112118,_0x4a7456){var _0x5110b2={};if(!_0x112118[_0x7b9e('0x32')][_0x7b9e('0x6c')])throw new Error(_0x7b9e('0x6d'));if(!_0x112118['query'][_0x7b9e('0x38')]('nolimit')){_0x5110b2['limit']=qs[_0x7b9e('0x20')](_0x112118[_0x7b9e('0x32')][_0x7b9e('0x20')]);_0x5110b2[_0x7b9e('0x1d')]=qs['offset'](_0x112118['query'][_0x7b9e('0x1d')]);}return db[_0x7b9e('0x2c')][_0x7b9e('0x48')]({'where':{'id':_0x112118[_0x7b9e('0x46')]['id']}})[_0x7b9e('0x26')](function(_0x16561f){if(!_0x16561f)throw new Error(_0x7b9e('0x6e')+_0x112118[_0x7b9e('0x46')]['id']);return db['UserProfile'][_0x7b9e('0x6b')](_0x112118);})[_0x7b9e('0x26')](respondWithFilteredResult(_0x4a7456,_0x5110b2))['catch'](handleError(_0x4a7456,null));};