Built motion from commit (unavailable).|2.3.10
[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 _0x719b=['then','destroy','error','stack','name','index','UserProfile','model','query','keys','filters','intersection','fields','attributes','length','nolimit','order','sort','where','pick','filter','merge','map','type','key','VIRTUAL','field','options','includeAll','findAll','rows','catch','show','params','create','body','rawAttributes','include','find','omit','createdAt','updatedAt','crudPermissions','transaction','get','UserProfileSection','each','autoAssociation','UserProfileResource','sectionId','userProfileId','Resources','describe','addSections','sequelize','push','removeSections','ids','addResources','bulkCreate','getResources','undefined','Unknown\x20section','mergeResources','childModel','Sequelize','Invalid\x20section\x20\x27','isEmpty','parentSections','findOne','all','ignore','union','hasOwnProperty','resourceFields','resourceIds','forEach','AnalyticExtractedReport','reportType','default','reportId','DefaultReports','custom','CustomReports','CmContact','Tag','Tags','color','tag','ThroughTags','value','resourceId','toLowerCase','squareprojects','SquareProject','odbc','SquareOdbc','squarerecordings','SquareRecording','SquareProjects','projectName','projects','JscriptyProject','contacts','Lists','ListId','CmList','companies','CmCompany','globalcustomfields','CmCustomField','chatqueues','ChatQueue','faxaccounts','FaxAccount','inboundroutes','outboundroutes','contexts','VoiceContext','VoiceMail','voicerecordings','VoiceRecording','membername','User','role','agent','Telephones','telephone','VoiceQueues','queue','VoiceQueue','outbound','VoiceMusicOnHold','VoiceChanSpy','voiceprefixes','ivrcampaigns','Campaign','MailQueue','mailaccounts','MailAccount','mailsubstatuses','openchannelaccounts','SmsQueue','SmsAccount','teams','voicequeues','queuecampaigns','QueueCampaigns','users','telephones','Users','admin','user','Agents','zendeskaccounts','ZendeskAccount','salesforceaccounts','sugarcrmaccounts','SugarcrmAccount','deskaccounts','zohoaccounts','ZohoAccount','vtigeraccounts','cannedanswers','CannedAnswer','Disposition','customdashboards','Dashboard','intervals','Interval','pauses','Pause','scheduler','Schedule','Sound','tags','templates','Template','triggers','Trigger','Trunk','variables','Variable','Plugin','extractedreports','Reports','metrics','AnalyticMetric','html-pdf','request-promise','moment','bluebird','mustache','util','sox','lodash','jsforce','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../config/license/hardware','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./userProfile.socket','sendStatus','status','end','json','count','offset','limit','set','Content-Range','save','update'];(function(_0x5a8f34,_0x11c27b){var _0x497614=function(_0x2089e3){while(--_0x2089e3){_0x5a8f34['push'](_0x5a8f34['shift']());}};_0x497614(++_0x11c27b);}(_0x719b,0x19d));var _0xb719=function(_0x32f7f5,_0x363170){_0x32f7f5=_0x32f7f5-0x0;var _0x1c7f8=_0x719b[_0x32f7f5];return _0x1c7f8;};'use strict';var pdf=require(_0xb719('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xb719('0x1'));var moment=require(_0xb719('0x2'));var BPromise=require(_0xb719('0x3'));var Mustache=require(_0xb719('0x4'));var util=require(_0xb719('0x5'));var path=require('path');var sox=require(_0xb719('0x6'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0xb719('0x7'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0xb719('0x8'));var deskjs=require(_0xb719('0x9'));var toCsv=require(_0xb719('0xa'));var querystring=require(_0xb719('0xb'));var Papa=require(_0xb719('0xc'));var authService=require(_0xb719('0xd'));var hardwareService=require(_0xb719('0xe'));var Redis=require(_0xb719('0xf'));var qs=require(_0xb719('0x10'));var logger=require(_0xb719('0x11'))(_0xb719('0x12'));var utils=require(_0xb719('0x13'));var config=require(_0xb719('0x14'));var db=require(_0xb719('0x15'))['db'];config[_0xb719('0x16')]=_[_0xb719('0x17')](config[_0xb719('0x16')],{'host':'localhost','port':0x18eb});var socket=require(_0xb719('0x18'))(new Redis(config[_0xb719('0x16')]));require(_0xb719('0x19'))['register'](socket);function respondWithStatusCode(_0x4fd44c,_0x48add7){_0x48add7=_0x48add7||0xcc;return function(_0xddec92){if(_0xddec92){return _0x4fd44c[_0xb719('0x1a')](_0x48add7);}return _0x4fd44c[_0xb719('0x1b')](_0x48add7)[_0xb719('0x1c')]();};}function respondWithResult(_0x163b77,_0x36e066){_0x36e066=_0x36e066||0xc8;return function(_0x1ad78b){if(_0x1ad78b){return _0x163b77[_0xb719('0x1b')](_0x36e066)[_0xb719('0x1d')](_0x1ad78b);}};}function respondWithFilteredResult(_0x2f8441,_0x93fbb4){return function(_0x807c4a){if(_0x807c4a){var _0x49a4b0=_0x807c4a[_0xb719('0x1e')],_0x4723a2=_0x93fbb4[_0xb719('0x1f')],_0x52cb8f=_0x93fbb4['offset']+_0x93fbb4[_0xb719('0x20')],_0x7792e8;if(_0x52cb8f>=_0x49a4b0){_0x52cb8f=_0x49a4b0;_0x7792e8=0xc8;}else{_0x7792e8=0xce;}_0x2f8441['status'](_0x7792e8);return _0x2f8441[_0xb719('0x21')](_0xb719('0x22'),_0x4723a2+'-'+_0x52cb8f+'/'+_0x49a4b0)[_0xb719('0x1d')](_0x807c4a);}return null;};}function patchUpdates(_0x380371){return function(_0x599c84){try{jsonpatch['apply'](_0x599c84,_0x380371,!![]);}catch(_0x245968){return BPromise['reject'](_0x245968);}return _0x599c84[_0xb719('0x23')]();};}function saveUpdates(_0x4b722c,_0x41d232){return function(_0x1c5388){if(_0x1c5388){return _0x1c5388[_0xb719('0x24')](_0x4b722c)[_0xb719('0x25')](function(_0x3317e3){return _0x3317e3;});}return null;};}function removeEntity(_0x3efff9,_0x5db5a2){return function(_0x4406db){if(_0x4406db){return _0x4406db[_0xb719('0x26')]()[_0xb719('0x25')](function(){_0x3efff9[_0xb719('0x1b')](0xcc)[_0xb719('0x1c')]();});}};}function handleEntityNotFound(_0x3cdb6e,_0x74934e){return function(_0x522f0e){if(!_0x522f0e){_0x3cdb6e[_0xb719('0x1a')](0x194);}return _0x522f0e;};}function handleError(_0x36de9a,_0x1ddb2c){_0x1ddb2c=_0x1ddb2c||0x1f4;return function(_0x505238){logger[_0xb719('0x27')](_0x505238[_0xb719('0x28')]);if(_0x505238[_0xb719('0x29')]){delete _0x505238[_0xb719('0x29')];}_0x36de9a[_0xb719('0x1b')](_0x1ddb2c)['send'](_0x505238);};}exports[_0xb719('0x2a')]=function(_0x4436a2,_0x3a19c7){var _0x454fb1={},_0x15516f={},_0x3640e4={'count':0x0,'rows':[]};var _0x445f93=db[_0xb719('0x2b')]['rawAttributes'];_0x15516f[_0xb719('0x2c')]=_['keys'](_0x445f93);_0x15516f[_0xb719('0x2d')]=_[_0xb719('0x2e')](_0x4436a2[_0xb719('0x2d')]);_0x15516f[_0xb719('0x2f')]=_[_0xb719('0x30')](_0x15516f[_0xb719('0x2c')],_0x15516f[_0xb719('0x2d')]);_0x454fb1['attributes']=_[_0xb719('0x30')](_0x15516f[_0xb719('0x2c')],qs[_0xb719('0x31')](_0x4436a2['query'][_0xb719('0x31')]));_0x454fb1[_0xb719('0x32')]=_0x454fb1['attributes'][_0xb719('0x33')]?_0x454fb1[_0xb719('0x32')]:_0x15516f[_0xb719('0x2c')];if(!_0x4436a2[_0xb719('0x2d')]['hasOwnProperty'](_0xb719('0x34'))){_0x454fb1[_0xb719('0x20')]=qs[_0xb719('0x20')](_0x4436a2[_0xb719('0x2d')][_0xb719('0x20')]);_0x454fb1['offset']=qs['offset'](_0x4436a2[_0xb719('0x2d')][_0xb719('0x1f')]);}_0x454fb1[_0xb719('0x35')]=qs[_0xb719('0x36')](_0x4436a2[_0xb719('0x2d')][_0xb719('0x36')]);_0x454fb1[_0xb719('0x37')]=qs[_0xb719('0x2f')](_[_0xb719('0x38')](_0x4436a2[_0xb719('0x2d')],_0x15516f['filters']));if(_0x4436a2[_0xb719('0x2d')][_0xb719('0x39')]){_0x454fb1[_0xb719('0x37')]=_[_0xb719('0x3a')](_0x454fb1['where'],{'$or':_[_0xb719('0x3b')](_0x445f93,function(_0x23dbb9){if(_0x23dbb9[_0xb719('0x3c')][_0xb719('0x3d')]!==_0xb719('0x3e')){var _0x24c538={};_0x24c538[_0x23dbb9[_0xb719('0x3f')]]={'$like':'%'+_0x4436a2['query'][_0xb719('0x39')]+'%'};return _0x24c538;}})});}_0x454fb1=_['merge']({},_0x454fb1,_0x4436a2[_0xb719('0x40')]);var _0x56c71e={'where':_0x454fb1['where']};return db[_0xb719('0x2b')][_0xb719('0x1e')](_0x56c71e)['then'](function(_0x13a254){_0x3640e4['count']=_0x13a254;if(_0x4436a2[_0xb719('0x2d')][_0xb719('0x41')]){_0x454fb1['include']=[{'all':!![]}];}return db[_0xb719('0x2b')][_0xb719('0x42')](_0x454fb1);})['then'](function(_0x86313){_0x3640e4[_0xb719('0x43')]=_0x86313;return _0x3640e4;})[_0xb719('0x25')](respondWithFilteredResult(_0x3a19c7,_0x454fb1))[_0xb719('0x44')](handleError(_0x3a19c7,null));};exports[_0xb719('0x45')]=function(_0x3c8c5b,_0x57b913){var _0x39ac23={'raw':![],'where':{'id':_0x3c8c5b[_0xb719('0x46')]['id']}},_0x4f20f1={};_0x4f20f1[_0xb719('0x2c')]=_['keys'](db['UserProfile']['rawAttributes']);_0x4f20f1[_0xb719('0x2d')]=_['keys'](_0x3c8c5b[_0xb719('0x2d')]);_0x4f20f1[_0xb719('0x2f')]=_['intersection'](_0x4f20f1[_0xb719('0x2c')],_0x4f20f1[_0xb719('0x2d')]);_0x39ac23['attributes']=_[_0xb719('0x30')](_0x4f20f1[_0xb719('0x2c')],qs['fields'](_0x3c8c5b[_0xb719('0x2d')]['fields']));_0x39ac23[_0xb719('0x32')]=_0x39ac23[_0xb719('0x32')]['length']?_0x39ac23[_0xb719('0x32')]:_0x4f20f1[_0xb719('0x2c')];if(_0x3c8c5b['query'][_0xb719('0x41')]){_0x39ac23['include']=[{'all':!![]}];}_0x39ac23=_[_0xb719('0x3a')]({},_0x39ac23,_0x3c8c5b['options']);return db[_0xb719('0x2b')]['find'](_0x39ac23)[_0xb719('0x25')](handleEntityNotFound(_0x57b913,null))['then'](respondWithResult(_0x57b913,null))[_0xb719('0x44')](handleError(_0x57b913,null));};exports['create']=function(_0x45a66b,_0x236ab7){return db[_0xb719('0x2b')][_0xb719('0x47')](_0x45a66b[_0xb719('0x48')],{})[_0xb719('0x25')](respondWithResult(_0x236ab7,0xc9))[_0xb719('0x44')](handleError(_0x236ab7,null));};exports['clone']=function(_0xc10705,_0x1742b9){var _0x38cc58={'raw':![],'where':{'id':_0xc10705[_0xb719('0x46')]['id']}},_0x46405c={};_0x46405c[_0xb719('0x2c')]=_['keys'](db[_0xb719('0x2b')][_0xb719('0x49')]);_0x38cc58[_0xb719('0x32')]=_[_0xb719('0x30')](_0x46405c[_0xb719('0x2c')],qs[_0xb719('0x31')](_0xc10705['query'][_0xb719('0x31')]));_0x38cc58['attributes']=_0x38cc58[_0xb719('0x32')][_0xb719('0x33')]?_0x38cc58[_0xb719('0x32')]:_0x46405c[_0xb719('0x2c')];if(_0xc10705[_0xb719('0x2d')][_0xb719('0x41')]){_0x38cc58[_0xb719('0x4a')]=[{'all':!![]}];}_0x38cc58=_['merge']({},_0x38cc58,_0xc10705[_0xb719('0x40')]);return db[_0xb719('0x2b')][_0xb719('0x4b')](_0x38cc58)[_0xb719('0x25')](handleEntityNotFound(_0x1742b9,null))[_0xb719('0x25')](function(_0x16567a){if(_0x16567a){var _0xb1f2c2=_0x16567a['get']({'plain':!![]});_0xb1f2c2=qs[_0xb719('0x4c')](_0xb1f2c2,['id',_0xb719('0x4d'),_0xb719('0x4e'),_0xb719('0x4f')]);_0xc10705[_0xb719('0x48')]=_[_0xb719('0x4c')](_0xc10705['body'],['id',_0xb719('0x4d'),'updatedAt']);return db['sequelize'][_0xb719('0x50')](function(_0x3972a1){return db['UserProfile'][_0xb719('0x47')](_[_0xb719('0x3a')](_0xb1f2c2,_0xc10705[_0xb719('0x48')]),{'include':_0xc10705['query']['includeAll']?[{'all':!![]}]:undefined,'transaction':_0x3972a1})[_0xb719('0x25')](function(_0x1a3e03){var _0x3ade37=_0x1a3e03[_0xb719('0x51')]({'plain':!![]});return db[_0xb719('0x52')][_0xb719('0x42')]({'where':{'userProfileId':_0xc10705['params']['id']},'raw':!![]})[_0xb719('0x25')](function(_0x2bbce2){if(_0x2bbce2){return BPromise[_0xb719('0x53')](_0x2bbce2,function(_0x53deff){return new BPromise(function(_0x3dfde2,_0x18f927){if(_0x53deff[_0xb719('0x54')]===null||_0x53deff[_0xb719('0x54')]===0x1)_0x3dfde2(null);return db[_0xb719('0x55')][_0xb719('0x42')]({'where':{'sectionId':_0x53deff['id']},'raw':!![]})[_0xb719('0x25')](function(_0x3da39e){var _0x478a9c=_[_0xb719('0x3b')](_0x3da39e,function(_0x68107f){return qs['omit'](_0x68107f,['id','createdAt',_0xb719('0x4e'),_0xb719('0x56')]);});_0x3dfde2(_0x478a9c);})[_0xb719('0x44')](function(_0xc22787){_0x18f927(_0xc22787);});})['then'](function(_0x24fb33){var _0x421e47=qs[_0xb719('0x4c')](_0x53deff,['id',_0xb719('0x4d'),_0xb719('0x4e')]);_0x421e47[_0xb719('0x57')]=_0x3ade37['id'];if(_0x24fb33)_0x421e47[_0xb719('0x58')]=_0x24fb33;return _0x421e47;})[_0xb719('0x25')](function(_0x29be44){return db['UserProfileSection'][_0xb719('0x47')](_0x29be44,{'include':[{'model':db['UserProfileResource'],'as':_0xb719('0x58')}],'raw':!![],'transaction':_0x3972a1});});})[_0xb719('0x25')](function(){return _0x3ade37;});}});});});}})['then'](respondWithResult(_0x1742b9,0xc9))[_0xb719('0x44')](handleError(_0x1742b9,null));};exports[_0xb719('0x24')]=function(_0x58e2cb,_0x4c979d){if(_0x58e2cb[_0xb719('0x48')]['id']){delete _0x58e2cb['body']['id'];}return db[_0xb719('0x2b')][_0xb719('0x4b')]({'where':{'id':_0x58e2cb[_0xb719('0x46')]['id']}})['then'](handleEntityNotFound(_0x4c979d,null))['then'](saveUpdates(_0x58e2cb[_0xb719('0x48')],null))[_0xb719('0x25')](respondWithResult(_0x4c979d,null))['catch'](handleError(_0x4c979d,null));};exports['destroy']=function(_0x243cc4,_0x32fc02){return db[_0xb719('0x2b')]['find']({'where':{'id':_0x243cc4[_0xb719('0x46')]['id']}})['then'](handleEntityNotFound(_0x32fc02,null))[_0xb719('0x25')](removeEntity(_0x32fc02,null))[_0xb719('0x44')](handleError(_0x32fc02,null));};exports[_0xb719('0x59')]=function(_0x2ec4a6,_0x4739d3){return db[_0xb719('0x2b')][_0xb719('0x59')]()[_0xb719('0x25')](respondWithResult(_0x4739d3,null))[_0xb719('0x44')](handleError(_0x4739d3,null));};exports[_0xb719('0x5a')]=function(_0x41e319,_0x3862a5){var _0x104da6=_0x41e319['body'];return db['UserProfile'][_0xb719('0x4b')]({'where':{'id':_0x41e319['params']['id']}})[_0xb719('0x25')](handleEntityNotFound(_0x3862a5,null))[_0xb719('0x25')](function(_0x4194c1){if(_0x4194c1){return db[_0xb719('0x5b')]['transaction'](function(_0x3a7c6e){return db['UserProfileSection']['destroy']({'where':{'userProfileId':_0x41e319[_0xb719('0x46')]['id'],'sectionId':_[_0xb719('0x3b')](_0x104da6,function(_0x31ab3b){return _0x31ab3b['sectionId'];})},'transaction':_0x3a7c6e})['then'](function(){var _0x2883f3=_['map'](_0x104da6,function(_0x4aa201){_0x4aa201[_0xb719('0x57')]=_0x41e319[_0xb719('0x46')]['id'];return _0x4aa201;});var _0x3645c9=[];return BPromise[_0xb719('0x53')](_0x2883f3,function(_0x3f687c){return db[_0xb719('0x52')][_0xb719('0x47')](_0x3f687c,{'include':[{'model':db[_0xb719('0x55')],'as':_0xb719('0x58')}],'raw':!![],'transaction':_0x3a7c6e})[_0xb719('0x25')](function(_0x11cde7){_0x3645c9[_0xb719('0x5c')](_0x11cde7[_0xb719('0x51')]({'plain':!![]}));});})[_0xb719('0x25')](function(){return _0x3645c9;});});});}})[_0xb719('0x25')](function(_0x380a64){return _0x380a64;})[_0xb719('0x25')](respondWithResult(_0x3862a5,null))[_0xb719('0x44')](handleError(_0x3862a5,null));};exports[_0xb719('0x5d')]=function(_0x1b0b1e,_0x34633a){var _0xcd2898;return db['UserProfile'][_0xb719('0x4b')]({'where':{'id':_0x1b0b1e[_0xb719('0x46')]['id']},'attributes':['id',_0xb719('0x29')]})[_0xb719('0x25')](handleEntityNotFound(_0x34633a,null))[_0xb719('0x25')](function(_0x20acfc){if(_0x20acfc){_0xcd2898=_0x20acfc;return db['UserProfileSection'][_0xb719('0x26')]({'where':{'userProfileId':_0x1b0b1e[_0xb719('0x46')]['id'],'sectionId':_0x1b0b1e['query'][_0xb719('0x5e')]}});}})[_0xb719('0x25')](function(){return _0xcd2898;})['then'](respondWithStatusCode(_0x34633a,null))['catch'](handleError(_0x34633a,null));};exports[_0xb719('0x5f')]=function(_0xace555,_0x5d84e9){return db[_0xb719('0x2b')][_0xb719('0x4b')]({'where':{'id':_0xace555[_0xb719('0x46')]['id']}})[_0xb719('0x25')](handleEntityNotFound(_0x5d84e9,null))[_0xb719('0x25')](function(_0x4cab5f){if(_0x4cab5f){return db[_0xb719('0x5b')]['transaction'](function(_0x246f82){return db[_0xb719('0x52')][_0xb719('0x42')]({'where':{'userProfileId':_0xace555[_0xb719('0x46')]['id']},'attributes':['id'],'raw':!![]})['then'](function(_0x403f1f){if(_0x403f1f){return db[_0xb719('0x52')][_0xb719('0x26')]({'where':{'userProfileId':_0xace555[_0xb719('0x46')]['id'],'id':_[_0xb719('0x3b')](_0x403f1f,function(_0x54b775){return _0x54b775['id'];})},'transaction':_0x246f82});}})[_0xb719('0x25')](function(_0x59bc81){var _0x140147=_[_0xb719('0x3b')](_0xace555['body'],function(_0x3e2e39){_0x3e2e39[_0xb719('0x57')]=_0xace555['params']['id'];return _0x3e2e39;});return db[_0xb719('0x52')][_0xb719('0x60')](_0x140147,{'raw':!![],'transaction':_0x246f82});})[_0xb719('0x25')](function(_0x130648){var _0x286d22=_[_0xb719('0x39')](_[_0xb719('0x3b')](_0x130648,function(_0x11f177){return _0x11f177[_0xb719('0x51')]({'plain':!![]});}),{'includeAll':![]});if(_0x286d22){return db[_0xb719('0x52')][_0xb719('0x42')]({'where':{'userProfileId':_0xace555[_0xb719('0x46')]['id'],'sectionId':_[_0xb719('0x3b')](_0x286d22,function(_0x59cfd3){return _0x59cfd3[_0xb719('0x56')];})},'attributes':['id',_0xb719('0x56')],'raw':!![]})[_0xb719('0x25')](function(_0x22c819){var _0x18cc59=_[_0xb719('0x3b')](_0xace555['body'],function(_0x228781){_0x228781[_0xb719('0x57')]=_0xace555[_0xb719('0x46')]['id'];return _0x228781;});return db[_0xb719('0x55')][_0xb719('0x60')](_0x18cc59,{'raw':!![],'transaction':_0x246f82});});}})[_0xb719('0x44')](handleError(_0x5d84e9,null));});}})[_0xb719('0x25')](function(_0x33de4a){var _0x2470db=_[_0xb719('0x3b')](_0x33de4a,function(_0x30738b){return _0x30738b[_0xb719('0x51')]({'plain':!![]});});})[_0xb719('0x25')](respondWithResult(_0x5d84e9,null))[_0xb719('0x44')](handleError(_0x5d84e9,null));};exports['removeResources']=function(_0x3d301f,_0x540923,_0x2dbae8){var _0x14e75a;return db['UserProfile']['find']({'where':{'id':_0x3d301f[_0xb719('0x46')]['id']}})[_0xb719('0x25')](handleEntityNotFound(_0x540923,null))[_0xb719('0x25')](function(_0x57a93c){if(_0x57a93c){return _0x57a93c['removeResources'](_0x3d301f[_0xb719('0x2d')]['ids']);}})[_0xb719('0x25')](respondWithStatusCode(_0x540923,null))[_0xb719('0x44')](handleError(_0x540923,null));};exports[_0xb719('0x61')]=function(_0x8de7c,_0x2b3be1){var _0x5b0d1c={'raw':![],'where':{}};var _0x57a71d={};var _0x577d78={'count':0x0,'rows':[]};var _0x3f9b7b=_0x8de7c[_0xb719('0x2d')]['section'];if(typeof _0x3f9b7b===_0xb719('0x62')){throw new db['Sequelize']['ValidationError'](_0xb719('0x63'));}var _0x11f399=_0x8de7c[_0xb719('0x2d')][_0xb719('0x64')]||![];var _0x57fb4d=getQueryModels(_0x3f9b7b,_0x11f399);if(typeof _0x57fb4d[_0xb719('0x65')]===_0xb719('0x62')){throw new db[(_0xb719('0x66'))]['ValidationError'](_0xb719('0x67')+_0x3f9b7b+'\x27');}var _0x13087d=[];if(!_[_0xb719('0x68')](_0x57fb4d[_0xb719('0x69')])){_0x13087d=_0x57fb4d['parentSections'];}else{_0x13087d=[{'name':_0x3f9b7b}];}return db[_0xb719('0x2b')][_0xb719('0x6a')]({'where':{'id':_0x8de7c[_0xb719('0x46')]['id']}})[_0xb719('0x25')](handleEntityNotFound(_0x2b3be1,null))[_0xb719('0x25')](function(_0x4ab4ba){if(_0x4ab4ba){var _0x3207b5=[];for(var _0x3b196d=0x0;_0x3b196d<_0x13087d[_0xb719('0x33')];_0x3b196d++){_0x3207b5[_0xb719('0x5c')](db[_0xb719('0x52')]['findOne']({'where':{'userProfileId':_0x4ab4ba['id'],'name':_0x13087d[_0x3b196d][_0xb719('0x29')]},'raw':!![]}));}return BPromise[_0xb719('0x6b')](_0x3207b5);}})['then'](function(_0x49761f){var _0x4fa89f=_[_0xb719('0x39')](_0x49761f,function(_0x3e327c){return _0x3e327c?_0x3e327c:undefined;});var _0xaaeec8=_[_0xb719('0x39')](_0x13087d,[_0xb719('0x6c'),!![]]);var _0xa4c125=_['isEmpty'](_0x4fa89f)&&_['isEmpty'](_0xaaeec8)?null:_[_0xb719('0x6d')](_0xaaeec8,_0x4fa89f);if(_0xa4c125){var _0x35624c=[];for(var _0x22204f=0x0;_0x22204f<_0xa4c125['length'];_0x22204f++){var _0x445f10=_[_0xb719('0x4b')](_0x13087d,function(_0x2f5657){return _0xa4c125[_0x22204f]?_0x2f5657['name']===_0xa4c125[_0x22204f][_0xb719('0x29')]:null;});if(_0x445f10){if(_0xa4c125[_0x22204f][_0xb719('0x6c')]){_0x35624c['push'](getAllResources(_0x57fb4d[_0xb719('0x65')],_0xa4c125[_0x22204f]));}else{if(!_0xa4c125[_0x22204f]['autoAssociation']){_0x35624c[_0xb719('0x5c')](getAllowedResources(_0x445f10,_0xa4c125[_0x22204f]));}else{if(_0x445f10[_0xb719('0x2c')]){_0x35624c[_0xb719('0x5c')](getAllFilteredResources(_0x445f10,_0xa4c125[_0x22204f]));}}}}}return BPromise[_0xb719('0x6b')](_0x35624c);}else{return null;}})[_0xb719('0x25')](function(_0x56829d){var _0x164673=_0x56829d;var _0x291839=null;if(_0x164673){_0x291839=_0x164673['length']===0x1?_0x164673[0x0]:null;}if(_0x291839||_0x164673){var _0x285f99=db[_0x57fb4d['childModel']][_0xb719('0x49')];_0x57a71d['model']=_[_0xb719('0x2e')](_0x285f99);_0x57a71d[_0xb719('0x2d')]=_['keys'](_0x8de7c['query']);_0x57a71d['filters']=_[_0xb719('0x30')](_0x57a71d[_0xb719('0x2c')],_0x57a71d['query']);_0x5b0d1c[_0xb719('0x32')]=_[_0xb719('0x30')](_0x57a71d[_0xb719('0x2c')],qs['fields'](_0x8de7c[_0xb719('0x2d')][_0xb719('0x31')]));_0x5b0d1c[_0xb719('0x32')]=_0x5b0d1c['attributes'][_0xb719('0x33')]?_0x5b0d1c[_0xb719('0x32')]:_0x57a71d[_0xb719('0x2c')];if(!_0x8de7c['query'][_0xb719('0x6e')](_0xb719('0x34'))){_0x5b0d1c[_0xb719('0x20')]=qs['limit'](_0x8de7c[_0xb719('0x2d')][_0xb719('0x20')]);_0x5b0d1c[_0xb719('0x1f')]=qs[_0xb719('0x1f')](_0x8de7c[_0xb719('0x2d')][_0xb719('0x1f')]);}_0x5b0d1c[_0xb719('0x35')]=qs[_0xb719('0x36')](_0x8de7c[_0xb719('0x2d')][_0xb719('0x36')]);_0x5b0d1c[_0xb719('0x37')]=qs['filters'](_[_0xb719('0x38')](_0x8de7c[_0xb719('0x2d')],_0x57a71d[_0xb719('0x2f')]));var _0x35dd61=[];if(_0x291839){var _0x1addb2=_[_0xb719('0x4b')](_0x13087d,[_0xb719('0x29'),_0x291839[_0xb719('0x29')]]);if(_0x1addb2[_0xb719('0x3f')]){var _0x85ba2c={};_0x85ba2c[_0x1addb2['foreignKey']]=_0x291839[_0xb719('0x6f')];_0x35dd61['push'](_0x85ba2c);}else{_0x5b0d1c['where']['id']=_0x291839[_0xb719('0x70')];}}else{var _0x35dd61=[];for(var _0x58f669=0x0;_0x58f669<_0x164673[_0xb719('0x33')];_0x58f669++){var _0x1addb2=_[_0xb719('0x4b')](_0x13087d,[_0xb719('0x29'),_0x164673[_0x58f669][_0xb719('0x29')]]);if(_0x1addb2[_0xb719('0x3f')]){var _0x85ba2c={};if(_0x1addb2['field']==='id'){_0x85ba2c[_0x1addb2['foreignKey']]=_0x164673[_0x58f669][_0xb719('0x70')];}else{_0x85ba2c[_0x1addb2['foreignKey']]=_0x164673[_0x58f669]['resourceFields'];}_0x35dd61[_0xb719('0x5c')](_0x85ba2c);}else{if(!_0x5b0d1c[_0xb719('0x37')]['id'])_0x5b0d1c['where']['id']=[];_0x164673[_0x58f669][_0xb719('0x70')][_0xb719('0x71')](function(_0x4fba71){_0x5b0d1c[_0xb719('0x37')]['id'][_0xb719('0x5c')](_0x4fba71);});}}}if(!_['isEmpty'](_0x35dd61)){_0x5b0d1c[_0xb719('0x37')]=_[_0xb719('0x3a')](_0x5b0d1c[_0xb719('0x37')],{'$or':_0x35dd61});}if(_0x8de7c[_0xb719('0x2d')][_0xb719('0x39')]){_0x5b0d1c[_0xb719('0x37')]=_[_0xb719('0x3a')](_0x5b0d1c[_0xb719('0x37')],{'$or':_[_0xb719('0x3b')](_0x285f99,function(_0x1882d2){if(_0x1882d2[_0xb719('0x3c')][_0xb719('0x3d')]!==_0xb719('0x3e')){var _0x57944e={};_0x57944e[_0x1882d2[_0xb719('0x3f')]]={'$like':'%'+_0x8de7c['query'][_0xb719('0x39')]+'%'};return _0x57944e;}})});}_0x5b0d1c=_['merge']({},_0x5b0d1c,_0x8de7c[_0xb719('0x40')]);if(_0x291839&&!_0x291839[_0xb719('0x54')]&&_0x57fb4d['childModel']===_0xb719('0x72')){if(_0x8de7c[_0xb719('0x2d')][_0xb719('0x41')]){_0x5b0d1c[_0xb719('0x4a')]=[{'all':!![]}];}return db[_0x57fb4d[_0xb719('0x65')]]['findAll'](_0x5b0d1c)[_0xb719('0x25')](function(_0x9b183e){var _0x4a82f1=[];_0x9b183e[_0xb719('0x71')](function(_0x1532e9){var _0x1617fa;switch(_0x1532e9[_0xb719('0x73')]){case _0xb719('0x74'):_0x1617fa=_['find'](_0x291839[_0xb719('0x70')],function(_0x4fb164){return _0x4fb164['id']===_0x1532e9[_0xb719('0x75')]&&_0x4fb164[_0xb719('0x3c')]===_0xb719('0x76');});break;case _0xb719('0x77'):_0x1617fa=_['find'](_0x291839['resourceIds'],function(_0x830156){return _0x830156['id']===_0x1532e9[_0xb719('0x75')]&&_0x830156[_0xb719('0x3c')]===_0xb719('0x78');});break;}if(_0x1617fa)_0x4a82f1[_0xb719('0x5c')](_0x1532e9);});_0x577d78[_0xb719('0x1e')]=_0x4a82f1[_0xb719('0x33')];_0x577d78[_0xb719('0x43')]=_0x4a82f1;return _0x577d78;});}else{return db[_0x57fb4d[_0xb719('0x65')]][_0xb719('0x1e')]({'where':_0x5b0d1c[_0xb719('0x37')]})[_0xb719('0x25')](function(_0x11be16){_0x577d78['count']=_0x11be16;if(_0x8de7c[_0xb719('0x2d')][_0xb719('0x41')]){if(_0x57fb4d[_0xb719('0x65')]===_0xb719('0x79')){_0x5b0d1c['include']=[{'model':db[_0xb719('0x7a')],'as':_0xb719('0x7b'),'attributes':['id','name',_0xb719('0x7c')],'required':_0x8de7c[_0xb719('0x2d')][_0xb719('0x7d')]?!![]:![]},{'model':db[_0xb719('0x7a')],'as':_0xb719('0x7e'),'attributes':['id','name',_0xb719('0x7c')],'through':_0x8de7c[_0xb719('0x2d')]['tag']?{'attributes':[],'where':{'TagId':_0x8de7c[_0xb719('0x2d')][_0xb719('0x7d')]||undefined}}:{},'required':_0x8de7c[_0xb719('0x2d')][_0xb719('0x7d')]?!![]:![]}];}else{_0x5b0d1c[_0xb719('0x4a')]=[{'all':!![]}];}}return db[_0x57fb4d[_0xb719('0x65')]][_0xb719('0x42')](_0x5b0d1c);})['then'](function(_0x258aaf){_0x577d78[_0xb719('0x43')]=_0x258aaf;return _0x577d78;});}}else{return _0x577d78;}})['then'](respondWithFilteredResult(_0x2b3be1,_0x5b0d1c))[_0xb719('0x44')](handleError(_0x2b3be1,null));};function getAllResources(_0x4cef95,_0x5911c1){return new BPromise(function(_0x53f636,_0xd87122){if(_0x5911c1){var _0x84e98c=_0x5911c1['filter']?{[_0x5911c1['filter'][_0xb719('0x3f')]]:_0x5911c1[_0xb719('0x39')][_0xb719('0x7f')]}:undefined;return db[_0x4cef95][_0xb719('0x42')]({'where':_0x84e98c,'raw':!![]})[_0xb719('0x25')](function(_0x434e29){_0x5911c1[_0xb719('0x70')]=_[_0xb719('0x3b')](_0x434e29,'id');_0x53f636(_0x5911c1);})[_0xb719('0x44')](function(_0x5cf987){_0xd87122(_0x5cf987);});}else{_0x53f636(null);}});}function getAllFilteredResources(_0x2bd1ed,_0x26b401){return new BPromise(function(_0x16b749,_0x470614){var _0x3576b4=_0x2bd1ed[_0xb719('0x39')]?{[_0x2bd1ed[_0xb719('0x39')]['field']]:_0x2bd1ed[_0xb719('0x39')][_0xb719('0x7f')]}:undefined;return db[_0x2bd1ed[_0xb719('0x2c')]]['findAll']({'where':_0x3576b4,'raw':!![]})['then'](function(_0x514736){_0x26b401[_0xb719('0x6f')]=_[_0xb719('0x3b')](_0x514736,function(_0x2bef3e){return _0x2bef3e[_0xb719('0x29')];});_0x16b749(_0x26b401);})[_0xb719('0x44')](function(_0x1285d4){_0x470614(_0x1285d4);});});}function getAllowedResources(_0x22779b,_0x202bb7){return new BPromise(function(_0x5587ca,_0xbe5043){if(_0x202bb7){return db[_0xb719('0x55')]['findAll']({'where':{'sectionId':_0x202bb7['id']},'raw':!![]})[_0xb719('0x25')](function(_0xfb7b80){if(_0x22779b[_0xb719('0x3f')]&&_0x22779b[_0xb719('0x3f')]!=='id'){_0x202bb7[_0xb719('0x6f')]=_['map'](_0xfb7b80,function(_0x29d971){return _0x29d971[_0x22779b[_0xb719('0x3f')]];});}else{if(_0x22779b[_0xb719('0x65')]===_0xb719('0x72')){_0x202bb7[_0xb719('0x70')]=_[_0xb719('0x3b')](_0xfb7b80,function(_0x1f3e5f){return{'id':_0x1f3e5f[_0xb719('0x80')],'type':_0x1f3e5f[_0xb719('0x3c')]};});}else{_0x202bb7[_0xb719('0x70')]=_['map'](_0xfb7b80,function(_0x16c579){return _0x16c579['resourceId'];});}}_0x5587ca(_0x202bb7);})[_0xb719('0x44')](function(_0x523f04){_0xbe5043(_0x523f04);});}else{_0x5587ca(null);}});}function getQueryModels(_0x51c4ae,_0x404fc8){var _0x76acc2=_0x51c4ae[_0xb719('0x81')]();var _0x12fbcb={'childModel':undefined,'parentSections':[]};switch(_0x76acc2){case _0xb719('0x82'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x83');break;case _0xb719('0x84'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x85');break;case _0xb719('0x86'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x87');_0x12fbcb[_0xb719('0x69')]=[{'name':_0xb719('0x88'),'field':'name','foreignKey':_0xb719('0x89')}];break;case _0xb719('0x8a'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x8b');break;case _0xb719('0x8c'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x79');_0x12fbcb[_0xb719('0x69')]=[{'name':_0xb719('0x8d'),'field':'id','foreignKey':_0xb719('0x8e')}];break;case'lists':_0x12fbcb[_0xb719('0x65')]=_0xb719('0x8f');break;case _0xb719('0x90'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x91');break;case _0xb719('0x92'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x93');break;case _0xb719('0x94'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x95');break;case'chatwebsites':_0x12fbcb[_0xb719('0x65')]='ChatWebsite';break;case'faxqueues':_0x12fbcb[_0xb719('0x65')]='FaxQueue';break;case _0xb719('0x96'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x97');break;case _0xb719('0x98'):case'internalroutes':case _0xb719('0x99'):_0x12fbcb[_0xb719('0x65')]='VoiceExtension';break;case _0xb719('0x9a'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x9b');break;case'voicemails':_0x12fbcb['childModel']=_0xb719('0x9c');break;case _0xb719('0x9d'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x9e');_0x12fbcb['parentSections']=[{'name':'Agents','field':_0xb719('0x29'),'foreignKey':_0xb719('0x9f'),'model':_0xb719('0xa0'),'filter':{'field':_0xb719('0xa1'),'value':[_0xb719('0xa2')]}},{'name':_0xb719('0xa3'),'field':_0xb719('0x29'),'foreignKey':_0xb719('0x9f'),'model':_0xb719('0xa0'),'filter':{'field':_0xb719('0xa1'),'value':[_0xb719('0xa4')]}},{'name':_0xb719('0xa5'),'field':_0xb719('0x29'),'foreignKey':_0xb719('0xa6'),'model':'VoiceQueue','filter':{'field':_0xb719('0x3c'),'value':['inbound']}},{'name':'QueueCampaigns','field':_0xb719('0x29'),'foreignKey':_0xb719('0xa6'),'model':_0xb719('0xa7'),'filter':{'field':_0xb719('0x3c'),'value':[_0xb719('0xa8')]}}];break;case'musiconholds':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xa9');break;case'chanspies':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xaa');break;case _0xb719('0xab'):_0x12fbcb['childModel']='VoicePrefix';break;case _0xb719('0xac'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xad');break;case'mailqueues':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xae');break;case _0xb719('0xaf'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xb0');break;case _0xb719('0xb1'):_0x12fbcb[_0xb719('0x65')]='MailSubstatus';break;case'openchannelqueues':_0x12fbcb['childModel']='OpenchannelQueue';break;case _0xb719('0xb2'):_0x12fbcb[_0xb719('0x65')]='OpenchannelAccount';break;case'smsqueues':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xb3');break;case'smsaccounts':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xb4');break;case _0xb719('0xb5'):_0x12fbcb[_0xb719('0x65')]='Team';break;case _0xb719('0xb6'):case _0xb719('0xb7'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xa7');if(_0x404fc8){_0x12fbcb[_0xb719('0x69')]=[{'name':_0xb719('0xa5')},{'name':_0xb719('0xb8')}];}break;case _0xb719('0xb9'):case'agents':case _0xb719('0xba'):_0x12fbcb['childModel']='User';if(_0x404fc8){_0x12fbcb[_0xb719('0x69')]=[{'name':_0xb719('0xbb'),'filter':{'field':_0xb719('0xa1'),'value':[_0xb719('0xbc'),_0xb719('0xbd')]},'ignore':!![]},{'name':_0xb719('0xbe')},{'name':_0xb719('0xa3')}];}break;case _0xb719('0xbf'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xc0');break;case _0xb719('0xc1'):_0x12fbcb[_0xb719('0x65')]='SalesforceAccount';break;case'freshdeskaccounts':_0x12fbcb[_0xb719('0x65')]='FreshdeskAccount';break;case _0xb719('0xc2'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xc3');break;case _0xb719('0xc4'):_0x12fbcb[_0xb719('0x65')]='DeskAccount';break;case _0xb719('0xc5'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xc6');break;case _0xb719('0xc7'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xa0');break;case _0xb719('0xc8'):_0x12fbcb['childModel']=_0xb719('0xc9');break;case'dispositions':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xca');break;case _0xb719('0xcb'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xcc');break;case _0xb719('0xcd'):_0x12fbcb['childModel']=_0xb719('0xce');break;case _0xb719('0xcf'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xd0');break;case _0xb719('0xd1'):_0x12fbcb['childModel']=_0xb719('0xd2');break;case'sounds':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xd3');break;case _0xb719('0xd4'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0x7a');break;case _0xb719('0xd5'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xd6');break;case _0xb719('0xd7'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xd8');break;case'trunks':_0x12fbcb[_0xb719('0x65')]=_0xb719('0xd9');break;case _0xb719('0xda'):_0x12fbcb[_0xb719('0x65')]=_0xb719('0xdb');break;case'plugins':_0x12fbcb['childModel']=_0xb719('0xdc');break;case _0xb719('0xdd'):_0x12fbcb[_0xb719('0x65')]='AnalyticExtractedReport';_0x12fbcb[_0xb719('0x69')]=[{'name':_0xb719('0xde'),'field':'id','foreignKey':_0xb719('0x75')}];break;case _0xb719('0xdf'):_0x12fbcb['childModel']=_0xb719('0xe0');break;default:return _0x12fbcb;}return _0x12fbcb;}