b063093bdbc5f3ff7a4cae442d0f52cdbfceb38c
[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 _0xf567=['catch','show','params','create','body','clone','includeAll','find','get','omit','createdAt','updatedAt','crudPermissions','transaction','findAll','each','autoAssociation','UserProfileResource','sectionId','userProfileId','UserProfileSection','Resources','destroy','addSections','sequelize','push','getSections','includes','isEmpty','subsections','enabled','findOne','Dashboard','forEach','resourceId','addResources','bulkCreate','removeResources','ids','getResources','section','Missing\x20section\x20parameter','eml-format','rimraf','zip-dir','request-promise','moment','mustache','util','path','sox','ejs','fs-extra','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./userProfile.socket','register','sendStatus','end','status','offset','undefined','limit','set','Content-Range','json','apply','reject','save','update','then','error','stack','name','map','UserProfile','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','nolimit','order','sort','filter','where','merge','VIRTUAL','options','count','include','rows'];(function(_0x38422b,_0x10cf71){var _0x2fb623=function(_0x3f7dfb){while(--_0x3f7dfb){_0x38422b['push'](_0x38422b['shift']());}};_0x2fb623(++_0x10cf71);}(_0xf567,0x118));var _0x7f56=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xf567[_0x20a584];return _0x4b41a8;};'use strict';var emlformat=require(_0x7f56('0x0'));var rimraf=require(_0x7f56('0x1'));var zipdir=require(_0x7f56('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x7f56('0x3'));var moment=require(_0x7f56('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x7f56('0x5'));var util=require(_0x7f56('0x6'));var path=require(_0x7f56('0x7'));var sox=require(_0x7f56('0x8'));var csv=require('to-csv');var ejs=require(_0x7f56('0x9'));var fs=require('fs');var fs_extra=require(_0x7f56('0xa'));var _=require(_0x7f56('0xb'));var squel=require('squel');var crypto=require(_0x7f56('0xc'));var jsforce=require(_0x7f56('0xd'));var deskjs=require(_0x7f56('0xe'));var toCsv=require(_0x7f56('0xf'));var querystring=require(_0x7f56('0x10'));var Papa=require(_0x7f56('0x11'));var Redis=require(_0x7f56('0x12'));var authService=require(_0x7f56('0x13'));var qs=require(_0x7f56('0x14'));var as=require(_0x7f56('0x15'));var hardwareService=require(_0x7f56('0x16'));var logger=require(_0x7f56('0x17'))(_0x7f56('0x18'));var utils=require(_0x7f56('0x19'));var config=require(_0x7f56('0x1a'));var licenseUtil=require(_0x7f56('0x1b'));var db=require(_0x7f56('0x1c'))['db'];config[_0x7f56('0x1d')]=_[_0x7f56('0x1e')](config[_0x7f56('0x1d')],{'host':_0x7f56('0x1f'),'port':0x18eb});var socket=require(_0x7f56('0x20'))(new Redis(config['redis']));require(_0x7f56('0x21'))[_0x7f56('0x22')](socket);function respondWithStatusCode(_0x11d663,_0x53befd){_0x53befd=_0x53befd||0xcc;return function(_0x1c1e6d){if(_0x1c1e6d){return _0x11d663[_0x7f56('0x23')](_0x53befd);}return _0x11d663['status'](_0x53befd)[_0x7f56('0x24')]();};}function respondWithResult(_0x441459,_0x4ad41a){_0x4ad41a=_0x4ad41a||0xc8;return function(_0x5b2b27){if(_0x5b2b27){return _0x441459[_0x7f56('0x25')](_0x4ad41a)['json'](_0x5b2b27);}};}function respondWithFilteredResult(_0x415b6f,_0x2a2d7b){return function(_0x5201eb){if(_0x5201eb){var _0xc4d664=typeof _0x2a2d7b[_0x7f56('0x26')]===_0x7f56('0x27')&&typeof _0x2a2d7b[_0x7f56('0x28')]===_0x7f56('0x27');var _0x24fe45=_0x5201eb['count'];var _0x32aa49=_0xc4d664?0x0:_0x2a2d7b['offset'];var _0x179521=_0xc4d664?_0x5201eb['count']:_0x2a2d7b[_0x7f56('0x26')]+_0x2a2d7b[_0x7f56('0x28')];var _0x289207;if(_0x179521>=_0x24fe45){_0x179521=_0x24fe45;_0x289207=0xc8;}else{_0x289207=0xce;}_0x415b6f[_0x7f56('0x25')](_0x289207);return _0x415b6f[_0x7f56('0x29')](_0x7f56('0x2a'),_0x32aa49+'-'+_0x179521+'/'+_0x24fe45)[_0x7f56('0x2b')](_0x5201eb);}return null;};}function patchUpdates(_0x3f54f8){return function(_0x879e3a){try{jsonpatch[_0x7f56('0x2c')](_0x879e3a,_0x3f54f8,!![]);}catch(_0x52a902){return BPromise[_0x7f56('0x2d')](_0x52a902);}return _0x879e3a[_0x7f56('0x2e')]();};}function saveUpdates(_0x2943fe,_0x3c8658){return function(_0x37d48e){if(_0x37d48e){return _0x37d48e[_0x7f56('0x2f')](_0x2943fe)[_0x7f56('0x30')](function(_0x5da9ce){return _0x5da9ce;});}return null;};}function removeEntity(_0x4a20d5,_0x4a1f1b){return function(_0x29de7c){if(_0x29de7c){return _0x29de7c['destroy']()[_0x7f56('0x30')](function(){_0x4a20d5[_0x7f56('0x25')](0xcc)[_0x7f56('0x24')]();});}};}function handleEntityNotFound(_0x5bb367,_0x236120){return function(_0x3d0faa){if(!_0x3d0faa){_0x5bb367[_0x7f56('0x23')](0x194);}return _0x3d0faa;};}function handleError(_0xb8197f,_0x5ea887){_0x5ea887=_0x5ea887||0x1f4;return function(_0x3d3095){logger[_0x7f56('0x31')](_0x3d3095[_0x7f56('0x32')]);if(_0x3d3095['name']){delete _0x3d3095[_0x7f56('0x33')];}_0xb8197f[_0x7f56('0x25')](_0x5ea887)['send'](_0x3d3095);};}exports['index']=function(_0x57db84,_0x2849f8){var _0x47e4ce={},_0x4d92c0={},_0x25bd28={'count':0x0,'rows':[]};var _0x56a70b=_[_0x7f56('0x34')](db[_0x7f56('0x35')][_0x7f56('0x36')],function(_0x523805){return{'name':_0x523805[_0x7f56('0x37')],'type':_0x523805[_0x7f56('0x38')][_0x7f56('0x39')]};});_0x4d92c0['model']=_[_0x7f56('0x34')](_0x56a70b,_0x7f56('0x33'));_0x4d92c0[_0x7f56('0x3a')]=_[_0x7f56('0x3b')](_0x57db84[_0x7f56('0x3a')]);_0x4d92c0[_0x7f56('0x3c')]=_[_0x7f56('0x3d')](_0x4d92c0[_0x7f56('0x3e')],_0x4d92c0[_0x7f56('0x3a')]);_0x47e4ce[_0x7f56('0x3f')]=_[_0x7f56('0x3d')](_0x4d92c0[_0x7f56('0x3e')],qs['fields'](_0x57db84['query'][_0x7f56('0x40')]));_0x47e4ce['attributes']=_0x47e4ce[_0x7f56('0x3f')][_0x7f56('0x41')]?_0x47e4ce['attributes']:_0x4d92c0[_0x7f56('0x3e')];if(!_0x57db84[_0x7f56('0x3a')]['hasOwnProperty'](_0x7f56('0x42'))){_0x47e4ce[_0x7f56('0x28')]=qs['limit'](_0x57db84[_0x7f56('0x3a')][_0x7f56('0x28')]);_0x47e4ce[_0x7f56('0x26')]=qs['offset'](_0x57db84[_0x7f56('0x3a')]['offset']);}_0x47e4ce[_0x7f56('0x43')]=qs['sort'](_0x57db84[_0x7f56('0x3a')][_0x7f56('0x44')]);_0x47e4ce['where']=qs['filters'](_['pick'](_0x57db84[_0x7f56('0x3a')],_0x4d92c0[_0x7f56('0x3c')]),_0x56a70b);if(_0x57db84['query'][_0x7f56('0x45')]){_0x47e4ce[_0x7f56('0x46')]=_[_0x7f56('0x47')](_0x47e4ce[_0x7f56('0x46')],{'$or':_[_0x7f56('0x34')](_0x56a70b,function(_0x29887c){if(_0x29887c[_0x7f56('0x38')]!==_0x7f56('0x48')){var _0x453741={};_0x453741[_0x29887c[_0x7f56('0x33')]]={'$like':'%'+_0x57db84[_0x7f56('0x3a')][_0x7f56('0x45')]+'%'};return _0x453741;}})});}_0x47e4ce=_[_0x7f56('0x47')]({},_0x47e4ce,_0x57db84[_0x7f56('0x49')]);var _0x352456={'where':_0x47e4ce[_0x7f56('0x46')]};return db[_0x7f56('0x35')][_0x7f56('0x4a')](_0x352456)[_0x7f56('0x30')](function(_0xe02966){_0x25bd28[_0x7f56('0x4a')]=_0xe02966;if(_0x57db84[_0x7f56('0x3a')]['includeAll']){_0x47e4ce[_0x7f56('0x4b')]=[{'all':!![]}];}return db['UserProfile']['findAll'](_0x47e4ce);})[_0x7f56('0x30')](function(_0x438a30){_0x25bd28[_0x7f56('0x4c')]=_0x438a30;return _0x25bd28;})[_0x7f56('0x30')](respondWithFilteredResult(_0x2849f8,_0x47e4ce))[_0x7f56('0x4d')](handleError(_0x2849f8,null));};exports[_0x7f56('0x4e')]=function(_0x5bd4fb,_0x3725e6){var _0x2d0756={'raw':![],'where':{'id':_0x5bd4fb[_0x7f56('0x4f')]['id']}},_0x4a4767={};_0x4a4767[_0x7f56('0x3e')]=_[_0x7f56('0x3b')](db[_0x7f56('0x35')][_0x7f56('0x36')]);_0x4a4767[_0x7f56('0x3a')]=_[_0x7f56('0x3b')](_0x5bd4fb[_0x7f56('0x3a')]);_0x4a4767[_0x7f56('0x3c')]=_[_0x7f56('0x3d')](_0x4a4767[_0x7f56('0x3e')],_0x4a4767['query']);_0x2d0756['attributes']=_[_0x7f56('0x3d')](_0x4a4767[_0x7f56('0x3e')],qs['fields'](_0x5bd4fb[_0x7f56('0x3a')]['fields']));_0x2d0756[_0x7f56('0x3f')]=_0x2d0756[_0x7f56('0x3f')][_0x7f56('0x41')]?_0x2d0756['attributes']:_0x4a4767[_0x7f56('0x3e')];if(_0x5bd4fb['query']['includeAll']){_0x2d0756[_0x7f56('0x4b')]=[{'all':!![]}];}_0x2d0756=_[_0x7f56('0x47')]({},_0x2d0756,_0x5bd4fb['options']);return db[_0x7f56('0x35')]['find'](_0x2d0756)[_0x7f56('0x30')](handleEntityNotFound(_0x3725e6,null))[_0x7f56('0x30')](respondWithResult(_0x3725e6,null))[_0x7f56('0x4d')](handleError(_0x3725e6,null));};exports[_0x7f56('0x50')]=function(_0x5cc708,_0x25704f){return db[_0x7f56('0x35')][_0x7f56('0x50')](_0x5cc708[_0x7f56('0x51')],{})[_0x7f56('0x30')](respondWithResult(_0x25704f,0xc9))[_0x7f56('0x4d')](handleError(_0x25704f,null));};exports[_0x7f56('0x52')]=function(_0x21ed5c,_0x725760){var _0x509d3a={'where':{'id':_0x21ed5c[_0x7f56('0x4f')]['id']}},_0x489c6a={};_0x489c6a['model']=_[_0x7f56('0x3b')](db[_0x7f56('0x35')]['rawAttributes']);_0x509d3a[_0x7f56('0x3f')]=_[_0x7f56('0x3d')](_0x489c6a['model'],qs[_0x7f56('0x40')](_0x21ed5c[_0x7f56('0x3a')][_0x7f56('0x40')]));_0x509d3a['attributes']=_0x509d3a[_0x7f56('0x3f')][_0x7f56('0x41')]?_0x509d3a[_0x7f56('0x3f')]:_0x489c6a[_0x7f56('0x3e')];if(_0x21ed5c['query'][_0x7f56('0x53')]){_0x509d3a['include']=[{'all':!![]}];}_0x509d3a=_[_0x7f56('0x47')]({},_0x509d3a,_0x21ed5c[_0x7f56('0x49')]);return db[_0x7f56('0x35')][_0x7f56('0x54')](_0x509d3a)[_0x7f56('0x30')](handleEntityNotFound(_0x725760,null))[_0x7f56('0x30')](function(_0x14acdc){if(_0x14acdc){var _0x250315=_0x14acdc[_0x7f56('0x55')]({'plain':!![]});_0x250315=qs[_0x7f56('0x56')](_0x250315,['id',_0x7f56('0x57'),_0x7f56('0x58'),_0x7f56('0x59')]);_0x21ed5c[_0x7f56('0x51')]=_[_0x7f56('0x56')](_0x21ed5c[_0x7f56('0x51')],['id',_0x7f56('0x57'),_0x7f56('0x58')]);return db['sequelize'][_0x7f56('0x5a')](function(_0x1e8914){return db['UserProfile'][_0x7f56('0x50')](_['merge'](_0x250315,_0x21ed5c[_0x7f56('0x51')]),{'include':_0x21ed5c['query'][_0x7f56('0x53')]?[{'all':!![]}]:undefined,'transaction':_0x1e8914})['then'](function(_0x36d8a0){var _0x20dbda=_0x36d8a0[_0x7f56('0x55')]({'plain':!![]});return db['UserProfileSection'][_0x7f56('0x5b')]({'where':{'userProfileId':_0x21ed5c[_0x7f56('0x4f')]['id']},'raw':!![]})[_0x7f56('0x30')](function(_0x517630){if(_0x517630){return BPromise[_0x7f56('0x5c')](_0x517630,function(_0x3be0a1){return new BPromise(function(_0x1db23a,_0x61201d){if(_0x3be0a1[_0x7f56('0x5d')]===null||_0x3be0a1[_0x7f56('0x5d')]===0x1)_0x1db23a(null);return db[_0x7f56('0x5e')][_0x7f56('0x5b')]({'where':{'sectionId':_0x3be0a1['id']},'raw':!![]})[_0x7f56('0x30')](function(_0x3d3e48){var _0x1ab83b=_[_0x7f56('0x34')](_0x3d3e48,function(_0x227356){return qs[_0x7f56('0x56')](_0x227356,['id',_0x7f56('0x57'),_0x7f56('0x58'),_0x7f56('0x5f')]);});_0x1db23a(_0x1ab83b);})[_0x7f56('0x4d')](function(_0x1e7bec){_0x61201d(_0x1e7bec);});})[_0x7f56('0x30')](function(_0x282e42){var _0x887246=qs[_0x7f56('0x56')](_0x3be0a1,['id',_0x7f56('0x57'),_0x7f56('0x58')]);_0x887246[_0x7f56('0x60')]=_0x20dbda['id'];if(_0x282e42)_0x887246['Resources']=_0x282e42;return _0x887246;})['then'](function(_0x41e86e){return db[_0x7f56('0x61')][_0x7f56('0x50')](_0x41e86e,{'include':[{'model':db[_0x7f56('0x5e')],'as':_0x7f56('0x62')}],'raw':!![],'transaction':_0x1e8914});});})[_0x7f56('0x30')](function(){return _0x20dbda;});}});});});}})[_0x7f56('0x30')](respondWithResult(_0x725760,0xc9))[_0x7f56('0x4d')](handleError(_0x725760,null));};exports['update']=function(_0x3dbf43,_0x3d8c89){if(_0x3dbf43['body']['id']){delete _0x3dbf43[_0x7f56('0x51')]['id'];}return db[_0x7f56('0x35')][_0x7f56('0x54')]({'where':{'id':_0x3dbf43[_0x7f56('0x4f')]['id']}})[_0x7f56('0x30')](handleEntityNotFound(_0x3d8c89,null))[_0x7f56('0x30')](saveUpdates(_0x3dbf43[_0x7f56('0x51')],null))[_0x7f56('0x30')](respondWithResult(_0x3d8c89,null))['catch'](handleError(_0x3d8c89,null));};exports[_0x7f56('0x63')]=function(_0x521978,_0x9d77d9){return db[_0x7f56('0x35')][_0x7f56('0x54')]({'where':{'id':_0x521978[_0x7f56('0x4f')]['id']}})[_0x7f56('0x30')](handleEntityNotFound(_0x9d77d9,null))[_0x7f56('0x30')](removeEntity(_0x9d77d9,null))['catch'](handleError(_0x9d77d9,null));};exports['describe']=function(_0x43fa26,_0x3ed009){return db[_0x7f56('0x35')]['describe']()['then'](respondWithResult(_0x3ed009,null))['catch'](handleError(_0x3ed009,null));};exports[_0x7f56('0x64')]=function(_0x5a8e66,_0x43a0f6){var _0x141740=_0x5a8e66[_0x7f56('0x51')];return db['UserProfile'][_0x7f56('0x54')]({'where':{'id':_0x5a8e66['params']['id']}})[_0x7f56('0x30')](handleEntityNotFound(_0x43a0f6,null))[_0x7f56('0x30')](function(_0x2197fe){if(_0x2197fe){return db[_0x7f56('0x65')]['transaction'](function(_0x1070a5){return db[_0x7f56('0x61')][_0x7f56('0x63')]({'where':{'userProfileId':_0x5a8e66[_0x7f56('0x4f')]['id'],'sectionId':_['map'](_0x141740,function(_0x14b46c){return _0x14b46c[_0x7f56('0x5f')];})},'transaction':_0x1070a5})[_0x7f56('0x30')](function(){var _0x2c8c48=_[_0x7f56('0x34')](_0x141740,function(_0x3eb2b2){_0x3eb2b2[_0x7f56('0x60')]=_0x5a8e66['params']['id'];return _0x3eb2b2;});var _0x2ebc14=[];return BPromise['each'](_0x2c8c48,function(_0x376347){return db[_0x7f56('0x61')][_0x7f56('0x50')](_0x376347,{'include':[{'model':db[_0x7f56('0x5e')],'as':_0x7f56('0x62')}],'raw':!![],'transaction':_0x1070a5})['then'](function(_0x25297a){_0x2ebc14[_0x7f56('0x66')](_0x25297a[_0x7f56('0x55')]({'plain':!![]}));});})[_0x7f56('0x30')](function(){return _0x2ebc14;});});});}})[_0x7f56('0x30')](function(_0x402f38){return _0x402f38;})[_0x7f56('0x30')](respondWithResult(_0x43a0f6,null))[_0x7f56('0x4d')](handleError(_0x43a0f6,null));};exports['removeSections']=function(_0x4f16f7,_0x183e08){var _0x101bd5;return db[_0x7f56('0x35')][_0x7f56('0x54')]({'where':{'id':_0x4f16f7[_0x7f56('0x4f')]['id']},'attributes':['id',_0x7f56('0x33')]})[_0x7f56('0x30')](handleEntityNotFound(_0x183e08,null))['then'](function(_0x29b055){if(_0x29b055){_0x101bd5=_0x29b055;return db[_0x7f56('0x61')]['destroy']({'where':{'userProfileId':_0x4f16f7[_0x7f56('0x4f')]['id'],'sectionId':_0x4f16f7[_0x7f56('0x3a')]['ids']}});}})[_0x7f56('0x30')](function(){return _0x101bd5;})[_0x7f56('0x30')](respondWithStatusCode(_0x183e08,null))[_0x7f56('0x4d')](handleError(_0x183e08,null));};exports[_0x7f56('0x67')]=function(_0x2b15cf,_0x377bea){var _0x5394b7=[];var _0x198f1a=[];return db[_0x7f56('0x61')][_0x7f56('0x5b')]({'where':{'userProfileId':_0x2b15cf['params']['id']},'raw':!![]})[_0x7f56('0x30')](function(_0x3a7427){_0x5394b7=_['filter'](_0x3a7427,function(_0x2eb3ff){return _0x2eb3ff['enabled']===0x1||_[_0x7f56('0x68')]([0x3eb,0x709],_0x2eb3ff[_0x7f56('0x5f')]);});if(!_[_0x7f56('0x69')](_0x5394b7)){return _['map'](_0x5394b7,function(_0x44d45d){return _0x44d45d[_0x7f56('0x5f')];});}else{return;}})['then'](function(_0x3da59a){if(_0x3da59a)_0x198f1a=_0x3da59a;if(_[_0x7f56('0x68')](_0x198f1a,0x64)){var _0x203463=_[_0x7f56('0x54')](_0x5394b7,{'sectionId':0x64});return hasDefaultDashboard(_0x203463)[_0x7f56('0x30')](function(_0x84c93c){return _['map'](_0x5394b7,function(_0x3ac09b){if(_0x3ac09b[_0x7f56('0x5f')]===0x64){_0x3ac09b[_0x7f56('0x6a')]=_0x84c93c;}return _0x3ac09b;});});}else{return;}})[_0x7f56('0x30')](function(_0x6c5d62){if(_0x6c5d62)_0x5394b7=_0x6c5d62;if(_[_0x7f56('0x68')](_0x198f1a,0x3eb)){var _0x57eddb=_[_0x7f56('0x54')](_0x5394b7,{'sectionId':0x3eb});return getCustomDashboards(_0x57eddb)[_0x7f56('0x30')](function(_0x521e88){return _[_0x7f56('0x34')](_0x5394b7,function(_0xd29eb5){if(_0x57eddb[_0x7f56('0x6b')]){if(_0xd29eb5[_0x7f56('0x5f')]===0x3eb){_0xd29eb5[_0x7f56('0x6a')]=_0x521e88;}}else{if(_0xd29eb5[_0x7f56('0x5f')]===0x64){_0xd29eb5[_0x7f56('0x6a')]=_0x521e88;}}return _0xd29eb5;});});}else{return;}})[_0x7f56('0x30')](function(_0x13abb9){if(_0x13abb9)_0x5394b7=_0x13abb9;if(_['includes'](_0x198f1a,0x709)){var _0xf65309=_['find'](_0x5394b7,{'sectionId':0x709});return getPlugins(_0xf65309)[_0x7f56('0x30')](function(_0x681e85){if(_0xf65309[_0x7f56('0x6b')]){return _[_0x7f56('0x34')](_0x5394b7,function(_0x379ef9){if(_0x379ef9['sectionId']===0x709){_0x379ef9[_0x7f56('0x6a')]=_0x681e85;}return _0x379ef9;});}else{var _0x102e98={'sectionId':0x76c,'enabled':0x1,'subsections':_0x681e85};var _0x5eb683=_[_0x7f56('0x34')](_0x5394b7);_0x5eb683[_0x7f56('0x66')](_0x102e98);return _0x5eb683;}});}else{return;}})[_0x7f56('0x30')](function(_0x4c93b9){if(_0x4c93b9)_0x5394b7=_0x4c93b9;return _[_0x7f56('0x45')](_0x5394b7,[_0x7f56('0x6b'),0x1]);})[_0x7f56('0x30')](respondWithResult(_0x377bea,null))[_0x7f56('0x4d')](handleError(_0x377bea,null));};function hasDefaultDashboard(_0x1febc1){var _0x5aa159=[0x65];return new BPromise(function(_0x542b98,_0x5165d9){try{if(_0x1febc1['autoAssociation']){_0x542b98(_0x5aa159);}else{return db['UserProfileResource'][_0x7f56('0x6c')]({'where':{'sectionId':_0x1febc1['id']},'raw':!![]})[_0x7f56('0x30')](function(_0x229565){_0x229565?_0x542b98(_0x5aa159):_0x542b98();});}}catch(_0x336156){_0x5165d9(_0x336156);}});}function getCustomDashboards(_0x5c95c7){var _0x13e3ce=[];return new BPromise(function(_0x1a77a8,_0x46ea50){try{if(_0x5c95c7[_0x7f56('0x5d')]){return db[_0x7f56('0x6d')][_0x7f56('0x5b')]({'raw':!![]})[_0x7f56('0x30')](function(_0x436f88){_0x436f88[_0x7f56('0x6e')](function(_0x4e89ae){_0x13e3ce[_0x7f56('0x66')](_0x4e89ae['id']+0x1869f);});_0x1a77a8(_0x13e3ce);});}else{return db['UserProfileResource'][_0x7f56('0x5b')]({'where':{'sectionId':_0x5c95c7['id']},'raw':!![]})[_0x7f56('0x30')](function(_0x355ee2){_0x355ee2[_0x7f56('0x6e')](function(_0x1321e4){_0x13e3ce['push'](_0x1321e4[_0x7f56('0x6f')]+0x1869f);});_0x1a77a8(_0x13e3ce);});}}catch(_0x4133d6){_0x46ea50(_0x4133d6);}});}function getPlugins(_0x2f4336){var _0x4b769a=[];return new BPromise(function(_0x1d90ea,_0x32b529){try{if(_0x2f4336[_0x7f56('0x5d')]){return db['Plugin'][_0x7f56('0x5b')]({'raw':!![]})[_0x7f56('0x30')](function(_0x352923){_0x352923[_0x7f56('0x6e')](function(_0xd07ceb){_0x4b769a[_0x7f56('0x66')](_0xd07ceb['id']+0x15b38);});_0x1d90ea(_0x4b769a);});}else{return db[_0x7f56('0x5e')][_0x7f56('0x5b')]({'where':{'sectionId':_0x2f4336['id']},'raw':!![]})[_0x7f56('0x30')](function(_0x39576e){_0x39576e[_0x7f56('0x6e')](function(_0x5ce5ac){_0x4b769a[_0x7f56('0x66')](_0x5ce5ac['resourceId']+0x15b38);});_0x1d90ea(_0x4b769a);});}}catch(_0x5ccab4){_0x32b529(_0x5ccab4);}});}exports[_0x7f56('0x70')]=function(_0xc65837,_0x2f00c7){return db[_0x7f56('0x35')][_0x7f56('0x54')]({'where':{'id':_0xc65837[_0x7f56('0x4f')]['id']}})[_0x7f56('0x30')](handleEntityNotFound(_0x2f00c7,null))['then'](function(_0x284a7f){if(_0x284a7f){return db[_0x7f56('0x65')][_0x7f56('0x5a')](function(_0x45ca9f){return db[_0x7f56('0x61')][_0x7f56('0x5b')]({'where':{'userProfileId':_0xc65837['params']['id']},'attributes':['id'],'raw':!![]})[_0x7f56('0x30')](function(_0x1e334e){if(_0x1e334e){return db[_0x7f56('0x61')][_0x7f56('0x63')]({'where':{'userProfileId':_0xc65837[_0x7f56('0x4f')]['id'],'id':_[_0x7f56('0x34')](_0x1e334e,function(_0x27f678){return _0x27f678['id'];})},'transaction':_0x45ca9f});}})[_0x7f56('0x30')](function(_0x482202){var _0xa836bc=_[_0x7f56('0x34')](_0xc65837[_0x7f56('0x51')],function(_0x3112e2){_0x3112e2[_0x7f56('0x60')]=_0xc65837['params']['id'];return _0x3112e2;});return db[_0x7f56('0x61')]['bulkCreate'](_0xa836bc,{'raw':!![],'transaction':_0x45ca9f});})[_0x7f56('0x30')](function(_0x1f30dd){var _0x29b1dc=_[_0x7f56('0x45')](_[_0x7f56('0x34')](_0x1f30dd,function(_0x164d7c){return _0x164d7c['get']({'plain':!![]});}),{'includeAll':![]});if(_0x29b1dc){return db[_0x7f56('0x61')]['findAll']({'where':{'userProfileId':_0xc65837['params']['id'],'sectionId':_[_0x7f56('0x34')](_0x29b1dc,function(_0x46df2c){return _0x46df2c[_0x7f56('0x5f')];})},'attributes':['id','sectionId'],'raw':!![]})[_0x7f56('0x30')](function(_0x82b63d){var _0x2d046d=_[_0x7f56('0x34')](_0xc65837[_0x7f56('0x51')],function(_0x51a9d3){_0x51a9d3[_0x7f56('0x60')]=_0xc65837['params']['id'];return _0x51a9d3;});return db[_0x7f56('0x5e')][_0x7f56('0x71')](_0x2d046d,{'raw':!![],'transaction':_0x45ca9f});});}})[_0x7f56('0x4d')](handleError(_0x2f00c7,null));});}})[_0x7f56('0x30')](function(_0x2d4b7d){var _0x20d20a=_[_0x7f56('0x34')](_0x2d4b7d,function(_0x59c20e){return _0x59c20e[_0x7f56('0x55')]({'plain':!![]});});})[_0x7f56('0x30')](respondWithResult(_0x2f00c7,null))[_0x7f56('0x4d')](handleError(_0x2f00c7,null));};exports[_0x7f56('0x72')]=function(_0x197254,_0x3c723d,_0x3d21a8){return db[_0x7f56('0x35')][_0x7f56('0x54')]({'where':{'id':_0x197254[_0x7f56('0x4f')]['id']}})[_0x7f56('0x30')](handleEntityNotFound(_0x3c723d,null))[_0x7f56('0x30')](function(_0x4a44f9){if(_0x4a44f9){return _0x4a44f9[_0x7f56('0x72')](_0x197254['query'][_0x7f56('0x73')]);}})[_0x7f56('0x30')](respondWithStatusCode(_0x3c723d,null))[_0x7f56('0x4d')](handleError(_0x3c723d,null));};exports[_0x7f56('0x74')]=function(_0x38418c,_0xfeba8b){var _0x4dcc87={};if(!_0x38418c[_0x7f56('0x3a')][_0x7f56('0x75')])throw new Error(_0x7f56('0x76'));if(!_0x38418c[_0x7f56('0x3a')]['hasOwnProperty'](_0x7f56('0x42'))){_0x4dcc87['limit']=qs[_0x7f56('0x28')](_0x38418c[_0x7f56('0x3a')][_0x7f56('0x28')]);_0x4dcc87[_0x7f56('0x26')]=qs['offset'](_0x38418c[_0x7f56('0x3a')][_0x7f56('0x26')]);}return db[_0x7f56('0x35')][_0x7f56('0x54')]({'where':{'id':_0x38418c[_0x7f56('0x4f')]['id']}})[_0x7f56('0x30')](function(_0x4ef150){if(!_0x4ef150)throw new Error('No\x20User\x20Profile\x20found\x20for\x20id\x20'+_0x38418c[_0x7f56('0x4f')]['id']);return db[_0x7f56('0x35')]['getResources'](_0x38418c);})[_0x7f56('0x30')](respondWithFilteredResult(_0xfeba8b,_0x4dcc87))[_0x7f56('0x4d')](handleError(_0xfeba8b,null));};