1447006307fc9ebc87ce6cf3fb86a09aea84d2e9
[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 _0x2d5d=['name','send','UserProfile','rawAttributes','fieldName','type','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','map','VIRTUAL','merge','options','includeAll','include','findAll','catch','show','params','find','create','body','clone','omit','crudPermissions','createdAt','updatedAt','sequelize','transaction','each','autoAssociation','UserProfileResource','sectionId','userProfileId','Resources','describe','addSections','UserProfileSection','push','get','removeSections','ids','getSections','enabled','includes','isEmpty','subsections','concat','findOne','Dashboard','forEach','Plugin','resourceId','addResources','section','Missing\x20section\x20parameter','No\x20User\x20Profile\x20found\x20for\x20id\x20','getResources','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./userProfile.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','destroy','then','error','stack'];(function(_0x17af1e,_0x1716d7){var _0x32a1cc=function(_0x476bae){while(--_0x476bae){_0x17af1e['push'](_0x17af1e['shift']());}};_0x32a1cc(++_0x1716d7);}(_0x2d5d,0xbe));var _0xd2d5=function(_0x43e4cd,_0x2e2ece){_0x43e4cd=_0x43e4cd-0x0;var _0x47b42f=_0x2d5d[_0x43e4cd];return _0x47b42f;};'use strict';var emlformat=require(_0xd2d5('0x0'));var rimraf=require(_0xd2d5('0x1'));var zipdir=require(_0xd2d5('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xd2d5('0x3'));var moment=require(_0xd2d5('0x4'));var BPromise=require(_0xd2d5('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0xd2d5('0x6'));var sox=require(_0xd2d5('0x7'));var csv=require(_0xd2d5('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xd2d5('0x9'));var _=require(_0xd2d5('0xa'));var squel=require(_0xd2d5('0xb'));var crypto=require(_0xd2d5('0xc'));var jsforce=require(_0xd2d5('0xd'));var deskjs=require(_0xd2d5('0xe'));var toCsv=require(_0xd2d5('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xd2d5('0xf'));var authService=require(_0xd2d5('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xd2d5('0x11'));var hardwareService=require(_0xd2d5('0x12'));var logger=require(_0xd2d5('0x13'))(_0xd2d5('0x14'));var utils=require(_0xd2d5('0x15'));var config=require(_0xd2d5('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0xd2d5('0x17'))['db'];config[_0xd2d5('0x18')]=_[_0xd2d5('0x19')](config[_0xd2d5('0x18')],{'host':_0xd2d5('0x1a'),'port':0x18eb});var socket=require(_0xd2d5('0x1b'))(new Redis(config[_0xd2d5('0x18')]));require(_0xd2d5('0x1c'))[_0xd2d5('0x1d')](socket);function respondWithStatusCode(_0x17b2c0,_0x326c94){_0x326c94=_0x326c94||0xcc;return function(_0x37b5c2){if(_0x37b5c2){return _0x17b2c0[_0xd2d5('0x1e')](_0x326c94);}return _0x17b2c0[_0xd2d5('0x1f')](_0x326c94)[_0xd2d5('0x20')]();};}function respondWithResult(_0x5f230a,_0x34e052){_0x34e052=_0x34e052||0xc8;return function(_0x43240b){if(_0x43240b){return _0x5f230a['status'](_0x34e052)[_0xd2d5('0x21')](_0x43240b);}};}function respondWithFilteredResult(_0x46c1f4,_0x3268c5){return function(_0x4aac45){if(_0x4aac45){var _0x306e64=typeof _0x3268c5[_0xd2d5('0x22')]===_0xd2d5('0x23')&&typeof _0x3268c5[_0xd2d5('0x24')]===_0xd2d5('0x23');var _0xe09b1c=_0x4aac45['count'];var _0x4bf2d1=_0x306e64?0x0:_0x3268c5[_0xd2d5('0x22')];var _0x581db3=_0x306e64?_0x4aac45[_0xd2d5('0x25')]:_0x3268c5[_0xd2d5('0x22')]+_0x3268c5[_0xd2d5('0x24')];var _0x58dfd3;if(_0x581db3>=_0xe09b1c){_0x581db3=_0xe09b1c;_0x58dfd3=0xc8;}else{_0x58dfd3=0xce;}_0x46c1f4[_0xd2d5('0x1f')](_0x58dfd3);return _0x46c1f4[_0xd2d5('0x26')](_0xd2d5('0x27'),_0x4bf2d1+'-'+_0x581db3+'/'+_0xe09b1c)['json'](_0x4aac45);}return null;};}function patchUpdates(_0x40a05f){return function(_0x4f4692){try{jsonpatch[_0xd2d5('0x28')](_0x4f4692,_0x40a05f,!![]);}catch(_0x39bb82){return BPromise[_0xd2d5('0x29')](_0x39bb82);}return _0x4f4692[_0xd2d5('0x2a')]();};}function saveUpdates(_0xd3c8f7,_0x2e54ff){return function(_0x214ce1){if(_0x214ce1){return _0x214ce1[_0xd2d5('0x2b')](_0xd3c8f7)['then'](function(_0x141c7c){return _0x141c7c;});}return null;};}function removeEntity(_0x2c387b,_0x4b4cb7){return function(_0x105e6e){if(_0x105e6e){return _0x105e6e[_0xd2d5('0x2c')]()[_0xd2d5('0x2d')](function(){_0x2c387b[_0xd2d5('0x1f')](0xcc)[_0xd2d5('0x20')]();});}};}function handleEntityNotFound(_0x2aa4be,_0x4a31f9){return function(_0x170bb1){if(!_0x170bb1){_0x2aa4be[_0xd2d5('0x1e')](0x194);}return _0x170bb1;};}function handleError(_0xfa1155,_0xe8e80c){_0xe8e80c=_0xe8e80c||0x1f4;return function(_0x52f0eb){logger[_0xd2d5('0x2e')](_0x52f0eb[_0xd2d5('0x2f')]);if(_0x52f0eb[_0xd2d5('0x30')]){delete _0x52f0eb[_0xd2d5('0x30')];}_0xfa1155['status'](_0xe8e80c)[_0xd2d5('0x31')](_0x52f0eb);};}exports['index']=function(_0x85698a,_0x424e52){var _0x5ae252={},_0x223e64={},_0xa45c19={'count':0x0,'rows':[]};var _0xdd9881=_['map'](db[_0xd2d5('0x32')][_0xd2d5('0x33')],function(_0x3142a4){return{'name':_0x3142a4[_0xd2d5('0x34')],'type':_0x3142a4[_0xd2d5('0x35')][_0xd2d5('0x36')]};});_0x223e64[_0xd2d5('0x37')]=_['map'](_0xdd9881,_0xd2d5('0x30'));_0x223e64['query']=_[_0xd2d5('0x38')](_0x85698a[_0xd2d5('0x39')]);_0x223e64['filters']=_[_0xd2d5('0x3a')](_0x223e64[_0xd2d5('0x37')],_0x223e64[_0xd2d5('0x39')]);_0x5ae252[_0xd2d5('0x3b')]=_[_0xd2d5('0x3a')](_0x223e64['model'],qs[_0xd2d5('0x3c')](_0x85698a[_0xd2d5('0x39')][_0xd2d5('0x3c')]));_0x5ae252[_0xd2d5('0x3b')]=_0x5ae252['attributes'][_0xd2d5('0x3d')]?_0x5ae252[_0xd2d5('0x3b')]:_0x223e64[_0xd2d5('0x37')];if(!_0x85698a['query'][_0xd2d5('0x3e')](_0xd2d5('0x3f'))){_0x5ae252['limit']=qs['limit'](_0x85698a[_0xd2d5('0x39')][_0xd2d5('0x24')]);_0x5ae252['offset']=qs[_0xd2d5('0x22')](_0x85698a[_0xd2d5('0x39')][_0xd2d5('0x22')]);}_0x5ae252[_0xd2d5('0x40')]=qs[_0xd2d5('0x41')](_0x85698a[_0xd2d5('0x39')]['sort']);_0x5ae252[_0xd2d5('0x42')]=qs[_0xd2d5('0x43')](_[_0xd2d5('0x44')](_0x85698a[_0xd2d5('0x39')],_0x223e64[_0xd2d5('0x43')]),_0xdd9881);if(_0x85698a['query'][_0xd2d5('0x45')]){_0x5ae252['where']=_['merge'](_0x5ae252[_0xd2d5('0x42')],{'$or':_[_0xd2d5('0x46')](_0xdd9881,function(_0x3fc535){if(_0x3fc535[_0xd2d5('0x35')]!==_0xd2d5('0x47')){var _0xe870cd={};_0xe870cd[_0x3fc535['name']]={'$like':'%'+_0x85698a[_0xd2d5('0x39')]['filter']+'%'};return _0xe870cd;}})});}_0x5ae252=_[_0xd2d5('0x48')]({},_0x5ae252,_0x85698a[_0xd2d5('0x49')]);var _0x1c63aa={'where':_0x5ae252['where']};return db[_0xd2d5('0x32')]['count'](_0x1c63aa)['then'](function(_0x84515c){_0xa45c19[_0xd2d5('0x25')]=_0x84515c;if(_0x85698a[_0xd2d5('0x39')][_0xd2d5('0x4a')]){_0x5ae252[_0xd2d5('0x4b')]=[{'all':!![]}];}return db[_0xd2d5('0x32')][_0xd2d5('0x4c')](_0x5ae252);})[_0xd2d5('0x2d')](function(_0x563420){_0xa45c19['rows']=_0x563420;return _0xa45c19;})[_0xd2d5('0x2d')](respondWithFilteredResult(_0x424e52,_0x5ae252))[_0xd2d5('0x4d')](handleError(_0x424e52,null));};exports[_0xd2d5('0x4e')]=function(_0xb87a74,_0x11e090){var _0x15fa8e={'raw':![],'where':{'id':_0xb87a74[_0xd2d5('0x4f')]['id']}},_0x2fea6f={};_0x2fea6f['model']=_[_0xd2d5('0x38')](db[_0xd2d5('0x32')][_0xd2d5('0x33')]);_0x2fea6f[_0xd2d5('0x39')]=_[_0xd2d5('0x38')](_0xb87a74[_0xd2d5('0x39')]);_0x2fea6f['filters']=_[_0xd2d5('0x3a')](_0x2fea6f[_0xd2d5('0x37')],_0x2fea6f[_0xd2d5('0x39')]);_0x15fa8e[_0xd2d5('0x3b')]=_['intersection'](_0x2fea6f['model'],qs[_0xd2d5('0x3c')](_0xb87a74['query'][_0xd2d5('0x3c')]));_0x15fa8e[_0xd2d5('0x3b')]=_0x15fa8e[_0xd2d5('0x3b')][_0xd2d5('0x3d')]?_0x15fa8e[_0xd2d5('0x3b')]:_0x2fea6f[_0xd2d5('0x37')];if(_0xb87a74[_0xd2d5('0x39')][_0xd2d5('0x4a')]){_0x15fa8e['include']=[{'all':!![]}];}_0x15fa8e=_['merge']({},_0x15fa8e,_0xb87a74[_0xd2d5('0x49')]);return db[_0xd2d5('0x32')][_0xd2d5('0x50')](_0x15fa8e)[_0xd2d5('0x2d')](handleEntityNotFound(_0x11e090,null))['then'](respondWithResult(_0x11e090,null))['catch'](handleError(_0x11e090,null));};exports[_0xd2d5('0x51')]=function(_0x591274,_0x4c328f){return db[_0xd2d5('0x32')][_0xd2d5('0x51')](_0x591274[_0xd2d5('0x52')],{})[_0xd2d5('0x2d')](respondWithResult(_0x4c328f,0xc9))[_0xd2d5('0x4d')](handleError(_0x4c328f,null));};exports[_0xd2d5('0x53')]=function(_0x4522a1,_0x9ba0e){var _0x27609d={'where':{'id':_0x4522a1[_0xd2d5('0x4f')]['id']}},_0x1345e3={};_0x1345e3[_0xd2d5('0x37')]=_[_0xd2d5('0x38')](db['UserProfile'][_0xd2d5('0x33')]);_0x27609d[_0xd2d5('0x3b')]=_['intersection'](_0x1345e3[_0xd2d5('0x37')],qs[_0xd2d5('0x3c')](_0x4522a1[_0xd2d5('0x39')][_0xd2d5('0x3c')]));_0x27609d[_0xd2d5('0x3b')]=_0x27609d[_0xd2d5('0x3b')]['length']?_0x27609d[_0xd2d5('0x3b')]:_0x1345e3[_0xd2d5('0x37')];if(_0x4522a1['query'][_0xd2d5('0x4a')]){_0x27609d[_0xd2d5('0x4b')]=[{'all':!![]}];}_0x27609d=_['merge']({},_0x27609d,_0x4522a1[_0xd2d5('0x49')]);return db[_0xd2d5('0x32')][_0xd2d5('0x50')](_0x27609d)[_0xd2d5('0x2d')](handleEntityNotFound(_0x9ba0e,null))[_0xd2d5('0x2d')](function(_0x103cbc){if(_0x103cbc){var _0x168192=_0x103cbc['get']({'plain':!![]});_0x168192=qs[_0xd2d5('0x54')](_0x168192,['id','createdAt','updatedAt',_0xd2d5('0x55')]);_0x4522a1['body']=_[_0xd2d5('0x54')](_0x4522a1[_0xd2d5('0x52')],['id',_0xd2d5('0x56'),_0xd2d5('0x57')]);return db[_0xd2d5('0x58')][_0xd2d5('0x59')](function(_0x288cd1){return db[_0xd2d5('0x32')][_0xd2d5('0x51')](_[_0xd2d5('0x48')](_0x168192,_0x4522a1['body']),{'include':_0x4522a1[_0xd2d5('0x39')]['includeAll']?[{'all':!![]}]:undefined,'transaction':_0x288cd1})[_0xd2d5('0x2d')](function(_0x2ce5f5){var _0x4369ef=_0x2ce5f5['get']({'plain':!![]});return db['UserProfileSection']['findAll']({'where':{'userProfileId':_0x4522a1['params']['id']},'raw':!![]})[_0xd2d5('0x2d')](function(_0x1fae2e){if(_0x1fae2e){return BPromise[_0xd2d5('0x5a')](_0x1fae2e,function(_0x25ed95){return new BPromise(function(_0x5828e3,_0x4a5d0a){if(_0x25ed95['autoAssociation']===null||_0x25ed95[_0xd2d5('0x5b')]===0x1)_0x5828e3(null);return db[_0xd2d5('0x5c')]['findAll']({'where':{'sectionId':_0x25ed95['id']},'raw':!![]})['then'](function(_0x353337){var _0x5ae0c0=_['map'](_0x353337,function(_0x3e6a87){return qs['omit'](_0x3e6a87,['id','createdAt',_0xd2d5('0x57'),_0xd2d5('0x5d')]);});_0x5828e3(_0x5ae0c0);})[_0xd2d5('0x4d')](function(_0x38780c){_0x4a5d0a(_0x38780c);});})[_0xd2d5('0x2d')](function(_0x273c6d){var _0x420d85=qs['omit'](_0x25ed95,['id','createdAt',_0xd2d5('0x57')]);_0x420d85[_0xd2d5('0x5e')]=_0x4369ef['id'];if(_0x273c6d)_0x420d85[_0xd2d5('0x5f')]=_0x273c6d;return _0x420d85;})[_0xd2d5('0x2d')](function(_0x1a8eee){return db['UserProfileSection'][_0xd2d5('0x51')](_0x1a8eee,{'include':[{'model':db['UserProfileResource'],'as':_0xd2d5('0x5f')}],'raw':!![],'transaction':_0x288cd1});});})[_0xd2d5('0x2d')](function(){return _0x4369ef;});}});});});}})[_0xd2d5('0x2d')](respondWithResult(_0x9ba0e,0xc9))[_0xd2d5('0x4d')](handleError(_0x9ba0e,null));};exports[_0xd2d5('0x2b')]=function(_0x56d9b1,_0x47c672){if(_0x56d9b1[_0xd2d5('0x52')]['id']){delete _0x56d9b1[_0xd2d5('0x52')]['id'];}return db['UserProfile']['find']({'where':{'id':_0x56d9b1[_0xd2d5('0x4f')]['id']}})[_0xd2d5('0x2d')](handleEntityNotFound(_0x47c672,null))['then'](saveUpdates(_0x56d9b1[_0xd2d5('0x52')],null))['then'](respondWithResult(_0x47c672,null))[_0xd2d5('0x4d')](handleError(_0x47c672,null));};exports['destroy']=function(_0x2aa24e,_0x292304){return db[_0xd2d5('0x32')]['find']({'where':{'id':_0x2aa24e['params']['id']}})[_0xd2d5('0x2d')](handleEntityNotFound(_0x292304,null))[_0xd2d5('0x2d')](removeEntity(_0x292304,null))['catch'](handleError(_0x292304,null));};exports[_0xd2d5('0x60')]=function(_0x46b385,_0x54021a){return db[_0xd2d5('0x32')][_0xd2d5('0x60')]()['then'](respondWithResult(_0x54021a,null))[_0xd2d5('0x4d')](handleError(_0x54021a,null));};exports[_0xd2d5('0x61')]=function(_0x1fff72,_0x1348a1){var _0x5d8335=_0x1fff72['body'];return db[_0xd2d5('0x32')][_0xd2d5('0x50')]({'where':{'id':_0x1fff72['params']['id']}})[_0xd2d5('0x2d')](handleEntityNotFound(_0x1348a1,null))[_0xd2d5('0x2d')](function(_0xd902dc){if(_0xd902dc){return db[_0xd2d5('0x58')]['transaction'](function(_0x364668){return db[_0xd2d5('0x62')][_0xd2d5('0x2c')]({'where':{'userProfileId':_0x1fff72[_0xd2d5('0x4f')]['id'],'sectionId':_[_0xd2d5('0x46')](_0x5d8335,function(_0x5133a1){return _0x5133a1[_0xd2d5('0x5d')];})},'transaction':_0x364668})[_0xd2d5('0x2d')](function(){var _0x241a2b=_[_0xd2d5('0x46')](_0x5d8335,function(_0x58a3bc){_0x58a3bc['userProfileId']=_0x1fff72[_0xd2d5('0x4f')]['id'];return _0x58a3bc;});var _0x162996=[];return BPromise[_0xd2d5('0x5a')](_0x241a2b,function(_0x4286ae){return db[_0xd2d5('0x62')][_0xd2d5('0x51')](_0x4286ae,{'include':[{'model':db[_0xd2d5('0x5c')],'as':_0xd2d5('0x5f')}],'raw':!![],'transaction':_0x364668})['then'](function(_0x3698cb){_0x162996[_0xd2d5('0x63')](_0x3698cb[_0xd2d5('0x64')]({'plain':!![]}));});})[_0xd2d5('0x2d')](function(){return _0x162996;});});});}})[_0xd2d5('0x2d')](function(_0x4c98d5){return _0x4c98d5;})[_0xd2d5('0x2d')](respondWithResult(_0x1348a1,null))[_0xd2d5('0x4d')](handleError(_0x1348a1,null));};exports[_0xd2d5('0x65')]=function(_0x269b89,_0x77788){var _0x285038;return db[_0xd2d5('0x32')][_0xd2d5('0x50')]({'where':{'id':_0x269b89[_0xd2d5('0x4f')]['id']},'attributes':['id',_0xd2d5('0x30')]})['then'](handleEntityNotFound(_0x77788,null))['then'](function(_0x3dbd16){if(_0x3dbd16){_0x285038=_0x3dbd16;return db['UserProfileSection']['destroy']({'where':{'userProfileId':_0x269b89['params']['id'],'sectionId':_0x269b89[_0xd2d5('0x39')][_0xd2d5('0x66')]}});}})[_0xd2d5('0x2d')](function(){return _0x285038;})[_0xd2d5('0x2d')](respondWithStatusCode(_0x77788,null))['catch'](handleError(_0x77788,null));};exports[_0xd2d5('0x67')]=function(_0x208e2e,_0x3be9a8){var _0x526057=[];var _0xf1d8c8=[];return db[_0xd2d5('0x62')][_0xd2d5('0x4c')]({'where':{'userProfileId':_0x208e2e[_0xd2d5('0x4f')]['id']},'raw':!![]})['then'](function(_0x351b3e){_0x526057=_['filter'](_0x351b3e,function(_0x44ba44){return _0x44ba44[_0xd2d5('0x68')]===0x1||_[_0xd2d5('0x69')]([0x3eb,0x709],_0x44ba44[_0xd2d5('0x5d')]);});if(!_[_0xd2d5('0x6a')](_0x526057)){return _['map'](_0x526057,function(_0x19d6e6){return _0x19d6e6['sectionId'];});}else{return;}})[_0xd2d5('0x2d')](function(_0x43a40d){if(_0x43a40d)_0xf1d8c8=_0x43a40d;if(_['includes'](_0xf1d8c8,0x64)){var _0x2ddf13=_[_0xd2d5('0x50')](_0x526057,{'sectionId':0x64});return hasDefaultDashboard(_0x2ddf13)[_0xd2d5('0x2d')](function(_0x21a507){return _[_0xd2d5('0x46')](_0x526057,function(_0x170fc8){if(_0x170fc8[_0xd2d5('0x5d')]===0x64){_0x170fc8[_0xd2d5('0x6b')]=_0x21a507;}return _0x170fc8;});});}else{return;}})[_0xd2d5('0x2d')](function(_0x292c68){if(_0x292c68)_0x526057=_0x292c68;if(_['includes'](_0xf1d8c8,0x3eb)){var _0x2830ca=_[_0xd2d5('0x50')](_0x526057,{'sectionId':0x3eb});return getCustomDashboards(_0x2830ca)[_0xd2d5('0x2d')](function(_0x3afe3a){return _[_0xd2d5('0x46')](_0x526057,function(_0x55b8db){if(_0x2830ca[_0xd2d5('0x68')]){if(_0x55b8db[_0xd2d5('0x5d')]===0x3eb){_0x55b8db[_0xd2d5('0x6b')]=_0x3afe3a;}}else{if(_0x55b8db[_0xd2d5('0x5d')]===0x64){if(!_0x55b8db[_0xd2d5('0x6b')]){_0x55b8db[_0xd2d5('0x6b')]=[];}_0x55b8db['subsections']=_0x55b8db['subsections'][_0xd2d5('0x6c')](_0x3afe3a);}}return _0x55b8db;});});}else{return;}})[_0xd2d5('0x2d')](function(_0x25be46){if(_0x25be46)_0x526057=_0x25be46;if(_[_0xd2d5('0x69')](_0xf1d8c8,0x709)){var _0x3c257b=_[_0xd2d5('0x50')](_0x526057,{'sectionId':0x709});return getPlugins(_0x3c257b)[_0xd2d5('0x2d')](function(_0x4f6004){if(_0x3c257b[_0xd2d5('0x68')]){return _[_0xd2d5('0x46')](_0x526057,function(_0x2771d5){if(_0x2771d5[_0xd2d5('0x5d')]===0x709){_0x2771d5['subsections']=_0x4f6004;}return _0x2771d5;});}else{var _0x3451ff={'sectionId':0x76c,'enabled':0x1,'subsections':_0x4f6004};var _0x522fb6=_[_0xd2d5('0x46')](_0x526057);_0x522fb6[_0xd2d5('0x63')](_0x3451ff);return _0x522fb6;}});}else{return;}})[_0xd2d5('0x2d')](function(_0x291445){if(_0x291445)_0x526057=_0x291445;return _[_0xd2d5('0x45')](_0x526057,[_0xd2d5('0x68'),0x1]);})[_0xd2d5('0x2d')](respondWithResult(_0x3be9a8,null))['catch'](handleError(_0x3be9a8,null));};function hasDefaultDashboard(_0x3f62f9){var _0x5c66fb=[0x65];return new BPromise(function(_0x4834a4,_0x580728){try{if(_0x3f62f9[_0xd2d5('0x5b')]){_0x4834a4(_0x5c66fb);}else{return db[_0xd2d5('0x5c')][_0xd2d5('0x6d')]({'where':{'sectionId':_0x3f62f9['id']},'raw':!![]})['then'](function(_0x3d7fda){_0x3d7fda?_0x4834a4(_0x5c66fb):_0x4834a4();});}}catch(_0x46c446){_0x580728(_0x46c446);}});}function getCustomDashboards(_0xe84cc3){var _0x3bbe32=[];return new BPromise(function(_0x16d4dd,_0x579b79){try{if(_0xe84cc3['autoAssociation']){return db[_0xd2d5('0x6e')][_0xd2d5('0x4c')]({'raw':!![]})[_0xd2d5('0x2d')](function(_0x508f51){_0x508f51[_0xd2d5('0x6f')](function(_0x217d37){_0x3bbe32[_0xd2d5('0x63')](_0x217d37['id']+0x1869f);});_0x16d4dd(_0x3bbe32);});}else{return db[_0xd2d5('0x5c')][_0xd2d5('0x4c')]({'where':{'sectionId':_0xe84cc3['id']},'raw':!![]})[_0xd2d5('0x2d')](function(_0x1d26ac){_0x1d26ac['forEach'](function(_0x195c83){_0x3bbe32[_0xd2d5('0x63')](_0x195c83['resourceId']+0x1869f);});_0x16d4dd(_0x3bbe32);});}}catch(_0x240131){_0x579b79(_0x240131);}});}function getPlugins(_0x19fb2f){var _0x1a8c6c=[];return new BPromise(function(_0x1931cd,_0xc5f5ef){try{if(_0x19fb2f[_0xd2d5('0x5b')]){return db[_0xd2d5('0x70')][_0xd2d5('0x4c')]({'raw':!![]})[_0xd2d5('0x2d')](function(_0xc903fe){_0xc903fe['forEach'](function(_0x1855f6){_0x1a8c6c[_0xd2d5('0x63')](_0x1855f6['id']+0x15b38);});_0x1931cd(_0x1a8c6c);});}else{return db[_0xd2d5('0x5c')][_0xd2d5('0x4c')]({'where':{'sectionId':_0x19fb2f['id']},'raw':!![]})['then'](function(_0x3b79dd){_0x3b79dd[_0xd2d5('0x6f')](function(_0x185208){_0x1a8c6c[_0xd2d5('0x63')](_0x185208[_0xd2d5('0x71')]+0x15b38);});_0x1931cd(_0x1a8c6c);});}}catch(_0x4a52e1){_0xc5f5ef(_0x4a52e1);}});}exports[_0xd2d5('0x72')]=function(_0xcdfce3,_0x5e5aba){return db[_0xd2d5('0x32')][_0xd2d5('0x50')]({'where':{'id':_0xcdfce3[_0xd2d5('0x4f')]['id']}})['then'](handleEntityNotFound(_0x5e5aba,null))[_0xd2d5('0x2d')](function(_0x3815e4){if(_0x3815e4){return db[_0xd2d5('0x58')][_0xd2d5('0x59')](function(_0x4bde40){return db[_0xd2d5('0x62')]['findAll']({'where':{'userProfileId':_0xcdfce3[_0xd2d5('0x4f')]['id']},'attributes':['id'],'raw':!![]})[_0xd2d5('0x2d')](function(_0x31a554){if(_0x31a554){return db[_0xd2d5('0x62')][_0xd2d5('0x2c')]({'where':{'userProfileId':_0xcdfce3[_0xd2d5('0x4f')]['id'],'id':_[_0xd2d5('0x46')](_0x31a554,function(_0x54292e){return _0x54292e['id'];})},'transaction':_0x4bde40});}})[_0xd2d5('0x2d')](function(_0xf886f2){var _0x1474c8=_[_0xd2d5('0x46')](_0xcdfce3['body'],function(_0x18c7f2){_0x18c7f2['userProfileId']=_0xcdfce3['params']['id'];return _0x18c7f2;});return db[_0xd2d5('0x62')]['bulkCreate'](_0x1474c8,{'raw':!![],'transaction':_0x4bde40});})[_0xd2d5('0x2d')](function(_0x4e9438){var _0xb4c667=_[_0xd2d5('0x45')](_[_0xd2d5('0x46')](_0x4e9438,function(_0x1c1995){return _0x1c1995[_0xd2d5('0x64')]({'plain':!![]});}),{'includeAll':![]});if(_0xb4c667){return db[_0xd2d5('0x62')][_0xd2d5('0x4c')]({'where':{'userProfileId':_0xcdfce3[_0xd2d5('0x4f')]['id'],'sectionId':_[_0xd2d5('0x46')](_0xb4c667,function(_0x479708){return _0x479708[_0xd2d5('0x5d')];})},'attributes':['id',_0xd2d5('0x5d')],'raw':!![]})[_0xd2d5('0x2d')](function(_0x1ba06e){var _0x3ba65f=_[_0xd2d5('0x46')](_0xcdfce3['body'],function(_0x80d5a){_0x80d5a[_0xd2d5('0x5e')]=_0xcdfce3[_0xd2d5('0x4f')]['id'];return _0x80d5a;});return db[_0xd2d5('0x5c')]['bulkCreate'](_0x3ba65f,{'raw':!![],'transaction':_0x4bde40});});}})[_0xd2d5('0x4d')](handleError(_0x5e5aba,null));});}})[_0xd2d5('0x2d')](function(_0xc776ad){var _0x3cbec9=_[_0xd2d5('0x46')](_0xc776ad,function(_0x3183c1){return _0x3183c1[_0xd2d5('0x64')]({'plain':!![]});});})[_0xd2d5('0x2d')](respondWithResult(_0x5e5aba,null))[_0xd2d5('0x4d')](handleError(_0x5e5aba,null));};exports['removeResources']=function(_0x449d1e,_0x2ab3ca,_0x5dc2e4){return db[_0xd2d5('0x32')][_0xd2d5('0x50')]({'where':{'id':_0x449d1e[_0xd2d5('0x4f')]['id']}})[_0xd2d5('0x2d')](handleEntityNotFound(_0x2ab3ca,null))['then'](function(_0x42fc24){if(_0x42fc24){return _0x42fc24['removeResources'](_0x449d1e['query'][_0xd2d5('0x66')]);}})['then'](respondWithStatusCode(_0x2ab3ca,null))[_0xd2d5('0x4d')](handleError(_0x2ab3ca,null));};exports['getResources']=function(_0x17f3a5,_0x426f31){var _0x3ada3f={};if(!_0x17f3a5[_0xd2d5('0x39')][_0xd2d5('0x73')])throw new Error(_0xd2d5('0x74'));if(!_0x17f3a5['query']['hasOwnProperty']('nolimit')){_0x3ada3f['limit']=qs['limit'](_0x17f3a5[_0xd2d5('0x39')][_0xd2d5('0x24')]);_0x3ada3f[_0xd2d5('0x22')]=qs[_0xd2d5('0x22')](_0x17f3a5[_0xd2d5('0x39')][_0xd2d5('0x22')]);}return db[_0xd2d5('0x32')]['find']({'where':{'id':_0x17f3a5['params']['id']}})[_0xd2d5('0x2d')](function(_0x4238e6){if(!_0x4238e6)throw new Error(_0xd2d5('0x75')+_0x17f3a5[_0xd2d5('0x4f')]['id']);return db[_0xd2d5('0x32')][_0xd2d5('0x76')](_0x17f3a5);})[_0xd2d5('0x2d')](respondWithFilteredResult(_0x426f31,_0x3ada3f))['catch'](handleError(_0x426f31,null));};