4312d96c09aa2d019ae93e6017ef7997e3aa34d4
[motion-next.git] / server / api / analyticMetric / analyticMetric.controller.js
1 const a21_0x5eeb=['sort','key','length','status','findAll','merge','send','UserProfileResource','create','intersection','autoAssociation','where','attributes','map','name','keys','offset','includeAll','update','role','type','Metrics','UserProfileSection','params','destroy','findOne','options','sendStatus','then','body','AnalyticMetric','filters','model','index','user','catch','undefined','filter','json','userProfileId','include','../../components/parsers/qs','fields','pick','show','lodash','limit','query','count','rows','error','rawAttributes','order','../../config/logger','get'];(function(_0x48bddf,_0x5eeb6b){const _0x1c8609=function(_0xc693f3){while(--_0xc693f3){_0x48bddf['push'](_0x48bddf['shift']());}};_0x1c8609(++_0x5eeb6b);}(a21_0x5eeb,0x12f));const a21_0x1c86=function(_0x48bddf,_0x5eeb6b){_0x48bddf=_0x48bddf-0x0;let _0x1c8609=a21_0x5eeb[_0x48bddf];return _0x1c8609;};const _0x2ecfa9=a21_0x1c86;'use strict';const _=require(_0x2ecfa9('0x11')),qs=require(_0x2ecfa9('0xd')),logger=require(_0x2ecfa9('0x19'))('api'),db=require('../../mysqldb')['db'],{Op}=require('sequelize');function respondWithResult(_0xc693f3,_0x40dd2f){return _0x40dd2f=_0x40dd2f||0xc8,function(_0x3af774){const _0x437229=a21_0x1c86;if(_0x3af774)return _0xc693f3[_0x437229('0x1e')](_0x40dd2f)[_0x437229('0xa')](_0x3af774);};}function respondWithFilteredResult(_0x2de374,_0x3d6f4d){return function(_0x7bc86a){const _0x2b470c=a21_0x1c86;if(_0x7bc86a){const _0x464906=_0x7bc86a[_0x2b470c('0x14')],_0x3c84b2=_0x3d6f4d[_0x2b470c('0x2b')];let _0x477bcc=_0x3d6f4d[_0x2b470c('0x2b')]+_0x3d6f4d[_0x2b470c('0x12')],_0x18ff61;return _0x477bcc>=_0x464906?(_0x477bcc=_0x464906,_0x18ff61=0xc8):_0x18ff61=0xce,_0x2de374['status'](_0x18ff61),_0x2de374['set']('Content-Range',_0x3c84b2+'-'+_0x477bcc+'/'+_0x464906)[_0x2b470c('0xa')](_0x7bc86a);}return null;};}function saveUpdates(_0x2170b9){return function(_0x3e0b19){const _0x89e776=a21_0x1c86;if(_0x3e0b19)return _0x3e0b19[_0x89e776('0x2d')](_0x2170b9)[_0x89e776('0x0')](function(_0x35ac59){return _0x35ac59;});return null;};}function removeEntity(_0x42b647){return function(_0x35e5b4){const _0x3b06b5=a21_0x1c86;if(_0x35e5b4)return _0x35e5b4[_0x3b06b5('0x33')]()[_0x3b06b5('0x0')](function(){const _0x467441=_0x3b06b5,_0xdde659=_0x35e5b4[_0x467441('0x1a')]({'plain':!![]}),_0x235674=_0x467441('0x30');return db[_0x467441('0x22')][_0x467441('0x33')]({'where':{'type':_0x235674,'resourceId':_0xdde659['id']}})[_0x467441('0x0')](function(){return _0x35e5b4;});})[_0x3b06b5('0x0')](function(){const _0x1ebdab=_0x3b06b5;_0x42b647[_0x1ebdab('0x1e')](0xcc)['end']();});};}function handleEntityNotFound(_0xae18f2){return function(_0x37a776){const _0x1fe041=a21_0x1c86;return!_0x37a776&&_0xae18f2[_0x1fe041('0x36')](0x194),_0x37a776;};}function handleError(_0x3ef298,_0x1ec6a1){return _0x1ec6a1=_0x1ec6a1||0x1f4,function(_0x118b60){const _0x3244e9=a21_0x1c86;logger[_0x3244e9('0x16')](_0x118b60['stack']),_0x118b60['name']&&delete _0x118b60[_0x3244e9('0x29')],_0x3ef298[_0x3244e9('0x1e')](_0x1ec6a1)[_0x3244e9('0x21')](_0x118b60);};}exports[_0x2ecfa9('0x5')]=function(_0x2722b0,_0x2eccaa){const _0x21d040=_0x2ecfa9;let _0x4db6b3={};const _0x1d6380={},_0x4f88e2={'count':0x0,'rows':[]},_0x2e1c3e=_['map'](db[_0x21d040('0x2')][_0x21d040('0x17')],function(_0x132d89){const _0x5ae64b=_0x21d040;return{'name':_0x132d89['fieldName'],'type':_0x132d89[_0x5ae64b('0x2f')][_0x5ae64b('0x1c')]};});_0x1d6380[_0x21d040('0x4')]=_['map'](_0x2e1c3e,_0x21d040('0x29')),_0x1d6380['query']=_[_0x21d040('0x2a')](_0x2722b0[_0x21d040('0x13')]),_0x1d6380[_0x21d040('0x3')]=_[_0x21d040('0x24')](_0x1d6380[_0x21d040('0x4')],_0x1d6380[_0x21d040('0x13')]),_0x4db6b3['attributes']=_[_0x21d040('0x24')](_0x1d6380[_0x21d040('0x4')],qs[_0x21d040('0xe')](_0x2722b0[_0x21d040('0x13')][_0x21d040('0xe')])),_0x4db6b3[_0x21d040('0x27')]=_0x4db6b3[_0x21d040('0x27')][_0x21d040('0x1d')]?_0x4db6b3[_0x21d040('0x27')]:_0x1d6380['model'];typeof _0x2722b0['query']['nolimit']===_0x21d040('0x8')&&(_0x4db6b3['limit']=qs['limit'](_0x2722b0['query']['limit']),_0x4db6b3['offset']=qs[_0x21d040('0x2b')](_0x2722b0[_0x21d040('0x13')][_0x21d040('0x2b')]));_0x4db6b3[_0x21d040('0x18')]=qs[_0x21d040('0x1b')](_0x2722b0[_0x21d040('0x13')][_0x21d040('0x1b')]),_0x4db6b3[_0x21d040('0x26')]=qs[_0x21d040('0x3')](_[_0x21d040('0xf')](_0x2722b0['query'],_0x1d6380['filters']),_0x2e1c3e);_0x2722b0[_0x21d040('0x13')][_0x21d040('0x9')]&&(_0x4db6b3[_0x21d040('0x26')]=_[_0x21d040('0x20')](_0x4db6b3[_0x21d040('0x26')],{[Op['or']]:_[_0x21d040('0x28')](_0x2e1c3e,function(_0x51a180){const _0x5c6799=_0x21d040;if(_0x51a180[_0x5c6799('0x2f')]!=='VIRTUAL'){const _0x344951={};return _0x344951[_0x51a180[_0x5c6799('0x29')]]={[Op['like']]:'%'+_0x2722b0['query']['filter']+'%'},_0x344951;}})}));_0x4db6b3=_[_0x21d040('0x20')]({},_0x4db6b3,_0x2722b0[_0x21d040('0x35')]);const _0x4c5ec5={'where':_0x4db6b3[_0x21d040('0x26')]};return db[_0x21d040('0x2')]['count'](_0x4c5ec5)['then'](function(_0x5aca1b){const _0x598b4b=_0x21d040;return _0x4f88e2['count']=_0x5aca1b,_0x2722b0['query'][_0x598b4b('0x2c')]&&(_0x4db6b3['include']=[{'all':!![]}]),db[_0x598b4b('0x2')][_0x598b4b('0x1f')](_0x4db6b3);})[_0x21d040('0x0')](function(_0x144ba9){const _0x2f19a0=_0x21d040;return _0x4f88e2[_0x2f19a0('0x15')]=_0x144ba9,_0x4f88e2;})[_0x21d040('0x0')](respondWithFilteredResult(_0x2eccaa,_0x4db6b3))[_0x21d040('0x7')](handleError(_0x2eccaa,null));},exports[_0x2ecfa9('0x10')]=function(_0x2052eb,_0x50ebcf){const _0x4fe896=_0x2ecfa9;let _0x22c98f={'raw':!![],'where':{'id':_0x2052eb[_0x4fe896('0x32')]['id']}};const _0x315254={};return _0x315254[_0x4fe896('0x4')]=_['keys'](db[_0x4fe896('0x2')][_0x4fe896('0x17')]),_0x315254[_0x4fe896('0x13')]=_['keys'](_0x2052eb[_0x4fe896('0x13')]),_0x315254[_0x4fe896('0x3')]=_[_0x4fe896('0x24')](_0x315254[_0x4fe896('0x4')],_0x315254[_0x4fe896('0x13')]),_0x22c98f[_0x4fe896('0x27')]=_[_0x4fe896('0x24')](_0x315254['model'],qs[_0x4fe896('0xe')](_0x2052eb[_0x4fe896('0x13')]['fields'])),_0x22c98f['attributes']=_0x22c98f['attributes']['length']?_0x22c98f[_0x4fe896('0x27')]:_0x315254[_0x4fe896('0x4')],_0x2052eb[_0x4fe896('0x13')][_0x4fe896('0x2c')]&&(_0x22c98f[_0x4fe896('0xc')]=[{'all':!![]}]),_0x22c98f=_[_0x4fe896('0x20')]({},_0x22c98f,_0x2052eb[_0x4fe896('0x35')]),db[_0x4fe896('0x2')]['findOne'](_0x22c98f)[_0x4fe896('0x0')](handleEntityNotFound(_0x50ebcf,null))[_0x4fe896('0x0')](respondWithResult(_0x50ebcf,null))[_0x4fe896('0x7')](handleError(_0x50ebcf,null));},exports[_0x2ecfa9('0x23')]=function(_0x5cfbf4,_0x5c8541){const _0x3721ea=_0x2ecfa9;return db[_0x3721ea('0x2')]['create'](_0x5cfbf4[_0x3721ea('0x1')],{})['then'](function(_0x2df9ea){const _0x4478be=_0x3721ea,_0x223ec1=_0x5cfbf4[_0x4478be('0x6')][_0x4478be('0x1a')]({'plain':!![]});if(!_0x223ec1)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x223ec1[_0x4478be('0x2e')]===_0x4478be('0x6')){const _0x5323a9=_0x2df9ea[_0x4478be('0x1a')]({'plain':!![]}),_0x1f90f6=_0x4478be('0x30');return db[_0x4478be('0x31')][_0x4478be('0x34')]({'where':{'name':_0x1f90f6,'userProfileId':_0x223ec1[_0x4478be('0xb')]},'raw':!![]})['then'](function(_0xd6dbd3){const _0x24b8e0=_0x4478be;return _0xd6dbd3&&_0xd6dbd3[_0x24b8e0('0x25')]===0x0?db['UserProfileResource'][_0x24b8e0('0x23')]({'name':_0x5323a9['name'],'resourceId':_0x5323a9['id'],'type':_0xd6dbd3[_0x24b8e0('0x29')],'sectionId':_0xd6dbd3['id']},{})[_0x24b8e0('0x0')](function(){return _0x2df9ea;}):_0x2df9ea;})['catch'](function(_0xd396ce){const _0x4266c2=_0x4478be;logger[_0x4266c2('0x16')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0xd396ce);throw _0xd396ce;});}return _0x2df9ea;})[_0x3721ea('0x0')](respondWithResult(_0x5c8541,0xc9))[_0x3721ea('0x7')](handleError(_0x5c8541,null));},exports[_0x2ecfa9('0x2d')]=function(_0x9f3176,_0x2d5d9e){const _0x2b9df9=_0x2ecfa9;return _0x9f3176[_0x2b9df9('0x1')]['id']&&delete _0x9f3176[_0x2b9df9('0x1')]['id'],db[_0x2b9df9('0x2')][_0x2b9df9('0x34')]({'where':{'id':_0x9f3176[_0x2b9df9('0x32')]['id']}})[_0x2b9df9('0x0')](handleEntityNotFound(_0x2d5d9e,null))[_0x2b9df9('0x0')](saveUpdates(_0x9f3176[_0x2b9df9('0x1')],null))[_0x2b9df9('0x0')](respondWithResult(_0x2d5d9e,null))[_0x2b9df9('0x7')](handleError(_0x2d5d9e,null));},exports[_0x2ecfa9('0x33')]=function(_0x406baf,_0x4f92c1){const _0x1a5faa=_0x2ecfa9;return db['AnalyticMetric'][_0x1a5faa('0x34')]({'where':{'id':_0x406baf[_0x1a5faa('0x32')]['id']}})[_0x1a5faa('0x0')](handleEntityNotFound(_0x4f92c1,null))[_0x1a5faa('0x0')](removeEntity(_0x4f92c1,null))['catch'](handleError(_0x4f92c1,null));};