Built motion from commit 953226e6.|2.6.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 _0x81ea=['rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','ejs','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','redis','defaults','localhost','socket.io-emitter','./userProfile.socket','status','end','json','undefined','count','offset','limit','Content-Range','apply','save','update','destroy','then','sendStatus','error','stack','name','send','map','UserProfile','rawAttributes','fieldName','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','pick','filter','where','type','merge','options','includeAll','include','findAll','rows','show','params','keys','find','create','body','catch','clone','omit','createdAt','crudPermissions','sequelize','transaction','get','UserProfileSection','each','autoAssociation','UserProfileResource','updatedAt','userProfileId','Resources','describe','addSections','sectionId','push','ids','getSections','enabled','includes','isEmpty','subsections','concat','Dashboard','forEach','resourceId','Plugin','addResources','bulkCreate','removeResources','getResources','section','Missing\x20section\x20parameter','nolimit','No\x20User\x20Profile\x20found\x20for\x20id\x20'];(function(_0x3f88bc,_0xe38cf5){var _0x4df1c4=function(_0x111de1){while(--_0x111de1){_0x3f88bc['push'](_0x3f88bc['shift']());}};_0x4df1c4(++_0xe38cf5);}(_0x81ea,0xe0));var _0xa81e=function(_0xa464c9,_0x7c86d8){_0xa464c9=_0xa464c9-0x0;var _0x3d73c4=_0x81ea[_0xa464c9];return _0x3d73c4;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa81e('0x0'));var zipdir=require(_0xa81e('0x1'));var jsonpatch=require(_0xa81e('0x2'));var rp=require(_0xa81e('0x3'));var moment=require('moment');var BPromise=require(_0xa81e('0x4'));var Mustache=require(_0xa81e('0x5'));var util=require(_0xa81e('0x6'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xa81e('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0xa81e('0x8'));var jsforce=require(_0xa81e('0x9'));var deskjs=require(_0xa81e('0xa'));var toCsv=require(_0xa81e('0xb'));var querystring=require(_0xa81e('0xc'));var Papa=require('papaparse');var Redis=require(_0xa81e('0xd'));var authService=require(_0xa81e('0xe'));var qs=require(_0xa81e('0xf'));var as=require(_0xa81e('0x10'));var hardwareService=require(_0xa81e('0x11'));var logger=require('../../config/logger')(_0xa81e('0x12'));var utils=require(_0xa81e('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0xa81e('0x14')]=_[_0xa81e('0x15')](config[_0xa81e('0x14')],{'host':_0xa81e('0x16'),'port':0x18eb});var socket=require(_0xa81e('0x17'))(new Redis(config[_0xa81e('0x14')]));require(_0xa81e('0x18'))['register'](socket);function respondWithStatusCode(_0x1960b9,_0x525b7b){_0x525b7b=_0x525b7b||0xcc;return function(_0x212b29){if(_0x212b29){return _0x1960b9['sendStatus'](_0x525b7b);}return _0x1960b9[_0xa81e('0x19')](_0x525b7b)[_0xa81e('0x1a')]();};}function respondWithResult(_0x107fc3,_0x428773){_0x428773=_0x428773||0xc8;return function(_0x438f8b){if(_0x438f8b){return _0x107fc3[_0xa81e('0x19')](_0x428773)[_0xa81e('0x1b')](_0x438f8b);}};}function respondWithFilteredResult(_0x3bcc57,_0x5cc6a2){return function(_0x230fa0){if(_0x230fa0){var _0x1da20b=typeof _0x5cc6a2['offset']===_0xa81e('0x1c')&&typeof _0x5cc6a2['limit']==='undefined';var _0x4d26e0=_0x230fa0[_0xa81e('0x1d')];var _0xe861d3=_0x1da20b?0x0:_0x5cc6a2[_0xa81e('0x1e')];var _0xb304bb=_0x1da20b?_0x230fa0[_0xa81e('0x1d')]:_0x5cc6a2[_0xa81e('0x1e')]+_0x5cc6a2[_0xa81e('0x1f')];var _0x196bbb;if(_0xb304bb>=_0x4d26e0){_0xb304bb=_0x4d26e0;_0x196bbb=0xc8;}else{_0x196bbb=0xce;}_0x3bcc57[_0xa81e('0x19')](_0x196bbb);return _0x3bcc57['set'](_0xa81e('0x20'),_0xe861d3+'-'+_0xb304bb+'/'+_0x4d26e0)[_0xa81e('0x1b')](_0x230fa0);}return null;};}function patchUpdates(_0x489bfd){return function(_0x3aabb4){try{jsonpatch[_0xa81e('0x21')](_0x3aabb4,_0x489bfd,!![]);}catch(_0x13a20e){return BPromise['reject'](_0x13a20e);}return _0x3aabb4[_0xa81e('0x22')]();};}function saveUpdates(_0x46604e,_0x26ff25){return function(_0x36ce43){if(_0x36ce43){return _0x36ce43[_0xa81e('0x23')](_0x46604e)['then'](function(_0x956740){return _0x956740;});}return null;};}function removeEntity(_0x2c31bc,_0x2fd673){return function(_0x5ea2bd){if(_0x5ea2bd){return _0x5ea2bd[_0xa81e('0x24')]()[_0xa81e('0x25')](function(){_0x2c31bc[_0xa81e('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x5bf01e,_0x328e88){return function(_0x536d03){if(!_0x536d03){_0x5bf01e[_0xa81e('0x26')](0x194);}return _0x536d03;};}function handleError(_0x217cf8,_0x272c30){_0x272c30=_0x272c30||0x1f4;return function(_0x4fd282){logger[_0xa81e('0x27')](_0x4fd282[_0xa81e('0x28')]);if(_0x4fd282[_0xa81e('0x29')]){delete _0x4fd282[_0xa81e('0x29')];}_0x217cf8[_0xa81e('0x19')](_0x272c30)[_0xa81e('0x2a')](_0x4fd282);};}exports['index']=function(_0x4f4a82,_0x516faa){var _0x1caf01={},_0x340176={},_0x9c0ec5={'count':0x0,'rows':[]};var _0xd4e8a6=_[_0xa81e('0x2b')](db[_0xa81e('0x2c')][_0xa81e('0x2d')],function(_0x5cbfea){return{'name':_0x5cbfea[_0xa81e('0x2e')],'type':_0x5cbfea['type'][_0xa81e('0x2f')]};});_0x340176[_0xa81e('0x30')]=_[_0xa81e('0x2b')](_0xd4e8a6,_0xa81e('0x29'));_0x340176[_0xa81e('0x31')]=_['keys'](_0x4f4a82['query']);_0x340176[_0xa81e('0x32')]=_[_0xa81e('0x33')](_0x340176['model'],_0x340176['query']);_0x1caf01[_0xa81e('0x34')]=_[_0xa81e('0x33')](_0x340176['model'],qs[_0xa81e('0x35')](_0x4f4a82['query']['fields']));_0x1caf01[_0xa81e('0x34')]=_0x1caf01[_0xa81e('0x34')][_0xa81e('0x36')]?_0x1caf01['attributes']:_0x340176[_0xa81e('0x30')];if(!_0x4f4a82[_0xa81e('0x31')][_0xa81e('0x37')]('nolimit')){_0x1caf01[_0xa81e('0x1f')]=qs[_0xa81e('0x1f')](_0x4f4a82['query'][_0xa81e('0x1f')]);_0x1caf01['offset']=qs[_0xa81e('0x1e')](_0x4f4a82[_0xa81e('0x31')][_0xa81e('0x1e')]);}_0x1caf01[_0xa81e('0x38')]=qs[_0xa81e('0x39')](_0x4f4a82[_0xa81e('0x31')][_0xa81e('0x39')]);_0x1caf01['where']=qs['filters'](_[_0xa81e('0x3a')](_0x4f4a82[_0xa81e('0x31')],_0x340176[_0xa81e('0x32')]),_0xd4e8a6);if(_0x4f4a82[_0xa81e('0x31')][_0xa81e('0x3b')]){_0x1caf01[_0xa81e('0x3c')]=_['merge'](_0x1caf01[_0xa81e('0x3c')],{'$or':_[_0xa81e('0x2b')](_0xd4e8a6,function(_0x4fd479){if(_0x4fd479[_0xa81e('0x3d')]!=='VIRTUAL'){var _0x4e9033={};_0x4e9033[_0x4fd479[_0xa81e('0x29')]]={'$like':'%'+_0x4f4a82['query'][_0xa81e('0x3b')]+'%'};return _0x4e9033;}})});}_0x1caf01=_[_0xa81e('0x3e')]({},_0x1caf01,_0x4f4a82[_0xa81e('0x3f')]);var _0x2e2fa3={'where':_0x1caf01[_0xa81e('0x3c')]};return db[_0xa81e('0x2c')]['count'](_0x2e2fa3)[_0xa81e('0x25')](function(_0x4dc1eb){_0x9c0ec5[_0xa81e('0x1d')]=_0x4dc1eb;if(_0x4f4a82[_0xa81e('0x31')][_0xa81e('0x40')]){_0x1caf01[_0xa81e('0x41')]=[{'all':!![]}];}return db['UserProfile'][_0xa81e('0x42')](_0x1caf01);})['then'](function(_0x1097ca){_0x9c0ec5[_0xa81e('0x43')]=_0x1097ca;return _0x9c0ec5;})[_0xa81e('0x25')](respondWithFilteredResult(_0x516faa,_0x1caf01))['catch'](handleError(_0x516faa,null));};exports[_0xa81e('0x44')]=function(_0x3df11e,_0x991ab3){var _0x10e5fa={'raw':![],'where':{'id':_0x3df11e[_0xa81e('0x45')]['id']}},_0x5afbff={};_0x5afbff[_0xa81e('0x30')]=_[_0xa81e('0x46')](db[_0xa81e('0x2c')][_0xa81e('0x2d')]);_0x5afbff[_0xa81e('0x31')]=_['keys'](_0x3df11e[_0xa81e('0x31')]);_0x5afbff[_0xa81e('0x32')]=_[_0xa81e('0x33')](_0x5afbff[_0xa81e('0x30')],_0x5afbff[_0xa81e('0x31')]);_0x10e5fa['attributes']=_[_0xa81e('0x33')](_0x5afbff['model'],qs[_0xa81e('0x35')](_0x3df11e[_0xa81e('0x31')][_0xa81e('0x35')]));_0x10e5fa[_0xa81e('0x34')]=_0x10e5fa[_0xa81e('0x34')][_0xa81e('0x36')]?_0x10e5fa[_0xa81e('0x34')]:_0x5afbff['model'];if(_0x3df11e[_0xa81e('0x31')][_0xa81e('0x40')]){_0x10e5fa[_0xa81e('0x41')]=[{'all':!![]}];}_0x10e5fa=_[_0xa81e('0x3e')]({},_0x10e5fa,_0x3df11e['options']);return db[_0xa81e('0x2c')][_0xa81e('0x47')](_0x10e5fa)['then'](handleEntityNotFound(_0x991ab3,null))[_0xa81e('0x25')](respondWithResult(_0x991ab3,null))['catch'](handleError(_0x991ab3,null));};exports[_0xa81e('0x48')]=function(_0x2edddf,_0x2c11fc){return db[_0xa81e('0x2c')][_0xa81e('0x48')](_0x2edddf[_0xa81e('0x49')],{})['then'](respondWithResult(_0x2c11fc,0xc9))[_0xa81e('0x4a')](handleError(_0x2c11fc,null));};exports[_0xa81e('0x4b')]=function(_0x4906c4,_0x99f635){var _0x539e0c={'where':{'id':_0x4906c4[_0xa81e('0x45')]['id']}},_0x5549c0={};_0x5549c0['model']=_[_0xa81e('0x46')](db[_0xa81e('0x2c')]['rawAttributes']);_0x539e0c['attributes']=_[_0xa81e('0x33')](_0x5549c0[_0xa81e('0x30')],qs[_0xa81e('0x35')](_0x4906c4[_0xa81e('0x31')][_0xa81e('0x35')]));_0x539e0c[_0xa81e('0x34')]=_0x539e0c[_0xa81e('0x34')][_0xa81e('0x36')]?_0x539e0c[_0xa81e('0x34')]:_0x5549c0[_0xa81e('0x30')];if(_0x4906c4[_0xa81e('0x31')][_0xa81e('0x40')]){_0x539e0c[_0xa81e('0x41')]=[{'all':!![]}];}_0x539e0c=_[_0xa81e('0x3e')]({},_0x539e0c,_0x4906c4[_0xa81e('0x3f')]);return db['UserProfile'][_0xa81e('0x47')](_0x539e0c)[_0xa81e('0x25')](handleEntityNotFound(_0x99f635,null))[_0xa81e('0x25')](function(_0x251122){if(_0x251122){var _0x289434=_0x251122['get']({'plain':!![]});_0x289434=qs[_0xa81e('0x4c')](_0x289434,['id',_0xa81e('0x4d'),'updatedAt',_0xa81e('0x4e')]);_0x4906c4[_0xa81e('0x49')]=_['omit'](_0x4906c4[_0xa81e('0x49')],['id',_0xa81e('0x4d'),'updatedAt']);return db[_0xa81e('0x4f')][_0xa81e('0x50')](function(_0x492ca8){return db[_0xa81e('0x2c')][_0xa81e('0x48')](_['merge'](_0x289434,_0x4906c4[_0xa81e('0x49')]),{'include':_0x4906c4[_0xa81e('0x31')][_0xa81e('0x40')]?[{'all':!![]}]:undefined,'transaction':_0x492ca8})[_0xa81e('0x25')](function(_0x4b8637){var _0x47e99c=_0x4b8637[_0xa81e('0x51')]({'plain':!![]});return db[_0xa81e('0x52')]['findAll']({'where':{'userProfileId':_0x4906c4[_0xa81e('0x45')]['id']},'raw':!![]})['then'](function(_0x554ac2){if(_0x554ac2){return BPromise[_0xa81e('0x53')](_0x554ac2,function(_0x311784){return new BPromise(function(_0xa55159,_0x10ffd9){if(_0x311784[_0xa81e('0x54')]===null||_0x311784[_0xa81e('0x54')]===0x1)_0xa55159(null);return db[_0xa81e('0x55')][_0xa81e('0x42')]({'where':{'sectionId':_0x311784['id']},'raw':!![]})['then'](function(_0x1bd5a8){var _0x75a5b5=_[_0xa81e('0x2b')](_0x1bd5a8,function(_0xf03712){return qs[_0xa81e('0x4c')](_0xf03712,['id',_0xa81e('0x4d'),_0xa81e('0x56'),'sectionId']);});_0xa55159(_0x75a5b5);})[_0xa81e('0x4a')](function(_0x5c0448){_0x10ffd9(_0x5c0448);});})[_0xa81e('0x25')](function(_0x57c91f){var _0x4f8d62=qs[_0xa81e('0x4c')](_0x311784,['id','createdAt',_0xa81e('0x56')]);_0x4f8d62[_0xa81e('0x57')]=_0x47e99c['id'];if(_0x57c91f)_0x4f8d62[_0xa81e('0x58')]=_0x57c91f;return _0x4f8d62;})[_0xa81e('0x25')](function(_0x246d99){return db['UserProfileSection'][_0xa81e('0x48')](_0x246d99,{'include':[{'model':db[_0xa81e('0x55')],'as':_0xa81e('0x58')}],'raw':!![],'transaction':_0x492ca8});});})[_0xa81e('0x25')](function(){return _0x47e99c;});}});});});}})[_0xa81e('0x25')](respondWithResult(_0x99f635,0xc9))[_0xa81e('0x4a')](handleError(_0x99f635,null));};exports[_0xa81e('0x23')]=function(_0x5e12b0,_0x50ce78){if(_0x5e12b0[_0xa81e('0x49')]['id']){delete _0x5e12b0['body']['id'];}return db['UserProfile'][_0xa81e('0x47')]({'where':{'id':_0x5e12b0[_0xa81e('0x45')]['id']}})['then'](handleEntityNotFound(_0x50ce78,null))[_0xa81e('0x25')](saveUpdates(_0x5e12b0[_0xa81e('0x49')],null))[_0xa81e('0x25')](respondWithResult(_0x50ce78,null))[_0xa81e('0x4a')](handleError(_0x50ce78,null));};exports[_0xa81e('0x24')]=function(_0x47d8cf,_0x5a3428){return db['UserProfile'][_0xa81e('0x47')]({'where':{'id':_0x47d8cf[_0xa81e('0x45')]['id']}})[_0xa81e('0x25')](handleEntityNotFound(_0x5a3428,null))[_0xa81e('0x25')](removeEntity(_0x5a3428,null))[_0xa81e('0x4a')](handleError(_0x5a3428,null));};exports[_0xa81e('0x59')]=function(_0x175cd0,_0x28516f){return db[_0xa81e('0x2c')][_0xa81e('0x59')]()[_0xa81e('0x25')](respondWithResult(_0x28516f,null))[_0xa81e('0x4a')](handleError(_0x28516f,null));};exports[_0xa81e('0x5a')]=function(_0x5b9006,_0x1b2db6){var _0x480ea9=_0x5b9006[_0xa81e('0x49')];return db[_0xa81e('0x2c')][_0xa81e('0x47')]({'where':{'id':_0x5b9006[_0xa81e('0x45')]['id']}})[_0xa81e('0x25')](handleEntityNotFound(_0x1b2db6,null))[_0xa81e('0x25')](function(_0x5793fb){if(_0x5793fb){return db[_0xa81e('0x4f')]['transaction'](function(_0x30c5a8){return db['UserProfileSection']['destroy']({'where':{'userProfileId':_0x5b9006[_0xa81e('0x45')]['id'],'sectionId':_[_0xa81e('0x2b')](_0x480ea9,function(_0x44fe12){return _0x44fe12[_0xa81e('0x5b')];})},'transaction':_0x30c5a8})[_0xa81e('0x25')](function(){var _0x2204e9=_[_0xa81e('0x2b')](_0x480ea9,function(_0x59ac00){_0x59ac00[_0xa81e('0x57')]=_0x5b9006[_0xa81e('0x45')]['id'];return _0x59ac00;});var _0xde2ffb=[];return BPromise['each'](_0x2204e9,function(_0x5edec6){return db['UserProfileSection'][_0xa81e('0x48')](_0x5edec6,{'include':[{'model':db[_0xa81e('0x55')],'as':_0xa81e('0x58')}],'raw':!![],'transaction':_0x30c5a8})[_0xa81e('0x25')](function(_0x12c351){_0xde2ffb[_0xa81e('0x5c')](_0x12c351['get']({'plain':!![]}));});})[_0xa81e('0x25')](function(){return _0xde2ffb;});});});}})[_0xa81e('0x25')](function(_0x2d9cdf){return _0x2d9cdf;})['then'](respondWithResult(_0x1b2db6,null))[_0xa81e('0x4a')](handleError(_0x1b2db6,null));};exports['removeSections']=function(_0x928a3e,_0x36aa7f){var _0x2ecdad;return db[_0xa81e('0x2c')][_0xa81e('0x47')]({'where':{'id':_0x928a3e[_0xa81e('0x45')]['id']},'attributes':['id',_0xa81e('0x29')]})[_0xa81e('0x25')](handleEntityNotFound(_0x36aa7f,null))[_0xa81e('0x25')](function(_0x570e7b){if(_0x570e7b){_0x2ecdad=_0x570e7b;return db[_0xa81e('0x52')][_0xa81e('0x24')]({'where':{'userProfileId':_0x928a3e[_0xa81e('0x45')]['id'],'sectionId':_0x928a3e['query'][_0xa81e('0x5d')]}});}})[_0xa81e('0x25')](function(){return _0x2ecdad;})[_0xa81e('0x25')](respondWithStatusCode(_0x36aa7f,null))[_0xa81e('0x4a')](handleError(_0x36aa7f,null));};exports[_0xa81e('0x5e')]=function(_0x49f215,_0x301a5c){var _0x5bba4f=[];var _0x4a543b=[];return db['UserProfileSection'][_0xa81e('0x42')]({'where':{'userProfileId':_0x49f215[_0xa81e('0x45')]['id']},'raw':!![]})[_0xa81e('0x25')](function(_0x164590){_0x5bba4f=_[_0xa81e('0x3b')](_0x164590,function(_0xbe4348){return _0xbe4348[_0xa81e('0x5f')]===0x1||_[_0xa81e('0x60')]([0x3eb,0x709],_0xbe4348[_0xa81e('0x5b')]);});if(!_[_0xa81e('0x61')](_0x5bba4f)){return _[_0xa81e('0x2b')](_0x5bba4f,function(_0x134122){return _0x134122[_0xa81e('0x5b')];});}else{return;}})[_0xa81e('0x25')](function(_0x539ef0){if(_0x539ef0)_0x4a543b=_0x539ef0;if(_[_0xa81e('0x60')](_0x4a543b,0x64)){var _0x16a0a4=_[_0xa81e('0x47')](_0x5bba4f,{'sectionId':0x64});return hasDefaultDashboard(_0x16a0a4)['then'](function(_0x1f4b20){return _['map'](_0x5bba4f,function(_0x44b3c8){if(_0x44b3c8[_0xa81e('0x5b')]===0x64){_0x44b3c8[_0xa81e('0x62')]=_0x1f4b20;}return _0x44b3c8;});});}else{return;}})[_0xa81e('0x25')](function(_0x440d3e){if(_0x440d3e)_0x5bba4f=_0x440d3e;if(_['includes'](_0x4a543b,0x3eb)){var _0x57e33f=_['find'](_0x5bba4f,{'sectionId':0x3eb});return getCustomDashboards(_0x57e33f)[_0xa81e('0x25')](function(_0xe1e1f){return _['map'](_0x5bba4f,function(_0x4430e5){if(_0x57e33f[_0xa81e('0x5f')]){if(_0x4430e5['sectionId']===0x3eb){_0x4430e5[_0xa81e('0x62')]=_0xe1e1f;}}else{if(_0x4430e5['sectionId']===0x64){if(!_0x4430e5[_0xa81e('0x62')]){_0x4430e5[_0xa81e('0x62')]=[];}_0x4430e5[_0xa81e('0x62')]=_0x4430e5[_0xa81e('0x62')][_0xa81e('0x63')](_0xe1e1f);}}return _0x4430e5;});});}else{return;}})['then'](function(_0x56fd25){if(_0x56fd25)_0x5bba4f=_0x56fd25;if(_[_0xa81e('0x60')](_0x4a543b,0x709)){var _0x1c69d3=_[_0xa81e('0x47')](_0x5bba4f,{'sectionId':0x709});return getPlugins(_0x1c69d3)[_0xa81e('0x25')](function(_0x5d5a17){if(_0x1c69d3[_0xa81e('0x5f')]){return _[_0xa81e('0x2b')](_0x5bba4f,function(_0x4a2ee7){if(_0x4a2ee7[_0xa81e('0x5b')]===0x709){_0x4a2ee7[_0xa81e('0x62')]=_0x5d5a17;}return _0x4a2ee7;});}else{var _0x80e7c4={'sectionId':0x76c,'enabled':0x1,'subsections':_0x5d5a17};var _0x5b1462=_['map'](_0x5bba4f);_0x5b1462[_0xa81e('0x5c')](_0x80e7c4);return _0x5b1462;}});}else{return;}})[_0xa81e('0x25')](function(_0x3c6c82){if(_0x3c6c82)_0x5bba4f=_0x3c6c82;return _[_0xa81e('0x3b')](_0x5bba4f,[_0xa81e('0x5f'),0x1]);})['then'](respondWithResult(_0x301a5c,null))['catch'](handleError(_0x301a5c,null));};function hasDefaultDashboard(_0x7f928a){var _0xef48dd=[0x65];return new BPromise(function(_0x32fa36,_0x1db5a1){try{if(_0x7f928a[_0xa81e('0x54')]){_0x32fa36(_0xef48dd);}else{return db[_0xa81e('0x55')]['findOne']({'where':{'sectionId':_0x7f928a['id']},'raw':!![]})['then'](function(_0x2006e6){_0x2006e6?_0x32fa36(_0xef48dd):_0x32fa36();});}}catch(_0x32ef0f){_0x1db5a1(_0x32ef0f);}});}function getCustomDashboards(_0xbad022){var _0x19212b=[];return new BPromise(function(_0x53f8a6,_0x1b6fc9){try{if(_0xbad022[_0xa81e('0x54')]){return db[_0xa81e('0x64')][_0xa81e('0x42')]({'raw':!![]})[_0xa81e('0x25')](function(_0x2d3f56){_0x2d3f56[_0xa81e('0x65')](function(_0x406b99){_0x19212b[_0xa81e('0x5c')](_0x406b99['id']+0x1869f);});_0x53f8a6(_0x19212b);});}else{return db[_0xa81e('0x55')][_0xa81e('0x42')]({'where':{'sectionId':_0xbad022['id']},'raw':!![]})[_0xa81e('0x25')](function(_0x438be6){_0x438be6[_0xa81e('0x65')](function(_0x2bf67b){_0x19212b[_0xa81e('0x5c')](_0x2bf67b[_0xa81e('0x66')]+0x1869f);});_0x53f8a6(_0x19212b);});}}catch(_0x4f45f4){_0x1b6fc9(_0x4f45f4);}});}function getPlugins(_0x2cfac3){var _0xc66229=[];return new BPromise(function(_0x32b7f3,_0x1c688c){try{if(_0x2cfac3[_0xa81e('0x54')]){return db[_0xa81e('0x67')]['findAll']({'raw':!![]})[_0xa81e('0x25')](function(_0x5cd4cd){_0x5cd4cd[_0xa81e('0x65')](function(_0x3f586d){_0xc66229[_0xa81e('0x5c')](_0x3f586d['id']+0x15b38);});_0x32b7f3(_0xc66229);});}else{return db[_0xa81e('0x55')][_0xa81e('0x42')]({'where':{'sectionId':_0x2cfac3['id']},'raw':!![]})['then'](function(_0x1a1f4a){_0x1a1f4a[_0xa81e('0x65')](function(_0x26322b){_0xc66229[_0xa81e('0x5c')](_0x26322b[_0xa81e('0x66')]+0x15b38);});_0x32b7f3(_0xc66229);});}}catch(_0x2bd2e8){_0x1c688c(_0x2bd2e8);}});}exports[_0xa81e('0x68')]=function(_0x2ab371,_0x45edcc){return db[_0xa81e('0x2c')][_0xa81e('0x47')]({'where':{'id':_0x2ab371['params']['id']}})[_0xa81e('0x25')](handleEntityNotFound(_0x45edcc,null))[_0xa81e('0x25')](function(_0xfd0385){if(_0xfd0385){return db[_0xa81e('0x4f')][_0xa81e('0x50')](function(_0x11cc81){return db['UserProfileSection'][_0xa81e('0x42')]({'where':{'userProfileId':_0x2ab371[_0xa81e('0x45')]['id']},'attributes':['id'],'raw':!![]})['then'](function(_0x3a97bf){if(_0x3a97bf){return db[_0xa81e('0x52')][_0xa81e('0x24')]({'where':{'userProfileId':_0x2ab371[_0xa81e('0x45')]['id'],'id':_[_0xa81e('0x2b')](_0x3a97bf,function(_0x4c7758){return _0x4c7758['id'];})},'transaction':_0x11cc81});}})[_0xa81e('0x25')](function(_0x40513f){var _0x43404d=_[_0xa81e('0x2b')](_0x2ab371['body'],function(_0x27cfa2){_0x27cfa2[_0xa81e('0x57')]=_0x2ab371['params']['id'];return _0x27cfa2;});return db[_0xa81e('0x52')][_0xa81e('0x69')](_0x43404d,{'raw':!![],'transaction':_0x11cc81});})[_0xa81e('0x25')](function(_0xaf867){var _0x4e9bd3=_[_0xa81e('0x3b')](_[_0xa81e('0x2b')](_0xaf867,function(_0x52ec73){return _0x52ec73[_0xa81e('0x51')]({'plain':!![]});}),{'includeAll':![]});if(_0x4e9bd3){return db[_0xa81e('0x52')][_0xa81e('0x42')]({'where':{'userProfileId':_0x2ab371[_0xa81e('0x45')]['id'],'sectionId':_[_0xa81e('0x2b')](_0x4e9bd3,function(_0x2fc35a){return _0x2fc35a['sectionId'];})},'attributes':['id',_0xa81e('0x5b')],'raw':!![]})[_0xa81e('0x25')](function(_0x137d44){var _0x41e939=_[_0xa81e('0x2b')](_0x2ab371[_0xa81e('0x49')],function(_0x1616d5){_0x1616d5['userProfileId']=_0x2ab371['params']['id'];return _0x1616d5;});return db[_0xa81e('0x55')][_0xa81e('0x69')](_0x41e939,{'raw':!![],'transaction':_0x11cc81});});}})[_0xa81e('0x4a')](handleError(_0x45edcc,null));});}})[_0xa81e('0x25')](function(_0x4a6334){var _0x53bea5=_['map'](_0x4a6334,function(_0x352291){return _0x352291[_0xa81e('0x51')]({'plain':!![]});});})[_0xa81e('0x25')](respondWithResult(_0x45edcc,null))[_0xa81e('0x4a')](handleError(_0x45edcc,null));};exports[_0xa81e('0x6a')]=function(_0x2687b2,_0x549f7a,_0x50992a){return db[_0xa81e('0x2c')][_0xa81e('0x47')]({'where':{'id':_0x2687b2[_0xa81e('0x45')]['id']}})['then'](handleEntityNotFound(_0x549f7a,null))[_0xa81e('0x25')](function(_0x6b654){if(_0x6b654){return _0x6b654['removeResources'](_0x2687b2[_0xa81e('0x31')][_0xa81e('0x5d')]);}})[_0xa81e('0x25')](respondWithStatusCode(_0x549f7a,null))['catch'](handleError(_0x549f7a,null));};exports[_0xa81e('0x6b')]=function(_0x48efce,_0x2e17ca){var _0x4eecf6={};if(!_0x48efce[_0xa81e('0x31')][_0xa81e('0x6c')])throw new Error(_0xa81e('0x6d'));if(!_0x48efce[_0xa81e('0x31')]['hasOwnProperty'](_0xa81e('0x6e'))){_0x4eecf6[_0xa81e('0x1f')]=qs[_0xa81e('0x1f')](_0x48efce[_0xa81e('0x31')]['limit']);_0x4eecf6[_0xa81e('0x1e')]=qs['offset'](_0x48efce[_0xa81e('0x31')]['offset']);}return db[_0xa81e('0x2c')][_0xa81e('0x47')]({'where':{'id':_0x48efce['params']['id']}})[_0xa81e('0x25')](function(_0x452a6f){if(!_0x452a6f)throw new Error(_0xa81e('0x6f')+_0x48efce['params']['id']);return db[_0xa81e('0x2c')][_0xa81e('0x6b')](_0x48efce);})[_0xa81e('0x25')](respondWithFilteredResult(_0x2e17ca,_0x4eecf6))[_0xa81e('0x4a')](handleError(_0x2e17ca,null));};