Built motion from commit (unavailable).|2.4.4
[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 _0x2572=['addSections','push','removeSections','ids','addResources','userProfileId','bulkCreate','removeResources','getResources','section','undefined','Sequelize','ValidationError','Unknown\x20section','mergeResources','childModel','isEmpty','parentSections','findOne','all','ignore','order','VIRTUAL','AnalyticExtractedReport','foreignKey','associatedResources','forEach','reportType','default','reportId','DefaultReports','custom','CustomReports','CmContact','Tags','tag','Tag','color','value','resourceId','toLowerCase','squareprojects','SquareProject','SquareOdbc','squarerecordings','SquareProjects','contacts','Lists','ListId','lists','CmList','companies','CmCompany','globalcustomfields','ChatQueue','chatwebsites','ChatWebsite','faxqueues','FaxQueue','faxaccounts','FaxAccount','inboundroutes','outboundroutes','VoiceExtension','contexts','VoiceContext','voicemails','VoiceMail','voicerecordings','VoiceRecording','Agents','membername','User','role','agent','Telephones','telephone','VoiceQueues','VoiceQueue','QueueCampaigns','queue','musiconholds','VoiceMusicOnHold','chanspies','VoiceChanSpy','voiceprefixes','VoicePrefix','ivrcampaigns','Campaign','mailqueues','MailQueue','mailaccounts','MailAccount','MailSubstatus','openchannelqueues','OpenchannelQueue','openchannelaccounts','OpenchannelAccount','smsqueues','SmsQueue','smsaccounts','SmsAccount','teams','Team','voicequeues','agents','Users','admin','user','zendeskaccounts','salesforceaccounts','freshdeskaccounts','FreshdeskAccount','sugarcrmaccounts','deskaccounts','DeskAccount','zohoaccounts','ZohoAccount','vtigeraccounts','cannedanswers','CannedAnswer','dispositions','customdashboards','Dashboard','intervals','Interval','pauses','scheduler','Schedule','Sound','templates','Template','Trigger','trunks','Trunk','variables','Variable','plugins','extractedreports','Reports','metrics','AnalyticMetric','SAProduct','sapricelists','paymentmethod','SAPaymentMethod','html-pdf','rimraf','zip-dir','request-promise','moment','mustache','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','redis','localhost','socket.io-emitter','register','status','json','count','offset','limit','set','Content-Range','reject','update','then','destroy','end','error','stack','name','send','index','UserProfile','rawAttributes','model','keys','query','filters','intersection','attributes','fields','length','nolimit','sort','where','pick','merge','map','type','key','field','filter','includeAll','include','findAll','rows','catch','show','params','create','body','clone','options','get','omit','createdAt','updatedAt','sequelize','transaction','UserProfileSection','each','autoAssociation','UserProfileResource','sectionId','Resources','find','describe'];(function(_0x8ea575,_0x3829da){var _0x4e358d=function(_0x35fbac){while(--_0x35fbac){_0x8ea575['push'](_0x8ea575['shift']());}};_0x4e358d(++_0x3829da);}(_0x2572,0x17c));var _0x2257=function(_0x311c35,_0x534915){_0x311c35=_0x311c35-0x0;var _0x5cc50c=_0x2572[_0x311c35];return _0x5cc50c;};'use strict';var pdf=require(_0x2257('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x2257('0x1'));var zipdir=require(_0x2257('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x2257('0x3'));var moment=require(_0x2257('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x2257('0x5'));var util=require('util');var path=require(_0x2257('0x6'));var sox=require(_0x2257('0x7'));var csv=require(_0x2257('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x2257('0x9'));var squel=require(_0x2257('0xa'));var crypto=require(_0x2257('0xb'));var jsforce=require(_0x2257('0xc'));var deskjs=require(_0x2257('0xd'));var toCsv=require('to-csv');var querystring=require(_0x2257('0xe'));var Papa=require(_0x2257('0xf'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x2257('0x10'));var hardwareService=require(_0x2257('0x11'));var logger=require(_0x2257('0x12'))(_0x2257('0x13'));var utils=require(_0x2257('0x14'));var config=require('../../config/environment');var db=require(_0x2257('0x15'))['db'];config[_0x2257('0x16')]=_['defaults'](config[_0x2257('0x16')],{'host':_0x2257('0x17'),'port':0x18eb});var socket=require(_0x2257('0x18'))(new Redis(config[_0x2257('0x16')]));require('./userProfile.socket')[_0x2257('0x19')](socket);function respondWithStatusCode(_0x547c3e,_0x2a7c69){_0x2a7c69=_0x2a7c69||0xcc;return function(_0x3d02dc){if(_0x3d02dc){return _0x547c3e['sendStatus'](_0x2a7c69);}return _0x547c3e[_0x2257('0x1a')](_0x2a7c69)['end']();};}function respondWithResult(_0x36e772,_0xb28de4){_0xb28de4=_0xb28de4||0xc8;return function(_0x5cf9ca){if(_0x5cf9ca){return _0x36e772[_0x2257('0x1a')](_0xb28de4)[_0x2257('0x1b')](_0x5cf9ca);}};}function respondWithFilteredResult(_0x15e9bf,_0x171c14){return function(_0x303bef){if(_0x303bef){var _0x2bf793=_0x303bef[_0x2257('0x1c')],_0x22d680=_0x171c14[_0x2257('0x1d')],_0x3d136e=_0x171c14[_0x2257('0x1d')]+_0x171c14[_0x2257('0x1e')],_0x4fb3a9;if(_0x3d136e>=_0x2bf793){_0x3d136e=_0x2bf793;_0x4fb3a9=0xc8;}else{_0x4fb3a9=0xce;}_0x15e9bf[_0x2257('0x1a')](_0x4fb3a9);return _0x15e9bf[_0x2257('0x1f')](_0x2257('0x20'),_0x22d680+'-'+_0x3d136e+'/'+_0x2bf793)[_0x2257('0x1b')](_0x303bef);}return null;};}function patchUpdates(_0x47bf23){return function(_0x4a7444){try{jsonpatch['apply'](_0x4a7444,_0x47bf23,!![]);}catch(_0x47f897){return BPromise[_0x2257('0x21')](_0x47f897);}return _0x4a7444['save']();};}function saveUpdates(_0x49f910,_0x3a4e61){return function(_0xa9e838){if(_0xa9e838){return _0xa9e838[_0x2257('0x22')](_0x49f910)[_0x2257('0x23')](function(_0x291259){return _0x291259;});}return null;};}function removeEntity(_0x56cc7a,_0x2c129b){return function(_0x328a53){if(_0x328a53){return _0x328a53[_0x2257('0x24')]()['then'](function(){_0x56cc7a['status'](0xcc)[_0x2257('0x25')]();});}};}function handleEntityNotFound(_0x10bfb,_0x416301){return function(_0x1307ab){if(!_0x1307ab){_0x10bfb['sendStatus'](0x194);}return _0x1307ab;};}function handleError(_0xf537ae,_0x15b4d4){_0x15b4d4=_0x15b4d4||0x1f4;return function(_0x2924ef){logger[_0x2257('0x26')](_0x2924ef[_0x2257('0x27')]);if(_0x2924ef[_0x2257('0x28')]){delete _0x2924ef[_0x2257('0x28')];}_0xf537ae[_0x2257('0x1a')](_0x15b4d4)[_0x2257('0x29')](_0x2924ef);};}exports[_0x2257('0x2a')]=function(_0x453fa4,_0x371c95){var _0x555be6={},_0x50d762={},_0xbf65a6={'count':0x0,'rows':[]};var _0xaea091=db[_0x2257('0x2b')][_0x2257('0x2c')];_0x50d762[_0x2257('0x2d')]=_[_0x2257('0x2e')](_0xaea091);_0x50d762[_0x2257('0x2f')]=_[_0x2257('0x2e')](_0x453fa4['query']);_0x50d762[_0x2257('0x30')]=_[_0x2257('0x31')](_0x50d762[_0x2257('0x2d')],_0x50d762[_0x2257('0x2f')]);_0x555be6[_0x2257('0x32')]=_[_0x2257('0x31')](_0x50d762[_0x2257('0x2d')],qs[_0x2257('0x33')](_0x453fa4['query']['fields']));_0x555be6[_0x2257('0x32')]=_0x555be6[_0x2257('0x32')][_0x2257('0x34')]?_0x555be6[_0x2257('0x32')]:_0x50d762[_0x2257('0x2d')];if(!_0x453fa4[_0x2257('0x2f')]['hasOwnProperty'](_0x2257('0x35'))){_0x555be6[_0x2257('0x1e')]=qs['limit'](_0x453fa4[_0x2257('0x2f')][_0x2257('0x1e')]);_0x555be6[_0x2257('0x1d')]=qs[_0x2257('0x1d')](_0x453fa4['query'][_0x2257('0x1d')]);}_0x555be6['order']=qs[_0x2257('0x36')](_0x453fa4['query'][_0x2257('0x36')]);_0x555be6[_0x2257('0x37')]=qs[_0x2257('0x30')](_[_0x2257('0x38')](_0x453fa4[_0x2257('0x2f')],_0x50d762[_0x2257('0x30')]));if(_0x453fa4[_0x2257('0x2f')]['filter']){_0x555be6[_0x2257('0x37')]=_[_0x2257('0x39')](_0x555be6[_0x2257('0x37')],{'$or':_[_0x2257('0x3a')](_0xaea091,function(_0x2c39d3){if(_0x2c39d3[_0x2257('0x3b')][_0x2257('0x3c')]!=='VIRTUAL'){var _0x313644={};_0x313644[_0x2c39d3[_0x2257('0x3d')]]={'$like':'%'+_0x453fa4[_0x2257('0x2f')][_0x2257('0x3e')]+'%'};return _0x313644;}})});}_0x555be6=_[_0x2257('0x39')]({},_0x555be6,_0x453fa4['options']);var _0x5adea8={'where':_0x555be6['where']};return db[_0x2257('0x2b')][_0x2257('0x1c')](_0x5adea8)[_0x2257('0x23')](function(_0x5da2cb){_0xbf65a6['count']=_0x5da2cb;if(_0x453fa4[_0x2257('0x2f')][_0x2257('0x3f')]){_0x555be6[_0x2257('0x40')]=[{'all':!![]}];}return db[_0x2257('0x2b')][_0x2257('0x41')](_0x555be6);})[_0x2257('0x23')](function(_0xfe3f44){_0xbf65a6[_0x2257('0x42')]=_0xfe3f44;return _0xbf65a6;})[_0x2257('0x23')](respondWithFilteredResult(_0x371c95,_0x555be6))[_0x2257('0x43')](handleError(_0x371c95,null));};exports[_0x2257('0x44')]=function(_0x1c384b,_0x11abf4){var _0x3aa47a={'raw':![],'where':{'id':_0x1c384b[_0x2257('0x45')]['id']}},_0x3b2ef5={};_0x3b2ef5[_0x2257('0x2d')]=_[_0x2257('0x2e')](db[_0x2257('0x2b')][_0x2257('0x2c')]);_0x3b2ef5[_0x2257('0x2f')]=_[_0x2257('0x2e')](_0x1c384b[_0x2257('0x2f')]);_0x3b2ef5[_0x2257('0x30')]=_['intersection'](_0x3b2ef5['model'],_0x3b2ef5[_0x2257('0x2f')]);_0x3aa47a[_0x2257('0x32')]=_['intersection'](_0x3b2ef5[_0x2257('0x2d')],qs['fields'](_0x1c384b['query'][_0x2257('0x33')]));_0x3aa47a['attributes']=_0x3aa47a[_0x2257('0x32')]['length']?_0x3aa47a[_0x2257('0x32')]:_0x3b2ef5[_0x2257('0x2d')];if(_0x1c384b[_0x2257('0x2f')]['includeAll']){_0x3aa47a[_0x2257('0x40')]=[{'all':!![]}];}_0x3aa47a=_[_0x2257('0x39')]({},_0x3aa47a,_0x1c384b['options']);return db['UserProfile']['find'](_0x3aa47a)[_0x2257('0x23')](handleEntityNotFound(_0x11abf4,null))[_0x2257('0x23')](respondWithResult(_0x11abf4,null))[_0x2257('0x43')](handleError(_0x11abf4,null));};exports[_0x2257('0x46')]=function(_0x505d63,_0x4761b7){return db[_0x2257('0x2b')]['create'](_0x505d63[_0x2257('0x47')],{})[_0x2257('0x23')](respondWithResult(_0x4761b7,0xc9))['catch'](handleError(_0x4761b7,null));};exports[_0x2257('0x48')]=function(_0x32bfea,_0x1e515b){var _0x5c3ab8={'raw':![],'where':{'id':_0x32bfea['params']['id']}},_0x36d133={};_0x36d133['model']=_[_0x2257('0x2e')](db[_0x2257('0x2b')][_0x2257('0x2c')]);_0x5c3ab8[_0x2257('0x32')]=_['intersection'](_0x36d133[_0x2257('0x2d')],qs[_0x2257('0x33')](_0x32bfea[_0x2257('0x2f')][_0x2257('0x33')]));_0x5c3ab8[_0x2257('0x32')]=_0x5c3ab8[_0x2257('0x32')][_0x2257('0x34')]?_0x5c3ab8[_0x2257('0x32')]:_0x36d133[_0x2257('0x2d')];if(_0x32bfea[_0x2257('0x2f')][_0x2257('0x3f')]){_0x5c3ab8[_0x2257('0x40')]=[{'all':!![]}];}_0x5c3ab8=_['merge']({},_0x5c3ab8,_0x32bfea[_0x2257('0x49')]);return db['UserProfile']['find'](_0x5c3ab8)[_0x2257('0x23')](handleEntityNotFound(_0x1e515b,null))[_0x2257('0x23')](function(_0x300410){if(_0x300410){var _0x6c87b0=_0x300410[_0x2257('0x4a')]({'plain':!![]});_0x6c87b0=qs[_0x2257('0x4b')](_0x6c87b0,['id',_0x2257('0x4c'),_0x2257('0x4d'),'crudPermissions']);_0x32bfea[_0x2257('0x47')]=_[_0x2257('0x4b')](_0x32bfea[_0x2257('0x47')],['id',_0x2257('0x4c'),_0x2257('0x4d')]);return db[_0x2257('0x4e')][_0x2257('0x4f')](function(_0x1e7ab8){return db[_0x2257('0x2b')][_0x2257('0x46')](_['merge'](_0x6c87b0,_0x32bfea['body']),{'include':_0x32bfea['query'][_0x2257('0x3f')]?[{'all':!![]}]:undefined,'transaction':_0x1e7ab8})[_0x2257('0x23')](function(_0x36ef3d){var _0x539672=_0x36ef3d[_0x2257('0x4a')]({'plain':!![]});return db[_0x2257('0x50')][_0x2257('0x41')]({'where':{'userProfileId':_0x32bfea[_0x2257('0x45')]['id']},'raw':!![]})[_0x2257('0x23')](function(_0xa98730){if(_0xa98730){return BPromise[_0x2257('0x51')](_0xa98730,function(_0xebc968){return new BPromise(function(_0x25f82e,_0x1d367d){if(_0xebc968[_0x2257('0x52')]===null||_0xebc968[_0x2257('0x52')]===0x1)_0x25f82e(null);return db[_0x2257('0x53')]['findAll']({'where':{'sectionId':_0xebc968['id']},'raw':!![]})[_0x2257('0x23')](function(_0x1d193d){var _0x13c80d=_[_0x2257('0x3a')](_0x1d193d,function(_0x5a3c60){return qs[_0x2257('0x4b')](_0x5a3c60,['id','createdAt','updatedAt',_0x2257('0x54')]);});_0x25f82e(_0x13c80d);})[_0x2257('0x43')](function(_0x1877a4){_0x1d367d(_0x1877a4);});})[_0x2257('0x23')](function(_0x3f58d4){var _0x44c5f1=qs[_0x2257('0x4b')](_0xebc968,['id',_0x2257('0x4c'),_0x2257('0x4d')]);_0x44c5f1['userProfileId']=_0x539672['id'];if(_0x3f58d4)_0x44c5f1['Resources']=_0x3f58d4;return _0x44c5f1;})['then'](function(_0xcb741c){return db[_0x2257('0x50')][_0x2257('0x46')](_0xcb741c,{'include':[{'model':db[_0x2257('0x53')],'as':_0x2257('0x55')}],'raw':!![],'transaction':_0x1e7ab8});});})[_0x2257('0x23')](function(){return _0x539672;});}});});});}})['then'](respondWithResult(_0x1e515b,0xc9))[_0x2257('0x43')](handleError(_0x1e515b,null));};exports['update']=function(_0x3307b9,_0x1b9624){if(_0x3307b9['body']['id']){delete _0x3307b9[_0x2257('0x47')]['id'];}return db[_0x2257('0x2b')]['find']({'where':{'id':_0x3307b9[_0x2257('0x45')]['id']}})[_0x2257('0x23')](handleEntityNotFound(_0x1b9624,null))[_0x2257('0x23')](saveUpdates(_0x3307b9[_0x2257('0x47')],null))[_0x2257('0x23')](respondWithResult(_0x1b9624,null))[_0x2257('0x43')](handleError(_0x1b9624,null));};exports['destroy']=function(_0x442293,_0x18417a){return db[_0x2257('0x2b')][_0x2257('0x56')]({'where':{'id':_0x442293['params']['id']}})[_0x2257('0x23')](handleEntityNotFound(_0x18417a,null))[_0x2257('0x23')](removeEntity(_0x18417a,null))[_0x2257('0x43')](handleError(_0x18417a,null));};exports['describe']=function(_0x515779,_0xedf126){return db[_0x2257('0x2b')][_0x2257('0x57')]()['then'](respondWithResult(_0xedf126,null))[_0x2257('0x43')](handleError(_0xedf126,null));};exports[_0x2257('0x58')]=function(_0x11c5b6,_0x3c3b34){var _0x4179ac=_0x11c5b6[_0x2257('0x47')];return db['UserProfile'][_0x2257('0x56')]({'where':{'id':_0x11c5b6[_0x2257('0x45')]['id']}})[_0x2257('0x23')](handleEntityNotFound(_0x3c3b34,null))[_0x2257('0x23')](function(_0x48a6e1){if(_0x48a6e1){return db[_0x2257('0x4e')][_0x2257('0x4f')](function(_0x59c4bd){return db[_0x2257('0x50')]['destroy']({'where':{'userProfileId':_0x11c5b6['params']['id'],'sectionId':_['map'](_0x4179ac,function(_0x2b5ac8){return _0x2b5ac8['sectionId'];})},'transaction':_0x59c4bd})[_0x2257('0x23')](function(){var _0x1df256=_[_0x2257('0x3a')](_0x4179ac,function(_0x39206a){_0x39206a['userProfileId']=_0x11c5b6[_0x2257('0x45')]['id'];return _0x39206a;});var _0x4d1bed=[];return BPromise[_0x2257('0x51')](_0x1df256,function(_0x4b3f32){return db['UserProfileSection'][_0x2257('0x46')](_0x4b3f32,{'include':[{'model':db[_0x2257('0x53')],'as':_0x2257('0x55')}],'raw':!![],'transaction':_0x59c4bd})['then'](function(_0x5e54f4){_0x4d1bed[_0x2257('0x59')](_0x5e54f4[_0x2257('0x4a')]({'plain':!![]}));});})[_0x2257('0x23')](function(){return _0x4d1bed;});});});}})['then'](function(_0x23fa9d){return _0x23fa9d;})[_0x2257('0x23')](respondWithResult(_0x3c3b34,null))['catch'](handleError(_0x3c3b34,null));};exports[_0x2257('0x5a')]=function(_0x424156,_0x39bf67){var _0x51c919;return db['UserProfile'][_0x2257('0x56')]({'where':{'id':_0x424156[_0x2257('0x45')]['id']},'attributes':['id',_0x2257('0x28')]})[_0x2257('0x23')](handleEntityNotFound(_0x39bf67,null))[_0x2257('0x23')](function(_0x4fb011){if(_0x4fb011){_0x51c919=_0x4fb011;return db[_0x2257('0x50')]['destroy']({'where':{'userProfileId':_0x424156[_0x2257('0x45')]['id'],'sectionId':_0x424156[_0x2257('0x2f')][_0x2257('0x5b')]}});}})[_0x2257('0x23')](function(){return _0x51c919;})[_0x2257('0x23')](respondWithStatusCode(_0x39bf67,null))[_0x2257('0x43')](handleError(_0x39bf67,null));};exports[_0x2257('0x5c')]=function(_0x4c18cc,_0x1c5ede){return db[_0x2257('0x2b')]['find']({'where':{'id':_0x4c18cc['params']['id']}})['then'](handleEntityNotFound(_0x1c5ede,null))[_0x2257('0x23')](function(_0x2771c1){if(_0x2771c1){return db[_0x2257('0x4e')][_0x2257('0x4f')](function(_0x196dc9){return db[_0x2257('0x50')][_0x2257('0x41')]({'where':{'userProfileId':_0x4c18cc[_0x2257('0x45')]['id']},'attributes':['id'],'raw':!![]})[_0x2257('0x23')](function(_0xa9a4af){if(_0xa9a4af){return db[_0x2257('0x50')][_0x2257('0x24')]({'where':{'userProfileId':_0x4c18cc[_0x2257('0x45')]['id'],'id':_[_0x2257('0x3a')](_0xa9a4af,function(_0x30c785){return _0x30c785['id'];})},'transaction':_0x196dc9});}})['then'](function(_0x354eae){var _0x1c4e5d=_['map'](_0x4c18cc[_0x2257('0x47')],function(_0x157b5b){_0x157b5b[_0x2257('0x5d')]=_0x4c18cc[_0x2257('0x45')]['id'];return _0x157b5b;});return db[_0x2257('0x50')][_0x2257('0x5e')](_0x1c4e5d,{'raw':!![],'transaction':_0x196dc9});})[_0x2257('0x23')](function(_0x296a9a){var _0x42e865=_[_0x2257('0x3e')](_[_0x2257('0x3a')](_0x296a9a,function(_0x126390){return _0x126390['get']({'plain':!![]});}),{'includeAll':![]});if(_0x42e865){return db[_0x2257('0x50')]['findAll']({'where':{'userProfileId':_0x4c18cc['params']['id'],'sectionId':_[_0x2257('0x3a')](_0x42e865,function(_0x42c672){return _0x42c672[_0x2257('0x54')];})},'attributes':['id','sectionId'],'raw':!![]})[_0x2257('0x23')](function(_0x1f7ed2){var _0x37d2e1=_['map'](_0x4c18cc[_0x2257('0x47')],function(_0x2c4041){_0x2c4041['userProfileId']=_0x4c18cc[_0x2257('0x45')]['id'];return _0x2c4041;});return db[_0x2257('0x53')][_0x2257('0x5e')](_0x37d2e1,{'raw':!![],'transaction':_0x196dc9});});}})[_0x2257('0x43')](handleError(_0x1c5ede,null));});}})[_0x2257('0x23')](function(_0x41d48b){var _0xacf8e0=_[_0x2257('0x3a')](_0x41d48b,function(_0x43d43d){return _0x43d43d['get']({'plain':!![]});});})[_0x2257('0x23')](respondWithResult(_0x1c5ede,null))[_0x2257('0x43')](handleError(_0x1c5ede,null));};exports[_0x2257('0x5f')]=function(_0x3f6dd1,_0x3073fe,_0x5bd5de){return db['UserProfile'][_0x2257('0x56')]({'where':{'id':_0x3f6dd1[_0x2257('0x45')]['id']}})[_0x2257('0x23')](handleEntityNotFound(_0x3073fe,null))[_0x2257('0x23')](function(_0x518275){if(_0x518275){return _0x518275[_0x2257('0x5f')](_0x3f6dd1['query']['ids']);}})['then'](respondWithStatusCode(_0x3073fe,null))[_0x2257('0x43')](handleError(_0x3073fe,null));};exports[_0x2257('0x60')]=function(_0x26de30,_0xab0d14){var _0x1a0b86={'raw':![],'where':{}};var _0x5e1fe0={};var _0x2956bb={'count':0x0,'rows':[]};var _0x2a9162=_0x26de30[_0x2257('0x2f')][_0x2257('0x61')];if(typeof _0x2a9162===_0x2257('0x62')){throw new db[(_0x2257('0x63'))][(_0x2257('0x64'))](_0x2257('0x65'));}var _0x5bb9da=_0x26de30[_0x2257('0x2f')][_0x2257('0x66')]||![];var _0x15b424=getQueryModels(_0x2a9162,_0x5bb9da);if(typeof _0x15b424[_0x2257('0x67')]==='undefined'){throw new db[(_0x2257('0x63'))][(_0x2257('0x64'))]('Invalid\x20section\x20\x27'+_0x2a9162+'\x27');}var _0x4d7ee4=[];if(!_[_0x2257('0x68')](_0x15b424[_0x2257('0x69')])){_0x4d7ee4=_0x15b424[_0x2257('0x69')];}else{_0x4d7ee4=[{'name':_0x2a9162}];}return db['UserProfile'][_0x2257('0x6a')]({'where':{'id':_0x26de30['params']['id']}})[_0x2257('0x23')](handleEntityNotFound(_0xab0d14,null))['then'](function(_0x15d011){if(_0x15d011){var _0x2aecaf=[];for(var _0x17ce38=0x0;_0x17ce38<_0x4d7ee4[_0x2257('0x34')];_0x17ce38++){_0x2aecaf[_0x2257('0x59')](db['UserProfileSection'][_0x2257('0x6a')]({'where':{'userProfileId':_0x15d011['id'],'name':_0x4d7ee4[_0x17ce38][_0x2257('0x28')]},'raw':!![]}));}return BPromise[_0x2257('0x6b')](_0x2aecaf);}})[_0x2257('0x23')](function(_0x24760e){var _0x1f1ab1=_['filter'](_0x24760e,function(_0x5204d4){return _0x5204d4?_0x5204d4:undefined;});var _0x391a59=_[_0x2257('0x3e')](_0x4d7ee4,[_0x2257('0x6c'),!![]]);var _0x367281=_['isEmpty'](_0x1f1ab1)&&_[_0x2257('0x68')](_0x391a59)?null:_['union'](_0x391a59,_0x1f1ab1);if(_0x367281){var _0x481742=[];for(var _0x5313a3=0x0;_0x5313a3<_0x367281[_0x2257('0x34')];_0x5313a3++){var _0x376da3=_['find'](_0x4d7ee4,function(_0x27ca81){return _0x367281[_0x5313a3]?_0x27ca81[_0x2257('0x28')]===_0x367281[_0x5313a3][_0x2257('0x28')]:null;});if(_0x376da3){if(_0x367281[_0x5313a3]['ignore']){_0x481742['push'](getAllResources(_0x15b424[_0x2257('0x67')],_0x367281[_0x5313a3]));}else{if(!_0x367281[_0x5313a3][_0x2257('0x52')]){_0x481742['push'](getAllowedResources(_0x376da3,_0x367281[_0x5313a3],_0x15b424[_0x2257('0x67')]));}else{if(_0x376da3['model']){_0x481742['push'](getAllFilteredResources(_0x376da3,_0x367281[_0x5313a3]));}}}}}return BPromise[_0x2257('0x6b')](_0x481742);}else{return null;}})['then'](function(_0x30bdb6){var _0x3b3189=_0x30bdb6;var _0x4c2d50=null;if(_0x3b3189){_0x4c2d50=_0x3b3189['length']===0x1?_0x3b3189[0x0]:null;}if(_0x4c2d50||_0x3b3189){var _0x24e630=db[_0x15b424[_0x2257('0x67')]][_0x2257('0x2c')];_0x5e1fe0['model']=_[_0x2257('0x2e')](_0x24e630);_0x5e1fe0[_0x2257('0x2f')]=_[_0x2257('0x2e')](_0x26de30[_0x2257('0x2f')]);_0x5e1fe0[_0x2257('0x30')]=_['intersection'](_0x5e1fe0[_0x2257('0x2d')],_0x5e1fe0[_0x2257('0x2f')]);_0x1a0b86['attributes']=_['intersection'](_0x5e1fe0[_0x2257('0x2d')],qs[_0x2257('0x33')](_0x26de30[_0x2257('0x2f')][_0x2257('0x33')]));_0x1a0b86[_0x2257('0x32')]=_0x1a0b86['attributes'][_0x2257('0x34')]?_0x1a0b86[_0x2257('0x32')]:_0x5e1fe0[_0x2257('0x2d')];if(!_0x26de30[_0x2257('0x2f')]['hasOwnProperty']('nolimit')){_0x1a0b86[_0x2257('0x1e')]=qs['limit'](_0x26de30[_0x2257('0x2f')][_0x2257('0x1e')]);_0x1a0b86[_0x2257('0x1d')]=qs['offset'](_0x26de30[_0x2257('0x2f')][_0x2257('0x1d')]);}_0x1a0b86[_0x2257('0x6d')]=qs[_0x2257('0x36')](_0x26de30[_0x2257('0x2f')]['sort']);_0x1a0b86[_0x2257('0x37')]=qs[_0x2257('0x30')](_[_0x2257('0x38')](_0x26de30[_0x2257('0x2f')],_0x5e1fe0['filters']));if(_0x26de30[_0x2257('0x2f')][_0x2257('0x3e')]){_0x1a0b86[_0x2257('0x37')]=_[_0x2257('0x39')](_0x1a0b86[_0x2257('0x37')],{'$or':_[_0x2257('0x3a')](_0x24e630,function(_0x376aeb){if(_0x376aeb[_0x2257('0x3b')]['key']!==_0x2257('0x6e')){var _0x39e3cc={};_0x39e3cc[_0x376aeb[_0x2257('0x3d')]]={'$like':'%'+_0x26de30[_0x2257('0x2f')][_0x2257('0x3e')]+'%'};return _0x39e3cc;}})});}var _0xa98bcd=[];if(_0x4c2d50){var _0x1b49da=_['find'](_0x4d7ee4,[_0x2257('0x28'),_0x4c2d50[_0x2257('0x28')]]);if(_0x1b49da[_0x2257('0x3d')]){var _0x49f07e={};if(_0x15b424[_0x2257('0x67')]===_0x2257('0x6f')){_0x49f07e[_0x1b49da[_0x2257('0x70')]]=_[_0x2257('0x3a')](_0x4c2d50[_0x2257('0x71')],'id');}else{_0x49f07e[_0x1b49da['foreignKey']]=_0x4c2d50[_0x2257('0x71')];}_0xa98bcd[_0x2257('0x59')](_0x49f07e);}else{_0x1a0b86[_0x2257('0x37')]['id']=_0x4c2d50[_0x2257('0x71')];}}else{for(var _0x5da17f=0x0;_0x5da17f<_0x3b3189[_0x2257('0x34')];_0x5da17f++){var _0x1b49da=_[_0x2257('0x56')](_0x4d7ee4,[_0x2257('0x28'),_0x3b3189[_0x5da17f]['name']]);if(_0x1b49da['field']){var _0x49f07e={};_0x49f07e[_0x1b49da[_0x2257('0x70')]]=_0x3b3189[_0x5da17f]['associatedResources'];_0xa98bcd[_0x2257('0x59')](_0x49f07e);}else{if(!_0x1a0b86[_0x2257('0x37')]['id'])_0x1a0b86[_0x2257('0x37')]['id']=[];_0x3b3189[_0x5da17f][_0x2257('0x71')][_0x2257('0x72')](function(_0x16028f){_0x1a0b86[_0x2257('0x37')]['id'][_0x2257('0x59')](_0x16028f);});}}}if(!_['isEmpty'](_0xa98bcd)){_0x1a0b86['where']=_['merge'](_0x1a0b86[_0x2257('0x37')],{'$and':{'$or':_0xa98bcd}});}_0x1a0b86=_[_0x2257('0x39')]({},_0x1a0b86,_0x26de30[_0x2257('0x49')]);if(_0x4c2d50&&!_0x4c2d50[_0x2257('0x52')]&&_0x15b424[_0x2257('0x67')]===_0x2257('0x6f')){if(_0x26de30[_0x2257('0x2f')][_0x2257('0x3f')]){_0x1a0b86[_0x2257('0x40')]=[{'all':!![]}];}return db[_0x15b424[_0x2257('0x67')]][_0x2257('0x41')](_0x1a0b86)[_0x2257('0x23')](function(_0x4d8836){var _0x41f42a=[];_0x4d8836[_0x2257('0x72')](function(_0x32f941){var _0x1a8365;switch(_0x32f941[_0x2257('0x73')]){case _0x2257('0x74'):_0x1a8365=_[_0x2257('0x56')](_0x4c2d50[_0x2257('0x71')],function(_0x1766cc){return _0x1766cc['id']===_0x32f941[_0x2257('0x75')]&&_0x1766cc[_0x2257('0x3b')]===_0x2257('0x76');});break;case _0x2257('0x77'):_0x1a8365=_[_0x2257('0x56')](_0x4c2d50[_0x2257('0x71')],function(_0x58da52){return _0x58da52['id']===_0x32f941[_0x2257('0x75')]&&_0x58da52[_0x2257('0x3b')]===_0x2257('0x78');});break;}if(_0x1a8365)_0x41f42a[_0x2257('0x59')](_0x32f941);});_0x2956bb[_0x2257('0x1c')]=_0x41f42a[_0x2257('0x34')];_0x2956bb[_0x2257('0x42')]=_0x41f42a;return _0x2956bb;});}else{return db[_0x15b424[_0x2257('0x67')]][_0x2257('0x1c')]({'where':_0x1a0b86['where']})[_0x2257('0x23')](function(_0x31fcc4){_0x2956bb['count']=_0x31fcc4;if(_0x26de30[_0x2257('0x2f')][_0x2257('0x3f')]){if(_0x15b424['childModel']===_0x2257('0x79')){_0x1a0b86[_0x2257('0x40')]=[{'model':db['Tag'],'as':_0x2257('0x7a'),'attributes':['id','name','color'],'required':_0x26de30['query'][_0x2257('0x7b')]?!![]:![]},{'model':db[_0x2257('0x7c')],'as':'ThroughTags','attributes':['id',_0x2257('0x28'),_0x2257('0x7d')],'through':_0x26de30[_0x2257('0x2f')][_0x2257('0x7b')]?{'attributes':[],'where':{'TagId':_0x26de30[_0x2257('0x2f')][_0x2257('0x7b')]||undefined}}:{},'required':_0x26de30[_0x2257('0x2f')]['tag']?!![]:![]}];}else{_0x1a0b86['include']=[{'all':!![]}];}}return db[_0x15b424['childModel']][_0x2257('0x41')](_0x1a0b86);})[_0x2257('0x23')](function(_0x46803d){_0x2956bb['rows']=_0x46803d;return _0x2956bb;});}}else{return _0x2956bb;}})['then'](respondWithFilteredResult(_0xab0d14,_0x1a0b86))[_0x2257('0x43')](handleError(_0xab0d14,null));};function getAllResources(_0x1a7332,_0x258d8f){return new BPromise(function(_0xf6555e,_0x5117ec){if(_0x258d8f){var _0xa27bee=_0x258d8f[_0x2257('0x3e')]?{[_0x258d8f[_0x2257('0x3e')][_0x2257('0x3d')]]:_0x258d8f['filter'][_0x2257('0x7e')]}:undefined;return db[_0x1a7332][_0x2257('0x41')]({'where':_0xa27bee,'raw':!![]})['then'](function(_0x19cfb4){_0x258d8f[_0x2257('0x71')]=_[_0x2257('0x3a')](_0x19cfb4,'id');_0xf6555e(_0x258d8f);})['catch'](function(_0x4e3d3d){_0x5117ec(_0x4e3d3d);});}else{_0xf6555e(null);}});}function getAllFilteredResources(_0x47f2f0,_0x26a995){return new BPromise(function(_0xfcbd35,_0x52b03d){var _0x467444=_0x47f2f0[_0x2257('0x3e')]?{[_0x47f2f0[_0x2257('0x3e')][_0x2257('0x3d')]]:_0x47f2f0[_0x2257('0x3e')][_0x2257('0x7e')]}:undefined;return db[_0x47f2f0[_0x2257('0x2d')]][_0x2257('0x41')]({'where':_0x467444,'raw':!![]})[_0x2257('0x23')](function(_0x3f457b){_0x26a995[_0x2257('0x71')]=_[_0x2257('0x3a')](_0x3f457b,function(_0x220ef5){return _0x220ef5['name'];});_0xfcbd35(_0x26a995);})[_0x2257('0x43')](function(_0x5f1c04){_0x52b03d(_0x5f1c04);});});}function getAllowedResources(_0x377169,_0x5e4643,_0xca7c28){return new BPromise(function(_0x2b892e,_0x374ccd){if(_0x5e4643){return db[_0x2257('0x53')][_0x2257('0x41')]({'where':{'sectionId':_0x5e4643['id']},'raw':!![]})['then'](function(_0x3569d5){if(_0x377169['field']&&_0x377169[_0x2257('0x3d')]!=='id'){_0x5e4643[_0x2257('0x71')]=_[_0x2257('0x3a')](_0x3569d5,function(_0x3127bc){return _0x3127bc[_0x377169[_0x2257('0x3d')]];});}else{if(_0xca7c28==='AnalyticExtractedReport'){_0x5e4643[_0x2257('0x71')]=_['map'](_0x3569d5,function(_0x2a96b2){return{'id':_0x2a96b2[_0x2257('0x7f')],'type':_0x2a96b2[_0x2257('0x3b')]};});}else{_0x5e4643['associatedResources']=_[_0x2257('0x3a')](_0x3569d5,function(_0xd7b735){return _0xd7b735['resourceId'];});}}_0x2b892e(_0x5e4643);})['catch'](function(_0x52dcb9){_0x374ccd(_0x52dcb9);});}else{_0x2b892e(null);}});}function getQueryModels(_0x5a8fef,_0x5182cb){var _0x52fcde=_0x5a8fef[_0x2257('0x80')]();var _0x29cb30={'childModel':undefined,'parentSections':[]};switch(_0x52fcde){case _0x2257('0x81'):_0x29cb30['childModel']=_0x2257('0x82');break;case'odbc':_0x29cb30[_0x2257('0x67')]=_0x2257('0x83');break;case _0x2257('0x84'):_0x29cb30['childModel']='SquareRecording';_0x29cb30[_0x2257('0x69')]=[{'name':_0x2257('0x85'),'field':_0x2257('0x28'),'foreignKey':'projectName'}];break;case'projects':_0x29cb30[_0x2257('0x67')]='JscriptyProject';break;case _0x2257('0x86'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x79');_0x29cb30[_0x2257('0x69')]=[{'name':_0x2257('0x87'),'field':'id','foreignKey':_0x2257('0x88')}];break;case _0x2257('0x89'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x8a');break;case _0x2257('0x8b'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x8c');break;case _0x2257('0x8d'):_0x29cb30['childModel']='CmCustomField';break;case'chatqueues':_0x29cb30[_0x2257('0x67')]=_0x2257('0x8e');break;case _0x2257('0x8f'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x90');break;case _0x2257('0x91'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x92');break;case _0x2257('0x93'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x94');break;case _0x2257('0x95'):case'internalroutes':case _0x2257('0x96'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x97');break;case _0x2257('0x98'):_0x29cb30['childModel']=_0x2257('0x99');break;case _0x2257('0x9a'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x9b');break;case _0x2257('0x9c'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x9d');_0x29cb30[_0x2257('0x69')]=[{'name':_0x2257('0x9e'),'field':'name','foreignKey':_0x2257('0x9f'),'model':_0x2257('0xa0'),'filter':{'field':_0x2257('0xa1'),'value':[_0x2257('0xa2')]}},{'name':_0x2257('0xa3'),'field':'name','foreignKey':_0x2257('0x9f'),'model':'User','filter':{'field':'role','value':[_0x2257('0xa4')]}},{'name':_0x2257('0xa5'),'field':_0x2257('0x28'),'foreignKey':'queue','model':_0x2257('0xa6'),'filter':{'field':'type','value':['inbound']}},{'name':_0x2257('0xa7'),'field':_0x2257('0x28'),'foreignKey':_0x2257('0xa8'),'model':'VoiceQueue','filter':{'field':_0x2257('0x3b'),'value':['outbound']}}];break;case _0x2257('0xa9'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xaa');break;case _0x2257('0xab'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xac');break;case _0x2257('0xad'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xae');break;case _0x2257('0xaf'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xb0');break;case _0x2257('0xb1'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xb2');break;case _0x2257('0xb3'):_0x29cb30['childModel']=_0x2257('0xb4');break;case'mailsubstatuses':_0x29cb30[_0x2257('0x67')]=_0x2257('0xb5');break;case _0x2257('0xb6'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xb7');break;case _0x2257('0xb8'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xb9');break;case _0x2257('0xba'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xbb');break;case _0x2257('0xbc'):_0x29cb30['childModel']=_0x2257('0xbd');break;case _0x2257('0xbe'):_0x29cb30['childModel']=_0x2257('0xbf');break;case _0x2257('0xc0'):case'queuecampaigns':_0x29cb30['childModel']=_0x2257('0xa6');if(_0x5182cb){_0x29cb30[_0x2257('0x69')]=[{'name':'VoiceQueues'},{'name':'QueueCampaigns'}];}break;case'users':case _0x2257('0xc1'):case'telephones':_0x29cb30[_0x2257('0x67')]=_0x2257('0xa0');if(_0x5182cb){_0x29cb30['parentSections']=[{'name':_0x2257('0xc2'),'filter':{'field':_0x2257('0xa1'),'value':[_0x2257('0xc3'),_0x2257('0xc4')]},'ignore':!![]},{'name':_0x2257('0x9e')},{'name':_0x2257('0xa3')}];}break;case _0x2257('0xc5'):_0x29cb30[_0x2257('0x67')]='ZendeskAccount';break;case _0x2257('0xc6'):_0x29cb30[_0x2257('0x67')]='SalesforceAccount';break;case _0x2257('0xc7'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xc8');break;case _0x2257('0xc9'):_0x29cb30[_0x2257('0x67')]='SugarcrmAccount';break;case _0x2257('0xca'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xcb');break;case _0x2257('0xcc'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xcd');break;case _0x2257('0xce'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xa0');break;case _0x2257('0xcf'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xd0');break;case _0x2257('0xd1'):_0x29cb30['childModel']='Disposition';break;case _0x2257('0xd2'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xd3');break;case _0x2257('0xd4'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xd5');break;case _0x2257('0xd6'):_0x29cb30['childModel']='Pause';break;case _0x2257('0xd7'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xd8');break;case'sounds':_0x29cb30[_0x2257('0x67')]=_0x2257('0xd9');break;case'tags':_0x29cb30[_0x2257('0x67')]=_0x2257('0x7c');break;case _0x2257('0xda'):_0x29cb30[_0x2257('0x67')]=_0x2257('0xdb');break;case'triggers':_0x29cb30[_0x2257('0x67')]=_0x2257('0xdc');break;case _0x2257('0xdd'):_0x29cb30['childModel']=_0x2257('0xde');break;case _0x2257('0xdf'):_0x29cb30['childModel']=_0x2257('0xe0');break;case _0x2257('0xe1'):_0x29cb30[_0x2257('0x67')]='Plugin';break;case _0x2257('0xe2'):_0x29cb30[_0x2257('0x67')]=_0x2257('0x6f');_0x29cb30[_0x2257('0x69')]=[{'name':_0x2257('0xe3'),'field':'id','foreignKey':_0x2257('0x75')}];break;case _0x2257('0xe4'):_0x29cb30['childModel']=_0x2257('0xe5');break;case'saproducts':_0x29cb30['childModel']=_0x2257('0xe6');break;case _0x2257('0xe7'):_0x29cb30[_0x2257('0x67')]='SAPriceList';break;case _0x2257('0xe8'):_0x29cb30['childModel']=_0x2257('0xe9');break;default:return _0x29cb30;}return _0x29cb30;}