Built motion from commit e6806ed6.|2.6.0
[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 _0x14a0=['UserProfileSection','each','autoAssociation','UserProfileResource','sectionId','userProfileId','describe','addSections','sequelize','transaction','removeSections','ids','getSections','enabled','includes','isEmpty','subsections','Dashboard','forEach','push','resourceId','Plugin','addResources','bulkCreate','removeResources','getResources','section','No\x20User\x20Profile\x20found\x20for\x20id\x20','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','sox','to-csv','ejs','squel','crypto','jsforce','querystring','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./userProfile.socket','register','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range','reject','save','update','then','destroy','error','stack','send','index','map','UserProfile','rawAttributes','fieldName','type','key','name','query','keys','filters','intersection','attributes','model','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','find','create','body','clone','params','get','omit','createdAt','updatedAt','crudPermissions'];(function(_0x54e3b7,_0x1725db){var _0x1d9796=function(_0x4614d7){while(--_0x4614d7){_0x54e3b7['push'](_0x54e3b7['shift']());}};_0x1d9796(++_0x1725db);}(_0x14a0,0x8e));var _0x014a=function(_0x2f33db,_0x5ab33f){_0x2f33db=_0x2f33db-0x0;var _0x25cb50=_0x14a0[_0x2f33db];return _0x25cb50;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x014a('0x0'));var zipdir=require(_0x014a('0x1'));var jsonpatch=require(_0x014a('0x2'));var rp=require(_0x014a('0x3'));var moment=require(_0x014a('0x4'));var BPromise=require(_0x014a('0x5'));var Mustache=require(_0x014a('0x6'));var util=require('util');var path=require('path');var sox=require(_0x014a('0x7'));var csv=require(_0x014a('0x8'));var ejs=require(_0x014a('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x014a('0xa'));var crypto=require(_0x014a('0xb'));var jsforce=require(_0x014a('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x014a('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x014a('0xe'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x014a('0xf'))(_0x014a('0x10'));var utils=require('../../config/utils');var config=require(_0x014a('0x11'));var licenseUtil=require(_0x014a('0x12'));var db=require(_0x014a('0x13'))['db'];config[_0x014a('0x14')]=_[_0x014a('0x15')](config[_0x014a('0x14')],{'host':_0x014a('0x16'),'port':0x18eb});var socket=require(_0x014a('0x17'))(new Redis(config[_0x014a('0x14')]));require(_0x014a('0x18'))[_0x014a('0x19')](socket);function respondWithStatusCode(_0x3c54c8,_0x4fe87c){_0x4fe87c=_0x4fe87c||0xcc;return function(_0x130d13){if(_0x130d13){return _0x3c54c8[_0x014a('0x1a')](_0x4fe87c);}return _0x3c54c8['status'](_0x4fe87c)[_0x014a('0x1b')]();};}function respondWithResult(_0x128c46,_0x59a4ea){_0x59a4ea=_0x59a4ea||0xc8;return function(_0x16e6fc){if(_0x16e6fc){return _0x128c46[_0x014a('0x1c')](_0x59a4ea)[_0x014a('0x1d')](_0x16e6fc);}};}function respondWithFilteredResult(_0x12da95,_0x2c26ac){return function(_0x12d339){if(_0x12d339){var _0x61ec9f=typeof _0x2c26ac[_0x014a('0x1e')]===_0x014a('0x1f')&&typeof _0x2c26ac[_0x014a('0x20')]===_0x014a('0x1f');var _0x89e132=_0x12d339[_0x014a('0x21')];var _0x34e5c3=_0x61ec9f?0x0:_0x2c26ac['offset'];var _0x359903=_0x61ec9f?_0x12d339[_0x014a('0x21')]:_0x2c26ac[_0x014a('0x1e')]+_0x2c26ac[_0x014a('0x20')];var _0xc9a563;if(_0x359903>=_0x89e132){_0x359903=_0x89e132;_0xc9a563=0xc8;}else{_0xc9a563=0xce;}_0x12da95[_0x014a('0x1c')](_0xc9a563);return _0x12da95[_0x014a('0x22')](_0x014a('0x23'),_0x34e5c3+'-'+_0x359903+'/'+_0x89e132)[_0x014a('0x1d')](_0x12d339);}return null;};}function patchUpdates(_0x486e66){return function(_0x3679ed){try{jsonpatch['apply'](_0x3679ed,_0x486e66,!![]);}catch(_0x1a1318){return BPromise[_0x014a('0x24')](_0x1a1318);}return _0x3679ed[_0x014a('0x25')]();};}function saveUpdates(_0x36d52b,_0x2b3c10){return function(_0x113b12){if(_0x113b12){return _0x113b12[_0x014a('0x26')](_0x36d52b)[_0x014a('0x27')](function(_0x165a42){return _0x165a42;});}return null;};}function removeEntity(_0x4c2627,_0x3b4b92){return function(_0x5358e9){if(_0x5358e9){return _0x5358e9[_0x014a('0x28')]()[_0x014a('0x27')](function(){_0x4c2627['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x9a901f,_0x3f9719){return function(_0x143346){if(!_0x143346){_0x9a901f['sendStatus'](0x194);}return _0x143346;};}function handleError(_0x183f19,_0x3c1fa4){_0x3c1fa4=_0x3c1fa4||0x1f4;return function(_0x598179){logger[_0x014a('0x29')](_0x598179[_0x014a('0x2a')]);if(_0x598179['name']){delete _0x598179['name'];}_0x183f19[_0x014a('0x1c')](_0x3c1fa4)[_0x014a('0x2b')](_0x598179);};}exports[_0x014a('0x2c')]=function(_0x29fce5,_0x4ea00c){var _0x434038={},_0x147e7e={},_0x15af07={'count':0x0,'rows':[]};var _0x402d3b=_[_0x014a('0x2d')](db[_0x014a('0x2e')][_0x014a('0x2f')],function(_0x1dae8e){return{'name':_0x1dae8e[_0x014a('0x30')],'type':_0x1dae8e[_0x014a('0x31')][_0x014a('0x32')]};});_0x147e7e['model']=_[_0x014a('0x2d')](_0x402d3b,_0x014a('0x33'));_0x147e7e[_0x014a('0x34')]=_[_0x014a('0x35')](_0x29fce5[_0x014a('0x34')]);_0x147e7e[_0x014a('0x36')]=_[_0x014a('0x37')](_0x147e7e['model'],_0x147e7e[_0x014a('0x34')]);_0x434038[_0x014a('0x38')]=_['intersection'](_0x147e7e[_0x014a('0x39')],qs[_0x014a('0x3a')](_0x29fce5[_0x014a('0x34')][_0x014a('0x3a')]));_0x434038[_0x014a('0x38')]=_0x434038[_0x014a('0x38')][_0x014a('0x3b')]?_0x434038[_0x014a('0x38')]:_0x147e7e['model'];if(!_0x29fce5[_0x014a('0x34')][_0x014a('0x3c')](_0x014a('0x3d'))){_0x434038[_0x014a('0x20')]=qs['limit'](_0x29fce5[_0x014a('0x34')][_0x014a('0x20')]);_0x434038[_0x014a('0x1e')]=qs[_0x014a('0x1e')](_0x29fce5[_0x014a('0x34')][_0x014a('0x1e')]);}_0x434038[_0x014a('0x3e')]=qs[_0x014a('0x3f')](_0x29fce5[_0x014a('0x34')]['sort']);_0x434038[_0x014a('0x40')]=qs['filters'](_[_0x014a('0x41')](_0x29fce5[_0x014a('0x34')],_0x147e7e[_0x014a('0x36')]),_0x402d3b);if(_0x29fce5[_0x014a('0x34')][_0x014a('0x42')]){_0x434038['where']=_[_0x014a('0x43')](_0x434038[_0x014a('0x40')],{'$or':_['map'](_0x402d3b,function(_0x9227b8){if(_0x9227b8[_0x014a('0x31')]!==_0x014a('0x44')){var _0x2e7a14={};_0x2e7a14[_0x9227b8[_0x014a('0x33')]]={'$like':'%'+_0x29fce5[_0x014a('0x34')][_0x014a('0x42')]+'%'};return _0x2e7a14;}})});}_0x434038=_[_0x014a('0x43')]({},_0x434038,_0x29fce5[_0x014a('0x45')]);var _0x537bde={'where':_0x434038[_0x014a('0x40')]};return db[_0x014a('0x2e')][_0x014a('0x21')](_0x537bde)[_0x014a('0x27')](function(_0x5f1a91){_0x15af07[_0x014a('0x21')]=_0x5f1a91;if(_0x29fce5[_0x014a('0x34')][_0x014a('0x46')]){_0x434038[_0x014a('0x47')]=[{'all':!![]}];}return db[_0x014a('0x2e')][_0x014a('0x48')](_0x434038);})['then'](function(_0x361866){_0x15af07[_0x014a('0x49')]=_0x361866;return _0x15af07;})['then'](respondWithFilteredResult(_0x4ea00c,_0x434038))[_0x014a('0x4a')](handleError(_0x4ea00c,null));};exports[_0x014a('0x4b')]=function(_0x2c45f1,_0x5dc092){var _0x5bcf8={'raw':![],'where':{'id':_0x2c45f1['params']['id']}},_0x50a8f0={};_0x50a8f0[_0x014a('0x39')]=_[_0x014a('0x35')](db['UserProfile'][_0x014a('0x2f')]);_0x50a8f0[_0x014a('0x34')]=_[_0x014a('0x35')](_0x2c45f1[_0x014a('0x34')]);_0x50a8f0[_0x014a('0x36')]=_[_0x014a('0x37')](_0x50a8f0['model'],_0x50a8f0[_0x014a('0x34')]);_0x5bcf8[_0x014a('0x38')]=_[_0x014a('0x37')](_0x50a8f0['model'],qs['fields'](_0x2c45f1[_0x014a('0x34')]['fields']));_0x5bcf8['attributes']=_0x5bcf8[_0x014a('0x38')]['length']?_0x5bcf8[_0x014a('0x38')]:_0x50a8f0[_0x014a('0x39')];if(_0x2c45f1[_0x014a('0x34')]['includeAll']){_0x5bcf8[_0x014a('0x47')]=[{'all':!![]}];}_0x5bcf8=_[_0x014a('0x43')]({},_0x5bcf8,_0x2c45f1[_0x014a('0x45')]);return db[_0x014a('0x2e')][_0x014a('0x4c')](_0x5bcf8)[_0x014a('0x27')](handleEntityNotFound(_0x5dc092,null))['then'](respondWithResult(_0x5dc092,null))[_0x014a('0x4a')](handleError(_0x5dc092,null));};exports[_0x014a('0x4d')]=function(_0x5a861c,_0x1a4df9){return db[_0x014a('0x2e')][_0x014a('0x4d')](_0x5a861c[_0x014a('0x4e')],{})[_0x014a('0x27')](respondWithResult(_0x1a4df9,0xc9))[_0x014a('0x4a')](handleError(_0x1a4df9,null));};exports[_0x014a('0x4f')]=function(_0x21680f,_0x4aa72b){var _0x423fb2={'where':{'id':_0x21680f[_0x014a('0x50')]['id']}},_0x16a4b5={};_0x16a4b5[_0x014a('0x39')]=_[_0x014a('0x35')](db['UserProfile'][_0x014a('0x2f')]);_0x423fb2['attributes']=_[_0x014a('0x37')](_0x16a4b5[_0x014a('0x39')],qs[_0x014a('0x3a')](_0x21680f[_0x014a('0x34')][_0x014a('0x3a')]));_0x423fb2['attributes']=_0x423fb2['attributes']['length']?_0x423fb2['attributes']:_0x16a4b5[_0x014a('0x39')];if(_0x21680f['query'][_0x014a('0x46')]){_0x423fb2['include']=[{'all':!![]}];}_0x423fb2=_['merge']({},_0x423fb2,_0x21680f[_0x014a('0x45')]);return db['UserProfile'][_0x014a('0x4c')](_0x423fb2)[_0x014a('0x27')](handleEntityNotFound(_0x4aa72b,null))[_0x014a('0x27')](function(_0x3c7e06){if(_0x3c7e06){var _0x21b16c=_0x3c7e06[_0x014a('0x51')]({'plain':!![]});_0x21b16c=qs[_0x014a('0x52')](_0x21b16c,['id',_0x014a('0x53'),_0x014a('0x54'),_0x014a('0x55')]);_0x21680f['body']=_['omit'](_0x21680f[_0x014a('0x4e')],['id',_0x014a('0x53'),_0x014a('0x54')]);return db['sequelize']['transaction'](function(_0x4591ad){return db['UserProfile'][_0x014a('0x4d')](_[_0x014a('0x43')](_0x21b16c,_0x21680f[_0x014a('0x4e')]),{'include':_0x21680f[_0x014a('0x34')]['includeAll']?[{'all':!![]}]:undefined,'transaction':_0x4591ad})[_0x014a('0x27')](function(_0x2ccc2f){var _0x3d1c9d=_0x2ccc2f['get']({'plain':!![]});return db[_0x014a('0x56')]['findAll']({'where':{'userProfileId':_0x21680f[_0x014a('0x50')]['id']},'raw':!![]})[_0x014a('0x27')](function(_0x34736b){if(_0x34736b){return BPromise[_0x014a('0x57')](_0x34736b,function(_0xd0334a){return new BPromise(function(_0x1a308b,_0x4e9260){if(_0xd0334a[_0x014a('0x58')]===null||_0xd0334a[_0x014a('0x58')]===0x1)_0x1a308b(null);return db[_0x014a('0x59')]['findAll']({'where':{'sectionId':_0xd0334a['id']},'raw':!![]})[_0x014a('0x27')](function(_0x17f9d7){var _0x2a9137=_[_0x014a('0x2d')](_0x17f9d7,function(_0x11bf5c){return qs['omit'](_0x11bf5c,['id',_0x014a('0x53'),_0x014a('0x54'),_0x014a('0x5a')]);});_0x1a308b(_0x2a9137);})[_0x014a('0x4a')](function(_0x3ca7e6){_0x4e9260(_0x3ca7e6);});})[_0x014a('0x27')](function(_0x477946){var _0x4039d1=qs[_0x014a('0x52')](_0xd0334a,['id',_0x014a('0x53'),_0x014a('0x54')]);_0x4039d1[_0x014a('0x5b')]=_0x3d1c9d['id'];if(_0x477946)_0x4039d1['Resources']=_0x477946;return _0x4039d1;})[_0x014a('0x27')](function(_0x5ac216){return db['UserProfileSection']['create'](_0x5ac216,{'include':[{'model':db['UserProfileResource'],'as':'Resources'}],'raw':!![],'transaction':_0x4591ad});});})[_0x014a('0x27')](function(){return _0x3d1c9d;});}});});});}})[_0x014a('0x27')](respondWithResult(_0x4aa72b,0xc9))[_0x014a('0x4a')](handleError(_0x4aa72b,null));};exports['update']=function(_0x3c6fc0,_0x2a5007){if(_0x3c6fc0[_0x014a('0x4e')]['id']){delete _0x3c6fc0[_0x014a('0x4e')]['id'];}return db['UserProfile']['find']({'where':{'id':_0x3c6fc0[_0x014a('0x50')]['id']}})[_0x014a('0x27')](handleEntityNotFound(_0x2a5007,null))[_0x014a('0x27')](saveUpdates(_0x3c6fc0[_0x014a('0x4e')],null))[_0x014a('0x27')](respondWithResult(_0x2a5007,null))[_0x014a('0x4a')](handleError(_0x2a5007,null));};exports[_0x014a('0x28')]=function(_0x1eee3e,_0x387d12){return db[_0x014a('0x2e')][_0x014a('0x4c')]({'where':{'id':_0x1eee3e['params']['id']}})[_0x014a('0x27')](handleEntityNotFound(_0x387d12,null))[_0x014a('0x27')](removeEntity(_0x387d12,null))['catch'](handleError(_0x387d12,null));};exports[_0x014a('0x5c')]=function(_0x3e39c9,_0x56f4b2){return db[_0x014a('0x2e')]['describe']()[_0x014a('0x27')](respondWithResult(_0x56f4b2,null))[_0x014a('0x4a')](handleError(_0x56f4b2,null));};exports[_0x014a('0x5d')]=function(_0x456d69,_0x37b8f){var _0x5e0f22=_0x456d69[_0x014a('0x4e')];return db[_0x014a('0x2e')][_0x014a('0x4c')]({'where':{'id':_0x456d69[_0x014a('0x50')]['id']}})[_0x014a('0x27')](handleEntityNotFound(_0x37b8f,null))['then'](function(_0x20cddc){if(_0x20cddc){return db[_0x014a('0x5e')][_0x014a('0x5f')](function(_0x5f3224){return db[_0x014a('0x56')]['destroy']({'where':{'userProfileId':_0x456d69[_0x014a('0x50')]['id'],'sectionId':_[_0x014a('0x2d')](_0x5e0f22,function(_0x267026){return _0x267026[_0x014a('0x5a')];})},'transaction':_0x5f3224})[_0x014a('0x27')](function(){var _0x465a8e=_[_0x014a('0x2d')](_0x5e0f22,function(_0x58e087){_0x58e087['userProfileId']=_0x456d69[_0x014a('0x50')]['id'];return _0x58e087;});var _0x5d077c=[];return BPromise[_0x014a('0x57')](_0x465a8e,function(_0x5966f0){return db[_0x014a('0x56')][_0x014a('0x4d')](_0x5966f0,{'include':[{'model':db['UserProfileResource'],'as':'Resources'}],'raw':!![],'transaction':_0x5f3224})[_0x014a('0x27')](function(_0x8234ee){_0x5d077c['push'](_0x8234ee[_0x014a('0x51')]({'plain':!![]}));});})[_0x014a('0x27')](function(){return _0x5d077c;});});});}})['then'](function(_0x4a1b65){return _0x4a1b65;})[_0x014a('0x27')](respondWithResult(_0x37b8f,null))[_0x014a('0x4a')](handleError(_0x37b8f,null));};exports[_0x014a('0x60')]=function(_0x33e383,_0x37ea2d){var _0x321329;return db['UserProfile'][_0x014a('0x4c')]({'where':{'id':_0x33e383['params']['id']},'attributes':['id','name']})[_0x014a('0x27')](handleEntityNotFound(_0x37ea2d,null))[_0x014a('0x27')](function(_0x523859){if(_0x523859){_0x321329=_0x523859;return db[_0x014a('0x56')][_0x014a('0x28')]({'where':{'userProfileId':_0x33e383[_0x014a('0x50')]['id'],'sectionId':_0x33e383[_0x014a('0x34')][_0x014a('0x61')]}});}})['then'](function(){return _0x321329;})[_0x014a('0x27')](respondWithStatusCode(_0x37ea2d,null))[_0x014a('0x4a')](handleError(_0x37ea2d,null));};exports[_0x014a('0x62')]=function(_0x163fa2,_0x4aefeb){var _0x8716b=[];var _0x4c568c=[];return db[_0x014a('0x56')][_0x014a('0x48')]({'where':{'userProfileId':_0x163fa2[_0x014a('0x50')]['id']},'raw':!![]})[_0x014a('0x27')](function(_0xf7c997){_0x8716b=_[_0x014a('0x42')](_0xf7c997,function(_0x5dd4b8){return _0x5dd4b8[_0x014a('0x63')]===0x1||_[_0x014a('0x64')]([0x3eb,0x709],_0x5dd4b8[_0x014a('0x5a')]);});if(!_[_0x014a('0x65')](_0x8716b)){return _[_0x014a('0x2d')](_0x8716b,function(_0x3802df){return _0x3802df[_0x014a('0x5a')];});}else{return;}})[_0x014a('0x27')](function(_0x55cfe7){if(_0x55cfe7)_0x4c568c=_0x55cfe7;if(_[_0x014a('0x64')](_0x4c568c,0x64)){var _0x37c69e=_[_0x014a('0x4c')](_0x8716b,{'sectionId':0x64});return hasDefaultDashboard(_0x37c69e)['then'](function(_0x2fbaf3){return _[_0x014a('0x2d')](_0x8716b,function(_0x1cdfa5){if(_0x1cdfa5[_0x014a('0x5a')]===0x64){_0x1cdfa5[_0x014a('0x66')]=_0x2fbaf3;}return _0x1cdfa5;});});}else{return;}})[_0x014a('0x27')](function(_0x29b061){if(_0x29b061)_0x8716b=_0x29b061;if(_['includes'](_0x4c568c,0x3eb)){var _0x5891cf=_['find'](_0x8716b,{'sectionId':0x3eb});return getCustomDashboards(_0x5891cf)['then'](function(_0x194c8d){return _[_0x014a('0x2d')](_0x8716b,function(_0x1810a8){if(_0x5891cf[_0x014a('0x63')]){if(_0x1810a8[_0x014a('0x5a')]===0x3eb){_0x1810a8[_0x014a('0x66')]=_0x194c8d;}}else{if(_0x1810a8[_0x014a('0x5a')]===0x64){_0x1810a8['subsections']=_0x194c8d;}}return _0x1810a8;});});}else{return;}})[_0x014a('0x27')](function(_0x2e3ccd){if(_0x2e3ccd)_0x8716b=_0x2e3ccd;if(_[_0x014a('0x64')](_0x4c568c,0x709)){var _0x28a8ec=_['find'](_0x8716b,{'sectionId':0x709});return getPlugins(_0x28a8ec)['then'](function(_0x13e2fc){if(_0x28a8ec[_0x014a('0x63')]){return _['map'](_0x8716b,function(_0x4aea1d){if(_0x4aea1d[_0x014a('0x5a')]===0x709){_0x4aea1d['subsections']=_0x13e2fc;}return _0x4aea1d;});}else{var _0x5d4099={'sectionId':0x76c,'enabled':0x1,'subsections':_0x13e2fc};var _0x403836=_[_0x014a('0x2d')](_0x8716b);_0x403836['push'](_0x5d4099);return _0x403836;}});}else{return;}})[_0x014a('0x27')](function(_0x3ac51b){if(_0x3ac51b)_0x8716b=_0x3ac51b;return _[_0x014a('0x42')](_0x8716b,[_0x014a('0x63'),0x1]);})[_0x014a('0x27')](respondWithResult(_0x4aefeb,null))[_0x014a('0x4a')](handleError(_0x4aefeb,null));};function hasDefaultDashboard(_0x13a545){var _0xc86f44=[0x65];return new BPromise(function(_0x5c3935,_0x5bae68){try{if(_0x13a545[_0x014a('0x58')]){_0x5c3935(_0xc86f44);}else{return db['UserProfileResource']['findOne']({'where':{'sectionId':_0x13a545['id']},'raw':!![]})['then'](function(_0x1ba1e0){_0x1ba1e0?_0x5c3935(_0xc86f44):_0x5c3935();});}}catch(_0x10144f){_0x5bae68(_0x10144f);}});}function getCustomDashboards(_0x2c527f){var _0x55408f=[];return new BPromise(function(_0x19e317,_0x387fd0){try{if(_0x2c527f[_0x014a('0x58')]){return db[_0x014a('0x67')]['findAll']({'raw':!![]})[_0x014a('0x27')](function(_0x3fa661){_0x3fa661[_0x014a('0x68')](function(_0x48617c){_0x55408f[_0x014a('0x69')](_0x48617c['id']+0x1869f);});_0x19e317(_0x55408f);});}else{return db[_0x014a('0x59')]['findAll']({'where':{'sectionId':_0x2c527f['id']},'raw':!![]})[_0x014a('0x27')](function(_0x3367cb){_0x3367cb[_0x014a('0x68')](function(_0x4b0d03){_0x55408f[_0x014a('0x69')](_0x4b0d03[_0x014a('0x6a')]+0x1869f);});_0x19e317(_0x55408f);});}}catch(_0x53c335){_0x387fd0(_0x53c335);}});}function getPlugins(_0x1e096b){var _0x293221=[];return new BPromise(function(_0x317df3,_0x368083){try{if(_0x1e096b[_0x014a('0x58')]){return db[_0x014a('0x6b')][_0x014a('0x48')]({'raw':!![]})[_0x014a('0x27')](function(_0x5d99a9){_0x5d99a9[_0x014a('0x68')](function(_0x1806d0){_0x293221['push'](_0x1806d0['id']+0x15b38);});_0x317df3(_0x293221);});}else{return db['UserProfileResource'][_0x014a('0x48')]({'where':{'sectionId':_0x1e096b['id']},'raw':!![]})[_0x014a('0x27')](function(_0x47f3c7){_0x47f3c7[_0x014a('0x68')](function(_0x440b9b){_0x293221[_0x014a('0x69')](_0x440b9b['resourceId']+0x15b38);});_0x317df3(_0x293221);});}}catch(_0x3a0012){_0x368083(_0x3a0012);}});}exports[_0x014a('0x6c')]=function(_0x5dedaf,_0x5baf80){return db[_0x014a('0x2e')]['find']({'where':{'id':_0x5dedaf[_0x014a('0x50')]['id']}})['then'](handleEntityNotFound(_0x5baf80,null))[_0x014a('0x27')](function(_0x25f4ef){if(_0x25f4ef){return db[_0x014a('0x5e')][_0x014a('0x5f')](function(_0x20b182){return db['UserProfileSection'][_0x014a('0x48')]({'where':{'userProfileId':_0x5dedaf[_0x014a('0x50')]['id']},'attributes':['id'],'raw':!![]})[_0x014a('0x27')](function(_0x41f999){if(_0x41f999){return db[_0x014a('0x56')][_0x014a('0x28')]({'where':{'userProfileId':_0x5dedaf[_0x014a('0x50')]['id'],'id':_[_0x014a('0x2d')](_0x41f999,function(_0x51c35f){return _0x51c35f['id'];})},'transaction':_0x20b182});}})[_0x014a('0x27')](function(_0x54645e){var _0xc1dcb9=_['map'](_0x5dedaf['body'],function(_0x47bad1){_0x47bad1['userProfileId']=_0x5dedaf[_0x014a('0x50')]['id'];return _0x47bad1;});return db[_0x014a('0x56')][_0x014a('0x6d')](_0xc1dcb9,{'raw':!![],'transaction':_0x20b182});})[_0x014a('0x27')](function(_0x28a692){var _0x27a899=_[_0x014a('0x42')](_[_0x014a('0x2d')](_0x28a692,function(_0x5327a6){return _0x5327a6['get']({'plain':!![]});}),{'includeAll':![]});if(_0x27a899){return db[_0x014a('0x56')][_0x014a('0x48')]({'where':{'userProfileId':_0x5dedaf[_0x014a('0x50')]['id'],'sectionId':_[_0x014a('0x2d')](_0x27a899,function(_0x45aef0){return _0x45aef0[_0x014a('0x5a')];})},'attributes':['id',_0x014a('0x5a')],'raw':!![]})[_0x014a('0x27')](function(_0x5342cc){var _0x27431c=_[_0x014a('0x2d')](_0x5dedaf[_0x014a('0x4e')],function(_0x2baee6){_0x2baee6[_0x014a('0x5b')]=_0x5dedaf['params']['id'];return _0x2baee6;});return db[_0x014a('0x59')][_0x014a('0x6d')](_0x27431c,{'raw':!![],'transaction':_0x20b182});});}})[_0x014a('0x4a')](handleError(_0x5baf80,null));});}})[_0x014a('0x27')](function(_0x3171d3){var _0x567357=_[_0x014a('0x2d')](_0x3171d3,function(_0x5ad83b){return _0x5ad83b[_0x014a('0x51')]({'plain':!![]});});})['then'](respondWithResult(_0x5baf80,null))['catch'](handleError(_0x5baf80,null));};exports[_0x014a('0x6e')]=function(_0xaf1b9f,_0x4af6d4,_0x129c22){return db[_0x014a('0x2e')][_0x014a('0x4c')]({'where':{'id':_0xaf1b9f['params']['id']}})[_0x014a('0x27')](handleEntityNotFound(_0x4af6d4,null))[_0x014a('0x27')](function(_0x2feb8a){if(_0x2feb8a){return _0x2feb8a[_0x014a('0x6e')](_0xaf1b9f[_0x014a('0x34')][_0x014a('0x61')]);}})[_0x014a('0x27')](respondWithStatusCode(_0x4af6d4,null))[_0x014a('0x4a')](handleError(_0x4af6d4,null));};exports[_0x014a('0x6f')]=function(_0x58341b,_0x597702){var _0x14b351={};if(!_0x58341b[_0x014a('0x34')][_0x014a('0x70')])throw new Error('Missing\x20section\x20parameter');if(!_0x58341b[_0x014a('0x34')][_0x014a('0x3c')](_0x014a('0x3d'))){_0x14b351[_0x014a('0x20')]=qs[_0x014a('0x20')](_0x58341b[_0x014a('0x34')]['limit']);_0x14b351[_0x014a('0x1e')]=qs[_0x014a('0x1e')](_0x58341b[_0x014a('0x34')][_0x014a('0x1e')]);}return db['UserProfile'][_0x014a('0x4c')]({'where':{'id':_0x58341b[_0x014a('0x50')]['id']}})[_0x014a('0x27')](function(_0x30999a){if(!_0x30999a)throw new Error(_0x014a('0x71')+_0x58341b['params']['id']);return db[_0x014a('0x2e')]['getResources'](_0x58341b);})['then'](respondWithFilteredResult(_0x597702,_0x14b351))[_0x014a('0x4a')](handleError(_0x597702,null));};