Built motion from commit 47436d59.|2.6.7
[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 _0x1c3d=['crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','register','sendStatus','status','end','json','offset','undefined','limit','Content-Range','apply','reject','save','then','destroy','stack','name','send','map','UserProfile','rawAttributes','fieldName','type','key','model','query','intersection','fields','attributes','length','hasOwnProperty','sort','pick','filters','filter','where','merge','VIRTUAL','options','count','includeAll','include','findAll','rows','catch','show','params','keys','create','clone','find','get','omit','createdAt','updatedAt','crudPermissions','body','sequelize','transaction','UserProfileSection','autoAssociation','UserProfileResource','sectionId','userProfileId','Resources','update','describe','addSections','each','push','removeSections','getSections','enabled','includes','isEmpty','subsections','findOne','Dashboard','forEach','resourceId','Plugin','bulkCreate','removeResources','ids','getResources','section','Missing\x20section\x20parameter','nolimit','rimraf','zip-dir','fast-json-patch','request-promise','moment','util','path','sox','to-csv','ejs','fs-extra','squel'];(function(_0x19e35c,_0x29cd1e){var _0x3e1fe8=function(_0x17258b){while(--_0x17258b){_0x19e35c['push'](_0x19e35c['shift']());}};_0x3e1fe8(++_0x29cd1e);}(_0x1c3d,0x1b8));var _0xd1c3=function(_0x2007cf,_0x42a0c1){_0x2007cf=_0x2007cf-0x0;var _0x60255c=_0x1c3d[_0x2007cf];return _0x60255c;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xd1c3('0x0'));var zipdir=require(_0xd1c3('0x1'));var jsonpatch=require(_0xd1c3('0x2'));var rp=require(_0xd1c3('0x3'));var moment=require(_0xd1c3('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xd1c3('0x5'));var path=require(_0xd1c3('0x6'));var sox=require(_0xd1c3('0x7'));var csv=require(_0xd1c3('0x8'));var ejs=require(_0xd1c3('0x9'));var fs=require('fs');var fs_extra=require(_0xd1c3('0xa'));var _=require('lodash');var squel=require(_0xd1c3('0xb'));var crypto=require(_0xd1c3('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xd1c3('0xd'));var toCsv=require(_0xd1c3('0x8'));var querystring=require(_0xd1c3('0xe'));var Papa=require(_0xd1c3('0xf'));var Redis=require(_0xd1c3('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xd1c3('0x11'));var hardwareService=require(_0xd1c3('0x12'));var logger=require(_0xd1c3('0x13'))(_0xd1c3('0x14'));var utils=require(_0xd1c3('0x15'));var config=require(_0xd1c3('0x16'));var licenseUtil=require(_0xd1c3('0x17'));var db=require(_0xd1c3('0x18'))['db'];config[_0xd1c3('0x19')]=_['defaults'](config[_0xd1c3('0x19')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd1c3('0x19')]));require('./userProfile.socket')[_0xd1c3('0x1a')](socket);function respondWithStatusCode(_0x1f30ff,_0x37d175){_0x37d175=_0x37d175||0xcc;return function(_0x52e7bc){if(_0x52e7bc){return _0x1f30ff[_0xd1c3('0x1b')](_0x37d175);}return _0x1f30ff[_0xd1c3('0x1c')](_0x37d175)[_0xd1c3('0x1d')]();};}function respondWithResult(_0x3bc2b,_0x42ba11){_0x42ba11=_0x42ba11||0xc8;return function(_0xb5af75){if(_0xb5af75){return _0x3bc2b[_0xd1c3('0x1c')](_0x42ba11)[_0xd1c3('0x1e')](_0xb5af75);}};}function respondWithFilteredResult(_0x3439dc,_0x31821f){return function(_0x5d26c2){if(_0x5d26c2){var _0x53a5e1=typeof _0x31821f[_0xd1c3('0x1f')]===_0xd1c3('0x20')&&typeof _0x31821f[_0xd1c3('0x21')]===_0xd1c3('0x20');var _0x5b2571=_0x5d26c2['count'];var _0x9c9d4d=_0x53a5e1?0x0:_0x31821f[_0xd1c3('0x1f')];var _0x1dcb29=_0x53a5e1?_0x5d26c2['count']:_0x31821f['offset']+_0x31821f[_0xd1c3('0x21')];var _0x1b5fae;if(_0x1dcb29>=_0x5b2571){_0x1dcb29=_0x5b2571;_0x1b5fae=0xc8;}else{_0x1b5fae=0xce;}_0x3439dc['status'](_0x1b5fae);return _0x3439dc['set'](_0xd1c3('0x22'),_0x9c9d4d+'-'+_0x1dcb29+'/'+_0x5b2571)[_0xd1c3('0x1e')](_0x5d26c2);}return null;};}function patchUpdates(_0x201ff0){return function(_0x16e5d6){try{jsonpatch[_0xd1c3('0x23')](_0x16e5d6,_0x201ff0,!![]);}catch(_0x46ed40){return BPromise[_0xd1c3('0x24')](_0x46ed40);}return _0x16e5d6[_0xd1c3('0x25')]();};}function saveUpdates(_0x33c380,_0x218ef1){return function(_0x5a9d5d){if(_0x5a9d5d){return _0x5a9d5d['update'](_0x33c380)[_0xd1c3('0x26')](function(_0x261323){return _0x261323;});}return null;};}function removeEntity(_0x6aad1c,_0x227f24){return function(_0x5d1988){if(_0x5d1988){return _0x5d1988[_0xd1c3('0x27')]()[_0xd1c3('0x26')](function(){_0x6aad1c['status'](0xcc)[_0xd1c3('0x1d')]();});}};}function handleEntityNotFound(_0x3f5206,_0x6f912b){return function(_0x173cb9){if(!_0x173cb9){_0x3f5206[_0xd1c3('0x1b')](0x194);}return _0x173cb9;};}function handleError(_0x423f84,_0x3a6d1c){_0x3a6d1c=_0x3a6d1c||0x1f4;return function(_0x551add){logger['error'](_0x551add[_0xd1c3('0x28')]);if(_0x551add[_0xd1c3('0x29')]){delete _0x551add[_0xd1c3('0x29')];}_0x423f84[_0xd1c3('0x1c')](_0x3a6d1c)[_0xd1c3('0x2a')](_0x551add);};}exports['index']=function(_0x331bad,_0xb778ce){var _0x5ce257={},_0x102e34={},_0x5a7cdb={'count':0x0,'rows':[]};var _0x1eefc2=_[_0xd1c3('0x2b')](db[_0xd1c3('0x2c')][_0xd1c3('0x2d')],function(_0x2c4449){return{'name':_0x2c4449[_0xd1c3('0x2e')],'type':_0x2c4449[_0xd1c3('0x2f')][_0xd1c3('0x30')]};});_0x102e34[_0xd1c3('0x31')]=_['map'](_0x1eefc2,_0xd1c3('0x29'));_0x102e34[_0xd1c3('0x32')]=_['keys'](_0x331bad[_0xd1c3('0x32')]);_0x102e34['filters']=_[_0xd1c3('0x33')](_0x102e34[_0xd1c3('0x31')],_0x102e34[_0xd1c3('0x32')]);_0x5ce257['attributes']=_[_0xd1c3('0x33')](_0x102e34[_0xd1c3('0x31')],qs[_0xd1c3('0x34')](_0x331bad[_0xd1c3('0x32')][_0xd1c3('0x34')]));_0x5ce257[_0xd1c3('0x35')]=_0x5ce257[_0xd1c3('0x35')][_0xd1c3('0x36')]?_0x5ce257[_0xd1c3('0x35')]:_0x102e34['model'];if(!_0x331bad['query'][_0xd1c3('0x37')]('nolimit')){_0x5ce257[_0xd1c3('0x21')]=qs[_0xd1c3('0x21')](_0x331bad[_0xd1c3('0x32')][_0xd1c3('0x21')]);_0x5ce257[_0xd1c3('0x1f')]=qs[_0xd1c3('0x1f')](_0x331bad['query'][_0xd1c3('0x1f')]);}_0x5ce257['order']=qs[_0xd1c3('0x38')](_0x331bad['query'][_0xd1c3('0x38')]);_0x5ce257['where']=qs['filters'](_[_0xd1c3('0x39')](_0x331bad[_0xd1c3('0x32')],_0x102e34[_0xd1c3('0x3a')]),_0x1eefc2);if(_0x331bad['query'][_0xd1c3('0x3b')]){_0x5ce257[_0xd1c3('0x3c')]=_[_0xd1c3('0x3d')](_0x5ce257['where'],{'$or':_[_0xd1c3('0x2b')](_0x1eefc2,function(_0x14d766){if(_0x14d766[_0xd1c3('0x2f')]!==_0xd1c3('0x3e')){var _0x4422c0={};_0x4422c0[_0x14d766[_0xd1c3('0x29')]]={'$like':'%'+_0x331bad[_0xd1c3('0x32')]['filter']+'%'};return _0x4422c0;}})});}_0x5ce257=_[_0xd1c3('0x3d')]({},_0x5ce257,_0x331bad[_0xd1c3('0x3f')]);var _0x58d588={'where':_0x5ce257['where']};return db[_0xd1c3('0x2c')][_0xd1c3('0x40')](_0x58d588)[_0xd1c3('0x26')](function(_0x426e1d){_0x5a7cdb[_0xd1c3('0x40')]=_0x426e1d;if(_0x331bad['query'][_0xd1c3('0x41')]){_0x5ce257[_0xd1c3('0x42')]=[{'all':!![]}];}return db[_0xd1c3('0x2c')][_0xd1c3('0x43')](_0x5ce257);})[_0xd1c3('0x26')](function(_0x439f3){_0x5a7cdb[_0xd1c3('0x44')]=_0x439f3;return _0x5a7cdb;})[_0xd1c3('0x26')](respondWithFilteredResult(_0xb778ce,_0x5ce257))[_0xd1c3('0x45')](handleError(_0xb778ce,null));};exports[_0xd1c3('0x46')]=function(_0x4e0683,_0x16b731){var _0x5040aa={'raw':![],'where':{'id':_0x4e0683[_0xd1c3('0x47')]['id']}},_0x4cab3f={};_0x4cab3f[_0xd1c3('0x31')]=_['keys'](db[_0xd1c3('0x2c')][_0xd1c3('0x2d')]);_0x4cab3f[_0xd1c3('0x32')]=_[_0xd1c3('0x48')](_0x4e0683[_0xd1c3('0x32')]);_0x4cab3f['filters']=_['intersection'](_0x4cab3f[_0xd1c3('0x31')],_0x4cab3f['query']);_0x5040aa[_0xd1c3('0x35')]=_[_0xd1c3('0x33')](_0x4cab3f[_0xd1c3('0x31')],qs[_0xd1c3('0x34')](_0x4e0683['query']['fields']));_0x5040aa[_0xd1c3('0x35')]=_0x5040aa[_0xd1c3('0x35')][_0xd1c3('0x36')]?_0x5040aa['attributes']:_0x4cab3f[_0xd1c3('0x31')];if(_0x4e0683['query'][_0xd1c3('0x41')]){_0x5040aa[_0xd1c3('0x42')]=[{'all':!![]}];}_0x5040aa=_[_0xd1c3('0x3d')]({},_0x5040aa,_0x4e0683[_0xd1c3('0x3f')]);return db['UserProfile']['find'](_0x5040aa)[_0xd1c3('0x26')](handleEntityNotFound(_0x16b731,null))[_0xd1c3('0x26')](respondWithResult(_0x16b731,null))[_0xd1c3('0x45')](handleError(_0x16b731,null));};exports[_0xd1c3('0x49')]=function(_0xbaf0b7,_0xae72ab){return db[_0xd1c3('0x2c')][_0xd1c3('0x49')](_0xbaf0b7['body'],{})[_0xd1c3('0x26')](respondWithResult(_0xae72ab,0xc9))[_0xd1c3('0x45')](handleError(_0xae72ab,null));};exports[_0xd1c3('0x4a')]=function(_0x4220ae,_0x2eb58e){var _0x5d3db4={'where':{'id':_0x4220ae[_0xd1c3('0x47')]['id']}},_0x5d0822={};_0x5d0822['model']=_[_0xd1c3('0x48')](db[_0xd1c3('0x2c')][_0xd1c3('0x2d')]);_0x5d3db4['attributes']=_[_0xd1c3('0x33')](_0x5d0822[_0xd1c3('0x31')],qs[_0xd1c3('0x34')](_0x4220ae[_0xd1c3('0x32')][_0xd1c3('0x34')]));_0x5d3db4[_0xd1c3('0x35')]=_0x5d3db4[_0xd1c3('0x35')][_0xd1c3('0x36')]?_0x5d3db4[_0xd1c3('0x35')]:_0x5d0822[_0xd1c3('0x31')];if(_0x4220ae[_0xd1c3('0x32')][_0xd1c3('0x41')]){_0x5d3db4[_0xd1c3('0x42')]=[{'all':!![]}];}_0x5d3db4=_[_0xd1c3('0x3d')]({},_0x5d3db4,_0x4220ae['options']);return db['UserProfile'][_0xd1c3('0x4b')](_0x5d3db4)['then'](handleEntityNotFound(_0x2eb58e,null))[_0xd1c3('0x26')](function(_0x4579c0){if(_0x4579c0){var _0x33f942=_0x4579c0[_0xd1c3('0x4c')]({'plain':!![]});_0x33f942=qs[_0xd1c3('0x4d')](_0x33f942,['id',_0xd1c3('0x4e'),_0xd1c3('0x4f'),_0xd1c3('0x50')]);_0x4220ae[_0xd1c3('0x51')]=_[_0xd1c3('0x4d')](_0x4220ae[_0xd1c3('0x51')],['id','createdAt',_0xd1c3('0x4f')]);return db[_0xd1c3('0x52')][_0xd1c3('0x53')](function(_0x4904ed){return db[_0xd1c3('0x2c')][_0xd1c3('0x49')](_[_0xd1c3('0x3d')](_0x33f942,_0x4220ae[_0xd1c3('0x51')]),{'include':_0x4220ae[_0xd1c3('0x32')]['includeAll']?[{'all':!![]}]:undefined,'transaction':_0x4904ed})[_0xd1c3('0x26')](function(_0xab964f){var _0x2adb07=_0xab964f[_0xd1c3('0x4c')]({'plain':!![]});return db[_0xd1c3('0x54')]['findAll']({'where':{'userProfileId':_0x4220ae['params']['id']},'raw':!![]})[_0xd1c3('0x26')](function(_0x50a8a2){if(_0x50a8a2){return BPromise['each'](_0x50a8a2,function(_0x47ce8d){return new BPromise(function(_0x19ef3b,_0x5a9310){if(_0x47ce8d[_0xd1c3('0x55')]===null||_0x47ce8d[_0xd1c3('0x55')]===0x1)_0x19ef3b(null);return db[_0xd1c3('0x56')]['findAll']({'where':{'sectionId':_0x47ce8d['id']},'raw':!![]})['then'](function(_0x53f0fb){var _0x34a0dc=_[_0xd1c3('0x2b')](_0x53f0fb,function(_0x2e6b2b){return qs[_0xd1c3('0x4d')](_0x2e6b2b,['id',_0xd1c3('0x4e'),_0xd1c3('0x4f'),_0xd1c3('0x57')]);});_0x19ef3b(_0x34a0dc);})[_0xd1c3('0x45')](function(_0x541b1e){_0x5a9310(_0x541b1e);});})['then'](function(_0x10efad){var _0x3dd815=qs[_0xd1c3('0x4d')](_0x47ce8d,['id','createdAt',_0xd1c3('0x4f')]);_0x3dd815[_0xd1c3('0x58')]=_0x2adb07['id'];if(_0x10efad)_0x3dd815[_0xd1c3('0x59')]=_0x10efad;return _0x3dd815;})[_0xd1c3('0x26')](function(_0x1b1613){return db[_0xd1c3('0x54')]['create'](_0x1b1613,{'include':[{'model':db[_0xd1c3('0x56')],'as':_0xd1c3('0x59')}],'raw':!![],'transaction':_0x4904ed});});})[_0xd1c3('0x26')](function(){return _0x2adb07;});}});});});}})[_0xd1c3('0x26')](respondWithResult(_0x2eb58e,0xc9))[_0xd1c3('0x45')](handleError(_0x2eb58e,null));};exports[_0xd1c3('0x5a')]=function(_0x253d09,_0xd24091){if(_0x253d09[_0xd1c3('0x51')]['id']){delete _0x253d09[_0xd1c3('0x51')]['id'];}return db['UserProfile']['find']({'where':{'id':_0x253d09[_0xd1c3('0x47')]['id']}})[_0xd1c3('0x26')](handleEntityNotFound(_0xd24091,null))[_0xd1c3('0x26')](saveUpdates(_0x253d09['body'],null))[_0xd1c3('0x26')](respondWithResult(_0xd24091,null))[_0xd1c3('0x45')](handleError(_0xd24091,null));};exports[_0xd1c3('0x27')]=function(_0x46c008,_0x105223){return db[_0xd1c3('0x2c')][_0xd1c3('0x4b')]({'where':{'id':_0x46c008[_0xd1c3('0x47')]['id']}})['then'](handleEntityNotFound(_0x105223,null))['then'](removeEntity(_0x105223,null))[_0xd1c3('0x45')](handleError(_0x105223,null));};exports[_0xd1c3('0x5b')]=function(_0x2b5125,_0x25334b){return db[_0xd1c3('0x2c')]['describe']()[_0xd1c3('0x26')](respondWithResult(_0x25334b,null))['catch'](handleError(_0x25334b,null));};exports[_0xd1c3('0x5c')]=function(_0x463b33,_0x2c722e){var _0x5378bc=_0x463b33[_0xd1c3('0x51')];return db[_0xd1c3('0x2c')][_0xd1c3('0x4b')]({'where':{'id':_0x463b33['params']['id']}})[_0xd1c3('0x26')](handleEntityNotFound(_0x2c722e,null))[_0xd1c3('0x26')](function(_0x320746){if(_0x320746){return db['sequelize'][_0xd1c3('0x53')](function(_0x11f751){return db[_0xd1c3('0x54')]['destroy']({'where':{'userProfileId':_0x463b33['params']['id'],'sectionId':_[_0xd1c3('0x2b')](_0x5378bc,function(_0x5c1085){return _0x5c1085[_0xd1c3('0x57')];})},'transaction':_0x11f751})['then'](function(){var _0x447a0f=_[_0xd1c3('0x2b')](_0x5378bc,function(_0x2f1a8e){_0x2f1a8e[_0xd1c3('0x58')]=_0x463b33[_0xd1c3('0x47')]['id'];return _0x2f1a8e;});var _0x3dd3a6=[];return BPromise[_0xd1c3('0x5d')](_0x447a0f,function(_0x20529f){return db[_0xd1c3('0x54')][_0xd1c3('0x49')](_0x20529f,{'include':[{'model':db['UserProfileResource'],'as':'Resources'}],'raw':!![],'transaction':_0x11f751})[_0xd1c3('0x26')](function(_0x1da532){_0x3dd3a6[_0xd1c3('0x5e')](_0x1da532[_0xd1c3('0x4c')]({'plain':!![]}));});})['then'](function(){return _0x3dd3a6;});});});}})['then'](function(_0xb397bd){return _0xb397bd;})['then'](respondWithResult(_0x2c722e,null))[_0xd1c3('0x45')](handleError(_0x2c722e,null));};exports[_0xd1c3('0x5f')]=function(_0x572880,_0x212416){var _0x3a88e8;return db[_0xd1c3('0x2c')][_0xd1c3('0x4b')]({'where':{'id':_0x572880[_0xd1c3('0x47')]['id']},'attributes':['id',_0xd1c3('0x29')]})[_0xd1c3('0x26')](handleEntityNotFound(_0x212416,null))[_0xd1c3('0x26')](function(_0x1905ca){if(_0x1905ca){_0x3a88e8=_0x1905ca;return db['UserProfileSection']['destroy']({'where':{'userProfileId':_0x572880[_0xd1c3('0x47')]['id'],'sectionId':_0x572880[_0xd1c3('0x32')]['ids']}});}})[_0xd1c3('0x26')](function(){return _0x3a88e8;})['then'](respondWithStatusCode(_0x212416,null))[_0xd1c3('0x45')](handleError(_0x212416,null));};exports[_0xd1c3('0x60')]=function(_0x31e118,_0x3c1e87){var _0x484d9c=[];var _0xec8021=[];return db[_0xd1c3('0x54')]['findAll']({'where':{'userProfileId':_0x31e118[_0xd1c3('0x47')]['id']},'raw':!![]})[_0xd1c3('0x26')](function(_0x4cbf4e){_0x484d9c=_[_0xd1c3('0x3b')](_0x4cbf4e,function(_0x1305d4){return _0x1305d4[_0xd1c3('0x61')]===0x1||_[_0xd1c3('0x62')]([0x3eb,0x709],_0x1305d4[_0xd1c3('0x57')]);});if(!_[_0xd1c3('0x63')](_0x484d9c)){return _[_0xd1c3('0x2b')](_0x484d9c,function(_0x4de52d){return _0x4de52d[_0xd1c3('0x57')];});}else{return;}})[_0xd1c3('0x26')](function(_0x34476a){if(_0x34476a)_0xec8021=_0x34476a;if(_[_0xd1c3('0x62')](_0xec8021,0x64)){var _0x322478=_[_0xd1c3('0x4b')](_0x484d9c,{'sectionId':0x64});return hasDefaultDashboard(_0x322478)['then'](function(_0xb24167){return _['map'](_0x484d9c,function(_0x19c676){if(_0x19c676['sectionId']===0x64){_0x19c676[_0xd1c3('0x64')]=_0xb24167;}return _0x19c676;});});}else{return;}})[_0xd1c3('0x26')](function(_0x4fe8ac){if(_0x4fe8ac)_0x484d9c=_0x4fe8ac;if(_[_0xd1c3('0x62')](_0xec8021,0x3eb)){var _0x173132=_[_0xd1c3('0x4b')](_0x484d9c,{'sectionId':0x3eb});return getCustomDashboards(_0x173132)[_0xd1c3('0x26')](function(_0x279333){return _[_0xd1c3('0x2b')](_0x484d9c,function(_0xab394a){if(_0x173132[_0xd1c3('0x61')]){if(_0xab394a[_0xd1c3('0x57')]===0x3eb){_0xab394a[_0xd1c3('0x64')]=_0x279333;}}else{if(_0xab394a['sectionId']===0x64){_0xab394a['subsections']=_0x279333;}}return _0xab394a;});});}else{return;}})[_0xd1c3('0x26')](function(_0x38e371){if(_0x38e371)_0x484d9c=_0x38e371;if(_[_0xd1c3('0x62')](_0xec8021,0x709)){var _0x1411a9=_['find'](_0x484d9c,{'sectionId':0x709});return getPlugins(_0x1411a9)[_0xd1c3('0x26')](function(_0x415351){if(_0x1411a9['enabled']){return _[_0xd1c3('0x2b')](_0x484d9c,function(_0x50132a){if(_0x50132a[_0xd1c3('0x57')]===0x709){_0x50132a[_0xd1c3('0x64')]=_0x415351;}return _0x50132a;});}else{var _0x5d3a8b={'sectionId':0x76c,'enabled':0x1,'subsections':_0x415351};var _0x2fcc90=_[_0xd1c3('0x2b')](_0x484d9c);_0x2fcc90[_0xd1c3('0x5e')](_0x5d3a8b);return _0x2fcc90;}});}else{return;}})[_0xd1c3('0x26')](function(_0x581d5a){if(_0x581d5a)_0x484d9c=_0x581d5a;return _[_0xd1c3('0x3b')](_0x484d9c,[_0xd1c3('0x61'),0x1]);})[_0xd1c3('0x26')](respondWithResult(_0x3c1e87,null))[_0xd1c3('0x45')](handleError(_0x3c1e87,null));};function hasDefaultDashboard(_0x10bf3c){var _0x4dbcf4=[0x65];return new BPromise(function(_0x5a93ba,_0x5d0b30){try{if(_0x10bf3c['autoAssociation']){_0x5a93ba(_0x4dbcf4);}else{return db['UserProfileResource'][_0xd1c3('0x65')]({'where':{'sectionId':_0x10bf3c['id']},'raw':!![]})[_0xd1c3('0x26')](function(_0x41cef1){_0x41cef1?_0x5a93ba(_0x4dbcf4):_0x5a93ba();});}}catch(_0x59e9cb){_0x5d0b30(_0x59e9cb);}});}function getCustomDashboards(_0xc67524){var _0x32d8b0=[];return new BPromise(function(_0x460528,_0xce88f3){try{if(_0xc67524[_0xd1c3('0x55')]){return db[_0xd1c3('0x66')][_0xd1c3('0x43')]({'raw':!![]})[_0xd1c3('0x26')](function(_0x34e116){_0x34e116[_0xd1c3('0x67')](function(_0x1aa72d){_0x32d8b0['push'](_0x1aa72d['id']+0x1869f);});_0x460528(_0x32d8b0);});}else{return db[_0xd1c3('0x56')][_0xd1c3('0x43')]({'where':{'sectionId':_0xc67524['id']},'raw':!![]})[_0xd1c3('0x26')](function(_0x3ab1b3){_0x3ab1b3['forEach'](function(_0x4bc70a){_0x32d8b0[_0xd1c3('0x5e')](_0x4bc70a[_0xd1c3('0x68')]+0x1869f);});_0x460528(_0x32d8b0);});}}catch(_0x23aa2f){_0xce88f3(_0x23aa2f);}});}function getPlugins(_0x4df457){var _0x9b4c1b=[];return new BPromise(function(_0x172c8d,_0x4b1740){try{if(_0x4df457['autoAssociation']){return db[_0xd1c3('0x69')]['findAll']({'raw':!![]})[_0xd1c3('0x26')](function(_0x27ae56){_0x27ae56['forEach'](function(_0x578d4d){_0x9b4c1b[_0xd1c3('0x5e')](_0x578d4d['id']+0x15b38);});_0x172c8d(_0x9b4c1b);});}else{return db[_0xd1c3('0x56')]['findAll']({'where':{'sectionId':_0x4df457['id']},'raw':!![]})['then'](function(_0x222aa1){_0x222aa1[_0xd1c3('0x67')](function(_0x5de79b){_0x9b4c1b[_0xd1c3('0x5e')](_0x5de79b[_0xd1c3('0x68')]+0x15b38);});_0x172c8d(_0x9b4c1b);});}}catch(_0x259297){_0x4b1740(_0x259297);}});}exports['addResources']=function(_0x5140c2,_0x4222f3){return db[_0xd1c3('0x2c')][_0xd1c3('0x4b')]({'where':{'id':_0x5140c2[_0xd1c3('0x47')]['id']}})[_0xd1c3('0x26')](handleEntityNotFound(_0x4222f3,null))['then'](function(_0x277050){if(_0x277050){return db[_0xd1c3('0x52')][_0xd1c3('0x53')](function(_0xdc2c8c){return db[_0xd1c3('0x54')][_0xd1c3('0x43')]({'where':{'userProfileId':_0x5140c2['params']['id']},'attributes':['id'],'raw':!![]})['then'](function(_0x31f103){if(_0x31f103){return db[_0xd1c3('0x54')][_0xd1c3('0x27')]({'where':{'userProfileId':_0x5140c2[_0xd1c3('0x47')]['id'],'id':_['map'](_0x31f103,function(_0x4b2f81){return _0x4b2f81['id'];})},'transaction':_0xdc2c8c});}})[_0xd1c3('0x26')](function(_0x1d3ea2){var _0x24a2db=_[_0xd1c3('0x2b')](_0x5140c2[_0xd1c3('0x51')],function(_0x45dc28){_0x45dc28[_0xd1c3('0x58')]=_0x5140c2[_0xd1c3('0x47')]['id'];return _0x45dc28;});return db[_0xd1c3('0x54')][_0xd1c3('0x6a')](_0x24a2db,{'raw':!![],'transaction':_0xdc2c8c});})[_0xd1c3('0x26')](function(_0x3431a0){var _0x362d27=_[_0xd1c3('0x3b')](_[_0xd1c3('0x2b')](_0x3431a0,function(_0x1ffbe3){return _0x1ffbe3[_0xd1c3('0x4c')]({'plain':!![]});}),{'includeAll':![]});if(_0x362d27){return db[_0xd1c3('0x54')][_0xd1c3('0x43')]({'where':{'userProfileId':_0x5140c2[_0xd1c3('0x47')]['id'],'sectionId':_[_0xd1c3('0x2b')](_0x362d27,function(_0x19a8fc){return _0x19a8fc[_0xd1c3('0x57')];})},'attributes':['id','sectionId'],'raw':!![]})[_0xd1c3('0x26')](function(_0x45e8e5){var _0x407391=_[_0xd1c3('0x2b')](_0x5140c2[_0xd1c3('0x51')],function(_0xaebb5c){_0xaebb5c[_0xd1c3('0x58')]=_0x5140c2[_0xd1c3('0x47')]['id'];return _0xaebb5c;});return db[_0xd1c3('0x56')][_0xd1c3('0x6a')](_0x407391,{'raw':!![],'transaction':_0xdc2c8c});});}})['catch'](handleError(_0x4222f3,null));});}})[_0xd1c3('0x26')](function(_0x36cad8){var _0x17c4c0=_[_0xd1c3('0x2b')](_0x36cad8,function(_0x4ddda8){return _0x4ddda8[_0xd1c3('0x4c')]({'plain':!![]});});})[_0xd1c3('0x26')](respondWithResult(_0x4222f3,null))['catch'](handleError(_0x4222f3,null));};exports[_0xd1c3('0x6b')]=function(_0x5b6124,_0xd7568,_0x222b0d){return db[_0xd1c3('0x2c')][_0xd1c3('0x4b')]({'where':{'id':_0x5b6124[_0xd1c3('0x47')]['id']}})[_0xd1c3('0x26')](handleEntityNotFound(_0xd7568,null))[_0xd1c3('0x26')](function(_0x430e88){if(_0x430e88){return _0x430e88['removeResources'](_0x5b6124[_0xd1c3('0x32')][_0xd1c3('0x6c')]);}})[_0xd1c3('0x26')](respondWithStatusCode(_0xd7568,null))[_0xd1c3('0x45')](handleError(_0xd7568,null));};exports[_0xd1c3('0x6d')]=function(_0x20d1d4,_0x1f1a02){var _0x2d49b1={};if(!_0x20d1d4[_0xd1c3('0x32')][_0xd1c3('0x6e')])throw new Error(_0xd1c3('0x6f'));if(!_0x20d1d4[_0xd1c3('0x32')][_0xd1c3('0x37')](_0xd1c3('0x70'))){_0x2d49b1[_0xd1c3('0x21')]=qs[_0xd1c3('0x21')](_0x20d1d4[_0xd1c3('0x32')]['limit']);_0x2d49b1[_0xd1c3('0x1f')]=qs[_0xd1c3('0x1f')](_0x20d1d4['query'][_0xd1c3('0x1f')]);}return db[_0xd1c3('0x2c')]['find']({'where':{'id':_0x20d1d4['params']['id']}})[_0xd1c3('0x26')](function(_0x864de7){if(!_0x864de7)throw new Error('No\x20User\x20Profile\x20found\x20for\x20id\x20'+_0x20d1d4[_0xd1c3('0x47')]['id']);return db[_0xd1c3('0x2c')][_0xd1c3('0x6d')](_0x20d1d4);})[_0xd1c3('0x26')](respondWithFilteredResult(_0x1f1a02,_0x2d49b1))[_0xd1c3('0x45')](handleError(_0x1f1a02,null));};