Built motion from commit f7863d46.|2.5.41
[motion2.git] / server / api / intFreshsalesAccount / intFreshsalesAccount.controller.js
index 2888cad..7436ff5 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x799d=['channel','Descriptions','getDescriptions','FreshsalesField','getFields','findOne','remoteUri','apiKey','username','slice','substring','lastIndexOf','GET','%s%s','/api/selector/owners','users','email','Requested\x20Resource\x20not\x20Found','statusCode','stringify','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','jayson/promise','test','Sequelize','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','FreshsalesAccount,\x20%s,\x20%s','debug','FreshsalesAccount,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','message','info','end','json','offset','limit','status','set','Content-Range','apply','reject','save','update','destroy','sendStatus','name','send','FreshsalesAccount','rawAttributes','fieldName','type','model','map','keys','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','where','filter','merge','VIRTUAL','options','count','includeAll','findAll','catch','show','params','length','include','find','create','body','getConfigurations','FreshsalesConfiguration','order','addConfiguration','AccountId','Subjects','getSubjects'];(function(_0x565000,_0x3860cd){var _0x1e6363=function(_0x1c7a9e){while(--_0x1c7a9e){_0x565000['push'](_0x565000['shift']());}};_0x1e6363(++_0x3860cd);}(_0x799d,0x16d));var _0xd799=function(_0x27af45,_0x1b57aa){_0x27af45=_0x27af45-0x0;var _0x18df21=_0x799d[_0x27af45];return _0x18df21;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xd799('0x0'));var rimraf=require(_0xd799('0x1'));var zipdir=require(_0xd799('0x2'));var jsonpatch=require(_0xd799('0x3'));var rp=require(_0xd799('0x4'));var moment=require(_0xd799('0x5'));var BPromise=require(_0xd799('0x6'));var Mustache=require(_0xd799('0x7'));var util=require(_0xd799('0x8'));var path=require('path');var sox=require(_0xd799('0x9'));var csv=require(_0xd799('0xa'));var ejs=require(_0xd799('0xb'));var fs=require('fs');var _=require(_0xd799('0xc'));var squel=require(_0xd799('0xd'));var crypto=require(_0xd799('0xe'));var jsforce=require(_0xd799('0xf'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xd799('0x10'));var Papa=require(_0xd799('0x11'));var Redis=require(_0xd799('0x12'));var authService=require(_0xd799('0x13'));var qs=require(_0xd799('0x14'));var as=require(_0xd799('0x15'));var hardwareService=require(_0xd799('0x16'));var logger=require(_0xd799('0x17'))(_0xd799('0x18'));var utils=require('../../config/utils');var config=require(_0xd799('0x19'));var db=require(_0xd799('0x1a'))['db'];var integrations=require('../../components/integrations/configuration');var jayson=require(_0xd799('0x1b'));var client=jayson['client']['http']({'port':0x232a});function checkPasswordPattern(_0x2b880b,_0x45210e,_0x47aadc){if(_0x47aadc){var _0x343e56=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x343e56[_0xd799('0x1c')](_0x45210e)){return _0x2b880b;}else{throw new db[(_0xd799('0x1d'))][(_0xd799('0x1e'))](_0xd799('0x1f'));}}else{return _0x2b880b;}}function respondWithRpcPromise(_0x423b95,_0x20feba,_0x11f138,_0x597bd0){return new BPromise(function(_0x32c95b,_0x3e21de){var _0x3c2955=_0x597bd0||client;return _0x3c2955[_0xd799('0x20')](_0x423b95,_0x11f138)[_0xd799('0x21')](function(_0x163a6d){logger['info'](_0xd799('0x22'),_0x20feba,'request\x20sent');logger[_0xd799('0x23')](_0xd799('0x24'),_0x20feba,_0xd799('0x25'),JSON['stringify'](_0x163a6d));if(_0x163a6d[_0xd799('0x26')]){if(_0x163a6d[_0xd799('0x26')][_0xd799('0x27')]===0x1f4){logger[_0xd799('0x26')](_0xd799('0x22'),_0x20feba,_0x163a6d['error']['message']);return _0x3e21de(_0x163a6d['error'][_0xd799('0x28')]);}logger[_0xd799('0x26')](_0xd799('0x22'),_0x20feba,_0x163a6d[_0xd799('0x26')][_0xd799('0x28')]);return _0x32c95b(_0x163a6d[_0xd799('0x26')][_0xd799('0x28')]);}else{logger[_0xd799('0x29')](_0xd799('0x22'),_0x20feba,_0xd799('0x25'));_0x32c95b(_0x163a6d['result'][_0xd799('0x28')]);}})['catch'](function(_0x1da230){logger[_0xd799('0x26')](_0xd799('0x22'),_0x20feba,_0x1da230);_0x3e21de(_0x1da230);});});}function respondWithStatusCode(_0x2cc0b4,_0x46d17e){_0x46d17e=_0x46d17e||0xcc;return function(_0x88ee82){if(_0x88ee82){return _0x2cc0b4['sendStatus'](_0x46d17e);}return _0x2cc0b4['status'](_0x46d17e)[_0xd799('0x2a')]();};}function respondWithResult(_0x3b94c3,_0x47e730){_0x47e730=_0x47e730||0xc8;return function(_0x1b46c0){if(_0x1b46c0){return _0x3b94c3['status'](_0x47e730)[_0xd799('0x2b')](_0x1b46c0);}};}function respondWithFilteredResult(_0xc1df0b,_0x2f1d17){return function(_0x1291c9){if(_0x1291c9){var _0x75f5a2=_0x1291c9['count'],_0x27ecbe=_0x2f1d17[_0xd799('0x2c')],_0x542ce1=_0x2f1d17[_0xd799('0x2c')]+_0x2f1d17[_0xd799('0x2d')],_0x59a67a;if(_0x542ce1>=_0x75f5a2){_0x542ce1=_0x75f5a2;_0x59a67a=0xc8;}else{_0x59a67a=0xce;}_0xc1df0b[_0xd799('0x2e')](_0x59a67a);return _0xc1df0b[_0xd799('0x2f')](_0xd799('0x30'),_0x27ecbe+'-'+_0x542ce1+'/'+_0x75f5a2)[_0xd799('0x2b')](_0x1291c9);}return null;};}function patchUpdates(_0x28e693){return function(_0x2e41c9){try{jsonpatch[_0xd799('0x31')](_0x2e41c9,_0x28e693,!![]);}catch(_0x486267){return BPromise[_0xd799('0x32')](_0x486267);}return _0x2e41c9[_0xd799('0x33')]();};}function saveUpdates(_0x5c679a,_0x3b0923){return function(_0x19f044){if(_0x19f044){return _0x19f044[_0xd799('0x34')](_0x5c679a)[_0xd799('0x21')](function(_0x24706b){return _0x24706b;});}return null;};}function removeEntity(_0x17f779,_0x541471){return function(_0x32f733){if(_0x32f733){return _0x32f733[_0xd799('0x35')]()['then'](function(){_0x17f779['status'](0xcc)[_0xd799('0x2a')]();});}};}function handleEntityNotFound(_0x389e56,_0x70b0aa){return function(_0x272153){if(!_0x272153){_0x389e56[_0xd799('0x36')](0x194);}return _0x272153;};}function handleError(_0x456a59,_0x1c4f74){_0x1c4f74=_0x1c4f74||0x1f4;return function(_0x206639){logger[_0xd799('0x26')](_0x206639['stack']);if(_0x206639[_0xd799('0x37')]){delete _0x206639[_0xd799('0x37')];}_0x456a59[_0xd799('0x2e')](_0x1c4f74)[_0xd799('0x38')](_0x206639);};}exports['index']=function(_0xb503e4,_0x52f411){var _0x57bd64={},_0x342055={},_0x164809={'count':0x0,'rows':[]};var _0xf52d6a=_['map'](db[_0xd799('0x39')][_0xd799('0x3a')],function(_0x295393){return{'name':_0x295393[_0xd799('0x3b')],'type':_0x295393[_0xd799('0x3c')]['key']};});_0x342055[_0xd799('0x3d')]=_[_0xd799('0x3e')](_0xf52d6a,_0xd799('0x37'));_0x342055['query']=_[_0xd799('0x3f')](_0xb503e4[_0xd799('0x40')]);_0x342055[_0xd799('0x41')]=_[_0xd799('0x42')](_0x342055[_0xd799('0x3d')],_0x342055['query']);_0x57bd64[_0xd799('0x43')]=_['intersection'](_0x342055[_0xd799('0x3d')],qs[_0xd799('0x44')](_0xb503e4[_0xd799('0x40')][_0xd799('0x44')]));_0x57bd64[_0xd799('0x43')]=_0x57bd64[_0xd799('0x43')]['length']?_0x57bd64[_0xd799('0x43')]:_0x342055[_0xd799('0x3d')];if(!_0xb503e4[_0xd799('0x40')][_0xd799('0x45')](_0xd799('0x46'))){_0x57bd64[_0xd799('0x2d')]=qs[_0xd799('0x2d')](_0xb503e4[_0xd799('0x40')]['limit']);_0x57bd64[_0xd799('0x2c')]=qs[_0xd799('0x2c')](_0xb503e4['query'][_0xd799('0x2c')]);}_0x57bd64['order']=qs['sort'](_0xb503e4['query'][_0xd799('0x47')]);_0x57bd64[_0xd799('0x48')]=qs[_0xd799('0x41')](_['pick'](_0xb503e4[_0xd799('0x40')],_0x342055[_0xd799('0x41')]));if(_0xb503e4['query'][_0xd799('0x49')]){_0x57bd64[_0xd799('0x48')]=_[_0xd799('0x4a')](_0x57bd64['where'],{'$or':_[_0xd799('0x3e')](_0xf52d6a,function(_0x2985b7){if(_0x2985b7['type']!==_0xd799('0x4b')){var _0x4e794f={};_0x4e794f[_0x2985b7['name']]={'$like':'%'+_0xb503e4[_0xd799('0x40')][_0xd799('0x49')]+'%'};return _0x4e794f;}})});}_0x57bd64=_[_0xd799('0x4a')]({},_0x57bd64,_0xb503e4[_0xd799('0x4c')]);var _0x3872b3={'where':_0x57bd64['where']};return db[_0xd799('0x39')][_0xd799('0x4d')](_0x3872b3)[_0xd799('0x21')](function(_0x579e4c){_0x164809['count']=_0x579e4c;if(_0xb503e4[_0xd799('0x40')][_0xd799('0x4e')]){_0x57bd64['include']=[{'all':!![]}];}return db[_0xd799('0x39')][_0xd799('0x4f')](_0x57bd64);})[_0xd799('0x21')](function(_0x493b6a){_0x164809['rows']=_0x493b6a;return _0x164809;})[_0xd799('0x21')](respondWithFilteredResult(_0x52f411,_0x57bd64))[_0xd799('0x50')](handleError(_0x52f411,null));};exports[_0xd799('0x51')]=function(_0x1de5fc,_0x1d9b5c){var _0x960c99={'raw':![],'where':{'id':_0x1de5fc[_0xd799('0x52')]['id']}},_0x39460e={};_0x39460e['model']=_[_0xd799('0x3f')](db[_0xd799('0x39')]['rawAttributes']);_0x39460e[_0xd799('0x40')]=_[_0xd799('0x3f')](_0x1de5fc[_0xd799('0x40')]);_0x39460e[_0xd799('0x41')]=_[_0xd799('0x42')](_0x39460e[_0xd799('0x3d')],_0x39460e[_0xd799('0x40')]);_0x960c99[_0xd799('0x43')]=_[_0xd799('0x42')](_0x39460e[_0xd799('0x3d')],qs[_0xd799('0x44')](_0x1de5fc[_0xd799('0x40')][_0xd799('0x44')]));_0x960c99[_0xd799('0x43')]=_0x960c99[_0xd799('0x43')][_0xd799('0x53')]?_0x960c99['attributes']:_0x39460e[_0xd799('0x3d')];if(_0x1de5fc[_0xd799('0x40')][_0xd799('0x4e')]){_0x960c99[_0xd799('0x54')]=[{'all':!![]}];}_0x960c99=_[_0xd799('0x4a')]({},_0x960c99,_0x1de5fc[_0xd799('0x4c')]);return db['FreshsalesAccount'][_0xd799('0x55')](_0x960c99)[_0xd799('0x21')](handleEntityNotFound(_0x1d9b5c,null))[_0xd799('0x21')](respondWithResult(_0x1d9b5c,null))[_0xd799('0x50')](handleError(_0x1d9b5c,null));};exports[_0xd799('0x56')]=function(_0x28380e,_0x535fab){return db['FreshsalesAccount'][_0xd799('0x56')](_0x28380e[_0xd799('0x57')],{})[_0xd799('0x21')](respondWithResult(_0x535fab,0xc9))['catch'](handleError(_0x535fab,null));};exports['update']=function(_0x57f984,_0x29f781){if(_0x57f984['body']['id']){delete _0x57f984[_0xd799('0x57')]['id'];}return db[_0xd799('0x39')][_0xd799('0x55')]({'where':{'id':_0x57f984[_0xd799('0x52')]['id']}})[_0xd799('0x21')](handleEntityNotFound(_0x29f781,null))[_0xd799('0x21')](saveUpdates(_0x57f984[_0xd799('0x57')],null))[_0xd799('0x21')](respondWithResult(_0x29f781,null))['catch'](handleError(_0x29f781,null));};exports['destroy']=function(_0x4cfbd0,_0x5d3257){return db[_0xd799('0x39')][_0xd799('0x55')]({'where':{'id':_0x4cfbd0[_0xd799('0x52')]['id']}})['then'](handleEntityNotFound(_0x5d3257,null))['then'](removeEntity(_0x5d3257,null))[_0xd799('0x50')](handleError(_0x5d3257,null));};exports[_0xd799('0x58')]=function(_0x5e596c,_0x906e67,_0x543382){var _0x3ec084={};var _0x424302={};var _0x1338dd;var _0x6f545a;return db['FreshsalesAccount']['findOne']({'where':{'id':_0x5e596c[_0xd799('0x52')]['id']}})['then'](handleEntityNotFound(_0x906e67,null))[_0xd799('0x21')](function(_0x2df0ab){if(_0x2df0ab){_0x1338dd=_0x2df0ab;_0x424302['model']=_[_0xd799('0x3f')](db[_0xd799('0x59')][_0xd799('0x3a')]);_0x424302[_0xd799('0x40')]=_[_0xd799('0x3f')](_0x5e596c[_0xd799('0x40')]);_0x424302[_0xd799('0x41')]=_[_0xd799('0x42')](_0x424302[_0xd799('0x3d')],_0x424302[_0xd799('0x40')]);_0x3ec084[_0xd799('0x43')]=_[_0xd799('0x42')](_0x424302[_0xd799('0x3d')],qs[_0xd799('0x44')](_0x5e596c[_0xd799('0x40')][_0xd799('0x44')]));_0x3ec084[_0xd799('0x43')]=_0x3ec084[_0xd799('0x43')][_0xd799('0x53')]?_0x3ec084[_0xd799('0x43')]:_0x424302[_0xd799('0x3d')];_0x3ec084[_0xd799('0x5a')]=qs[_0xd799('0x47')](_0x5e596c[_0xd799('0x40')][_0xd799('0x47')]);_0x3ec084['where']=qs[_0xd799('0x41')](_['pick'](_0x5e596c['query'],_0x424302[_0xd799('0x41')]));if(_0x5e596c[_0xd799('0x40')][_0xd799('0x49')]){_0x3ec084['where']=_['merge'](_0x3ec084[_0xd799('0x48')],{'$or':_[_0xd799('0x3e')](_0x3ec084[_0xd799('0x43')],function(_0x5c8e29){var _0xea1c9a={};_0xea1c9a[_0x5c8e29]={'$like':'%'+_0x5e596c[_0xd799('0x40')][_0xd799('0x49')]+'%'};return _0xea1c9a;})});}_0x3ec084=_[_0xd799('0x4a')]({},_0x3ec084,_0x5e596c[_0xd799('0x4c')]);return _0x1338dd[_0xd799('0x58')](_0x3ec084);}})[_0xd799('0x21')](function(_0x496275){if(_0x496275){_0x6f545a=_0x496275['length'];if(!_0x5e596c[_0xd799('0x40')][_0xd799('0x45')](_0xd799('0x46'))){_0x3ec084['limit']=qs[_0xd799('0x2d')](_0x5e596c[_0xd799('0x40')][_0xd799('0x2d')]);_0x3ec084['offset']=qs[_0xd799('0x2c')](_0x5e596c[_0xd799('0x40')]['offset']);}return _0x1338dd[_0xd799('0x58')](_0x3ec084);}})[_0xd799('0x21')](function(_0x803aea){if(_0x803aea){return _0x803aea?{'count':_0x6f545a,'rows':_0x803aea}:null;}})[_0xd799('0x21')](respondWithResult(_0x906e67,null))[_0xd799('0x50')](handleError(_0x906e67,null));};exports[_0xd799('0x5b')]=function(_0x57638e,_0x314654,_0x2a7cd7){if(_0x57638e[_0xd799('0x57')]['id']){delete _0x57638e[_0xd799('0x57')]['id'];}return db[_0xd799('0x39')]['findOne']({'where':{'id':_0x57638e[_0xd799('0x52')]['id']}})[_0xd799('0x21')](handleEntityNotFound(_0x314654,null))[_0xd799('0x21')](function(_0x28423c){if(_0x28423c){_0x57638e[_0xd799('0x57')][_0xd799('0x5c')]=_0x28423c['id'];_0x57638e[_0xd799('0x57')][_0xd799('0x5d')]=integrations[_0xd799('0x5e')](_0x57638e[_0xd799('0x57')][_0xd799('0x5f')],_0x57638e[_0xd799('0x57')]['type']);_0x57638e[_0xd799('0x57')][_0xd799('0x60')]=integrations[_0xd799('0x61')](_0x57638e['body'][_0xd799('0x5f')],_0x57638e[_0xd799('0x57')][_0xd799('0x3c')]);return db[_0xd799('0x59')]['create'](_0x57638e['body'],{'include':[{'model':db[_0xd799('0x62')],'as':_0xd799('0x5d')},{'model':db[_0xd799('0x62')],'as':_0xd799('0x60')}]});}return null;})[_0xd799('0x21')](respondWithResult(_0x314654,null))[_0xd799('0x50')](handleError(_0x314654,null));};exports[_0xd799('0x63')]=function(_0x11f9b2,_0x276347,_0xd74d44){var _0x25bb4f='';var _0x1473c6='';return db[_0xd799('0x39')][_0xd799('0x64')]({'where':{'id':_0x11f9b2['params']['id']},'attributes':['id','username',_0xd799('0x65'),_0xd799('0x66')]})[_0xd799('0x21')](handleEntityNotFound(_0x276347,null))['then'](function(_0x3357a2){if(_0x3357a2){_0x1473c6=_0x3357a2[_0xd799('0x67')];_0x25bb4f=_0x3357a2['remoteUri'];var _0x201e3b=_0x3357a2[_0xd799('0x65')][_0xd799('0x68')](-0x1);if(_0x201e3b==='/'){_0x25bb4f=_0x25bb4f[_0xd799('0x69')](0x0,_0x25bb4f[_0xd799('0x6a')](_0x201e3b));}return rp({'method':_0xd799('0x6b'),'uri':util['format'](_0xd799('0x6c'),_0x25bb4f,_0xd799('0x6d')),'headers':{'Authorization':'Token\x20token='+_0x3357a2['apiKey']},'json':!![]});}})['then'](function(_0x1c6f1d){if(_0x1c6f1d){var _0x23a869=_0x1c6f1d[_0xd799('0x6e')];var _0x4b754d=![];var _0xccf92e=null;for(_0xccf92e=0x0;_0xccf92e<_0x23a869[_0xd799('0x53')];_0xccf92e++){if(_0x23a869[_0xccf92e][_0xd799('0x6f')]===_0x1473c6){_0x4b754d=!![];}}if(_0x4b754d){return!![];}else{throw new Error({'statusCode':0x194,'message':_0xd799('0x70')});}}})['then'](respondWithResult(_0x276347,null))[_0xd799('0x50')](function(_0x116573){var _0x35600b=_0x11f9b2[_0xd799('0x40')][_0xd799('0x1c')]?0x1f4:_0x116573[_0xd799('0x71')]||0x1f4;logger['error']('getFields,\x20%s,\x20%s,\x20%s',_0xd799('0x63'),_0x35600b,JSON[_0xd799('0x72')](_0x116573));delete _0x116573[_0xd799('0x37')];if(_0x35600b===0x191){_0x35600b=0x190;}_0x276347['status'](_0x35600b)[_0xd799('0x38')](_0x11f9b2[_0xd799('0x40')]['test']?{'message':'Wrong\x20credentials','statusCode':_0x116573[_0xd799('0x71')]}:_0x116573);});};
\ No newline at end of file
+var _0x945e=['hasOwnProperty','addConfiguration','AccountId','Subjects','channel','type','Descriptions','create','FreshsalesField','remoteUri','apiKey','username','substring','lastIndexOf','GET','format','%s%s','/api/selector/owners','Token\x20token=','users','email','Requested\x20Resource\x20not\x20Found','test','statusCode','error','getFields','stringify','Wrong\x20credentials','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','fs-extra','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/utils','../../config/license/util','../../mysqldb','../../components/integrations/configuration','sendStatus','status','end','json','offset','limit','undefined','count','set','save','stack','name','send','index','FreshsalesAccount','fieldName','key','model','map','query','filters','intersection','attributes','fields','nolimit','order','where','pick','filter','merge','options','then','include','findAll','rows','show','keys','rawAttributes','length','includeAll','find','catch','body','update','params','destroy','getConfigurations','findOne','FreshsalesConfiguration','sort'];(function(_0xa6cc5c,_0x239c99){var _0x44803d=function(_0x515b6e){while(--_0x515b6e){_0xa6cc5c['push'](_0xa6cc5c['shift']());}};_0x44803d(++_0x239c99);}(_0x945e,0xe6));var _0xe945=function(_0x49d41c,_0x2bdc35){_0x49d41c=_0x49d41c-0x0;var _0xb64c5f=_0x945e[_0x49d41c];return _0xb64c5f;};'use strict';var emlformat=require(_0xe945('0x0'));var rimraf=require(_0xe945('0x1'));var zipdir=require(_0xe945('0x2'));var jsonpatch=require(_0xe945('0x3'));var rp=require(_0xe945('0x4'));var moment=require('moment');var BPromise=require(_0xe945('0x5'));var Mustache=require(_0xe945('0x6'));var util=require(_0xe945('0x7'));var path=require(_0xe945('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xe945('0x9'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xe945('0xa'));var jsforce=require('jsforce');var deskjs=require(_0xe945('0xb'));var toCsv=require(_0xe945('0xc'));var querystring=require(_0xe945('0xd'));var Papa=require(_0xe945('0xe'));var Redis=require(_0xe945('0xf'));var authService=require(_0xe945('0x10'));var qs=require(_0xe945('0x11'));var as=require(_0xe945('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require(_0xe945('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0xe945('0x14'));var db=require(_0xe945('0x15'))['db'];var integrations=require(_0xe945('0x16'));function respondWithStatusCode(_0x3cc5eb,_0x4199b3){_0x4199b3=_0x4199b3||0xcc;return function(_0x52deb9){if(_0x52deb9){return _0x3cc5eb[_0xe945('0x17')](_0x4199b3);}return _0x3cc5eb[_0xe945('0x18')](_0x4199b3)[_0xe945('0x19')]();};}function respondWithResult(_0x192e17,_0x2189fc){_0x2189fc=_0x2189fc||0xc8;return function(_0x507525){if(_0x507525){return _0x192e17[_0xe945('0x18')](_0x2189fc)[_0xe945('0x1a')](_0x507525);}};}function respondWithFilteredResult(_0x2541fb,_0xd782ad){return function(_0x4fcb46){if(_0x4fcb46){var _0x13a6d1=typeof _0xd782ad[_0xe945('0x1b')]==='undefined'&&typeof _0xd782ad[_0xe945('0x1c')]===_0xe945('0x1d');var _0x54ab47=_0x4fcb46['count'];var _0x4b2197=_0x13a6d1?0x0:_0xd782ad[_0xe945('0x1b')];var _0x31451b=_0x13a6d1?_0x4fcb46[_0xe945('0x1e')]:_0xd782ad[_0xe945('0x1b')]+_0xd782ad[_0xe945('0x1c')];var _0x4d0ea5;if(_0x31451b>=_0x54ab47){_0x31451b=_0x54ab47;_0x4d0ea5=0xc8;}else{_0x4d0ea5=0xce;}_0x2541fb[_0xe945('0x18')](_0x4d0ea5);return _0x2541fb[_0xe945('0x1f')]('Content-Range',_0x4b2197+'-'+_0x31451b+'/'+_0x54ab47)[_0xe945('0x1a')](_0x4fcb46);}return null;};}function patchUpdates(_0x571490){return function(_0x255a0b){try{jsonpatch['apply'](_0x255a0b,_0x571490,!![]);}catch(_0x535004){return BPromise['reject'](_0x535004);}return _0x255a0b[_0xe945('0x20')]();};}function saveUpdates(_0x5cd3c0,_0x5aa53a){return function(_0x212f1b){if(_0x212f1b){return _0x212f1b['update'](_0x5cd3c0)['then'](function(_0x26db94){return _0x26db94;});}return null;};}function removeEntity(_0x2f704d,_0x3eab1c){return function(_0x121c16){if(_0x121c16){return _0x121c16['destroy']()['then'](function(){_0x2f704d[_0xe945('0x18')](0xcc)[_0xe945('0x19')]();});}};}function handleEntityNotFound(_0x1fd2e1,_0xa60a40){return function(_0x128262){if(!_0x128262){_0x1fd2e1[_0xe945('0x17')](0x194);}return _0x128262;};}function handleError(_0x6a594e,_0x4c0194){_0x4c0194=_0x4c0194||0x1f4;return function(_0x1dbffe){logger['error'](_0x1dbffe[_0xe945('0x21')]);if(_0x1dbffe[_0xe945('0x22')]){delete _0x1dbffe[_0xe945('0x22')];}_0x6a594e['status'](_0x4c0194)[_0xe945('0x23')](_0x1dbffe);};}exports[_0xe945('0x24')]=function(_0x35cb05,_0x68de5a){var _0x1f50e1={},_0x3d1ba4={},_0x356616={'count':0x0,'rows':[]};var _0x207187=_['map'](db[_0xe945('0x25')]['rawAttributes'],function(_0x1e528d){return{'name':_0x1e528d[_0xe945('0x26')],'type':_0x1e528d['type'][_0xe945('0x27')]};});_0x3d1ba4[_0xe945('0x28')]=_[_0xe945('0x29')](_0x207187,_0xe945('0x22'));_0x3d1ba4[_0xe945('0x2a')]=_['keys'](_0x35cb05[_0xe945('0x2a')]);_0x3d1ba4[_0xe945('0x2b')]=_[_0xe945('0x2c')](_0x3d1ba4[_0xe945('0x28')],_0x3d1ba4[_0xe945('0x2a')]);_0x1f50e1[_0xe945('0x2d')]=_[_0xe945('0x2c')](_0x3d1ba4['model'],qs[_0xe945('0x2e')](_0x35cb05[_0xe945('0x2a')][_0xe945('0x2e')]));_0x1f50e1[_0xe945('0x2d')]=_0x1f50e1[_0xe945('0x2d')]['length']?_0x1f50e1[_0xe945('0x2d')]:_0x3d1ba4['model'];if(!_0x35cb05[_0xe945('0x2a')]['hasOwnProperty'](_0xe945('0x2f'))){_0x1f50e1[_0xe945('0x1c')]=qs['limit'](_0x35cb05[_0xe945('0x2a')][_0xe945('0x1c')]);_0x1f50e1[_0xe945('0x1b')]=qs['offset'](_0x35cb05['query'][_0xe945('0x1b')]);}_0x1f50e1[_0xe945('0x30')]=qs['sort'](_0x35cb05[_0xe945('0x2a')]['sort']);_0x1f50e1[_0xe945('0x31')]=qs['filters'](_[_0xe945('0x32')](_0x35cb05['query'],_0x3d1ba4[_0xe945('0x2b')]),_0x207187);if(_0x35cb05[_0xe945('0x2a')][_0xe945('0x33')]){_0x1f50e1['where']=_[_0xe945('0x34')](_0x1f50e1[_0xe945('0x31')],{'$or':_[_0xe945('0x29')](_0x207187,function(_0x3bf327){if(_0x3bf327['type']!=='VIRTUAL'){var _0x263a4d={};_0x263a4d[_0x3bf327['name']]={'$like':'%'+_0x35cb05['query']['filter']+'%'};return _0x263a4d;}})});}_0x1f50e1=_['merge']({},_0x1f50e1,_0x35cb05[_0xe945('0x35')]);var _0x5d45e2={'where':_0x1f50e1['where']};return db[_0xe945('0x25')][_0xe945('0x1e')](_0x5d45e2)[_0xe945('0x36')](function(_0x4557b9){_0x356616[_0xe945('0x1e')]=_0x4557b9;if(_0x35cb05[_0xe945('0x2a')]['includeAll']){_0x1f50e1[_0xe945('0x37')]=[{'all':!![]}];}return db[_0xe945('0x25')][_0xe945('0x38')](_0x1f50e1);})[_0xe945('0x36')](function(_0x56118c){_0x356616[_0xe945('0x39')]=_0x56118c;return _0x356616;})[_0xe945('0x36')](respondWithFilteredResult(_0x68de5a,_0x1f50e1))['catch'](handleError(_0x68de5a,null));};exports[_0xe945('0x3a')]=function(_0x5549a9,_0x589e21){var _0x380d64={'raw':![],'where':{'id':_0x5549a9['params']['id']}},_0x264bbd={};_0x264bbd[_0xe945('0x28')]=_[_0xe945('0x3b')](db[_0xe945('0x25')][_0xe945('0x3c')]);_0x264bbd[_0xe945('0x2a')]=_[_0xe945('0x3b')](_0x5549a9[_0xe945('0x2a')]);_0x264bbd[_0xe945('0x2b')]=_['intersection'](_0x264bbd[_0xe945('0x28')],_0x264bbd[_0xe945('0x2a')]);_0x380d64['attributes']=_[_0xe945('0x2c')](_0x264bbd[_0xe945('0x28')],qs[_0xe945('0x2e')](_0x5549a9[_0xe945('0x2a')][_0xe945('0x2e')]));_0x380d64['attributes']=_0x380d64[_0xe945('0x2d')][_0xe945('0x3d')]?_0x380d64[_0xe945('0x2d')]:_0x264bbd[_0xe945('0x28')];if(_0x5549a9[_0xe945('0x2a')][_0xe945('0x3e')]){_0x380d64[_0xe945('0x37')]=[{'all':!![]}];}_0x380d64=_[_0xe945('0x34')]({},_0x380d64,_0x5549a9[_0xe945('0x35')]);return db[_0xe945('0x25')][_0xe945('0x3f')](_0x380d64)[_0xe945('0x36')](handleEntityNotFound(_0x589e21,null))[_0xe945('0x36')](respondWithResult(_0x589e21,null))[_0xe945('0x40')](handleError(_0x589e21,null));};exports['create']=function(_0x1ca54f,_0x585f8b){return db[_0xe945('0x25')]['create'](_0x1ca54f[_0xe945('0x41')],{})[_0xe945('0x36')](respondWithResult(_0x585f8b,0xc9))[_0xe945('0x40')](handleError(_0x585f8b,null));};exports[_0xe945('0x42')]=function(_0x496f47,_0x3d39a2){if(_0x496f47[_0xe945('0x41')]['id']){delete _0x496f47[_0xe945('0x41')]['id'];}return db[_0xe945('0x25')][_0xe945('0x3f')]({'where':{'id':_0x496f47[_0xe945('0x43')]['id']}})[_0xe945('0x36')](handleEntityNotFound(_0x3d39a2,null))[_0xe945('0x36')](saveUpdates(_0x496f47[_0xe945('0x41')],null))['then'](respondWithResult(_0x3d39a2,null))[_0xe945('0x40')](handleError(_0x3d39a2,null));};exports[_0xe945('0x44')]=function(_0x2ef9c5,_0x3aa606){return db[_0xe945('0x25')]['find']({'where':{'id':_0x2ef9c5[_0xe945('0x43')]['id']}})[_0xe945('0x36')](handleEntityNotFound(_0x3aa606,null))['then'](removeEntity(_0x3aa606,null))[_0xe945('0x40')](handleError(_0x3aa606,null));};exports[_0xe945('0x45')]=function(_0x2a1e46,_0x32d36a,_0x1060f5){var _0x452429={};var _0x44b61a={};var _0x538344;var _0x91bc5b;return db[_0xe945('0x25')][_0xe945('0x46')]({'where':{'id':_0x2a1e46['params']['id']}})['then'](handleEntityNotFound(_0x32d36a,null))[_0xe945('0x36')](function(_0x573dc4){if(_0x573dc4){_0x538344=_0x573dc4;_0x44b61a['model']=_[_0xe945('0x3b')](db[_0xe945('0x47')][_0xe945('0x3c')]);_0x44b61a[_0xe945('0x2a')]=_[_0xe945('0x3b')](_0x2a1e46[_0xe945('0x2a')]);_0x44b61a[_0xe945('0x2b')]=_[_0xe945('0x2c')](_0x44b61a[_0xe945('0x28')],_0x44b61a['query']);_0x452429['attributes']=_['intersection'](_0x44b61a['model'],qs[_0xe945('0x2e')](_0x2a1e46[_0xe945('0x2a')][_0xe945('0x2e')]));_0x452429['attributes']=_0x452429[_0xe945('0x2d')][_0xe945('0x3d')]?_0x452429[_0xe945('0x2d')]:_0x44b61a[_0xe945('0x28')];_0x452429[_0xe945('0x30')]=qs['sort'](_0x2a1e46[_0xe945('0x2a')][_0xe945('0x48')]);_0x452429[_0xe945('0x31')]=qs['filters'](_[_0xe945('0x32')](_0x2a1e46['query'],_0x44b61a['filters']));if(_0x2a1e46['query'][_0xe945('0x33')]){_0x452429['where']=_['merge'](_0x452429[_0xe945('0x31')],{'$or':_[_0xe945('0x29')](_0x452429[_0xe945('0x2d')],function(_0x5b710f){var _0x575a1c={};_0x575a1c[_0x5b710f]={'$like':'%'+_0x2a1e46[_0xe945('0x2a')][_0xe945('0x33')]+'%'};return _0x575a1c;})});}_0x452429=_[_0xe945('0x34')]({},_0x452429,_0x2a1e46['options']);return _0x538344[_0xe945('0x45')](_0x452429);}})[_0xe945('0x36')](function(_0x55a593){if(_0x55a593){_0x91bc5b=_0x55a593[_0xe945('0x3d')];if(!_0x2a1e46[_0xe945('0x2a')][_0xe945('0x49')]('nolimit')){_0x452429['limit']=qs[_0xe945('0x1c')](_0x2a1e46[_0xe945('0x2a')][_0xe945('0x1c')]);_0x452429[_0xe945('0x1b')]=qs[_0xe945('0x1b')](_0x2a1e46[_0xe945('0x2a')][_0xe945('0x1b')]);}return _0x538344[_0xe945('0x45')](_0x452429);}})['then'](function(_0x534838){if(_0x534838){return _0x534838?{'count':_0x91bc5b,'rows':_0x534838}:null;}})[_0xe945('0x36')](respondWithResult(_0x32d36a,null))[_0xe945('0x40')](handleError(_0x32d36a,null));};exports[_0xe945('0x4a')]=function(_0x1dae77,_0x85f555,_0x20cbbf){if(_0x1dae77[_0xe945('0x41')]['id']){delete _0x1dae77[_0xe945('0x41')]['id'];}return db[_0xe945('0x25')]['findOne']({'where':{'id':_0x1dae77[_0xe945('0x43')]['id']}})[_0xe945('0x36')](handleEntityNotFound(_0x85f555,null))[_0xe945('0x36')](function(_0x438ba7){if(_0x438ba7){_0x1dae77[_0xe945('0x41')][_0xe945('0x4b')]=_0x438ba7['id'];_0x1dae77[_0xe945('0x41')][_0xe945('0x4c')]=integrations['getSubjects'](_0x1dae77[_0xe945('0x41')][_0xe945('0x4d')],_0x1dae77[_0xe945('0x41')][_0xe945('0x4e')]);_0x1dae77[_0xe945('0x41')][_0xe945('0x4f')]=integrations['getDescriptions'](_0x1dae77[_0xe945('0x41')][_0xe945('0x4d')],_0x1dae77['body'][_0xe945('0x4e')]);return db[_0xe945('0x47')][_0xe945('0x50')](_0x1dae77[_0xe945('0x41')],{'include':[{'model':db[_0xe945('0x51')],'as':'Subjects'},{'model':db[_0xe945('0x51')],'as':_0xe945('0x4f')}]});}return null;})[_0xe945('0x36')](respondWithResult(_0x85f555,null))[_0xe945('0x40')](handleError(_0x85f555,null));};exports['getFields']=function(_0x50fdc8,_0x32f024,_0x101b07){var _0xf98bbf='';var _0x4f5bb8='';return db[_0xe945('0x25')]['findOne']({'where':{'id':_0x50fdc8[_0xe945('0x43')]['id']},'attributes':['id','username',_0xe945('0x52'),_0xe945('0x53')]})['then'](handleEntityNotFound(_0x32f024,null))[_0xe945('0x36')](function(_0x55b1c5){if(_0x55b1c5){_0x4f5bb8=_0x55b1c5[_0xe945('0x54')];_0xf98bbf=_0x55b1c5[_0xe945('0x52')];var _0x31abb3=_0x55b1c5[_0xe945('0x52')]['slice'](-0x1);if(_0x31abb3==='/'){_0xf98bbf=_0xf98bbf[_0xe945('0x55')](0x0,_0xf98bbf[_0xe945('0x56')](_0x31abb3));}return rp({'method':_0xe945('0x57'),'uri':util[_0xe945('0x58')](_0xe945('0x59'),_0xf98bbf,_0xe945('0x5a')),'headers':{'Authorization':_0xe945('0x5b')+_0x55b1c5['apiKey']},'json':!![]});}})[_0xe945('0x36')](function(_0x259672){if(_0x259672){var _0x4ae876=_0x259672[_0xe945('0x5c')];var _0x385f0e=![];var _0x3804f7=null;for(_0x3804f7=0x0;_0x3804f7<_0x4ae876['length'];_0x3804f7++){if(_0x4ae876[_0x3804f7][_0xe945('0x5d')]===_0x4f5bb8){_0x385f0e=!![];}}if(_0x385f0e){return!![];}else{throw new Error({'statusCode':0x194,'message':_0xe945('0x5e')});}}})['then'](respondWithResult(_0x32f024,null))['catch'](function(_0x5b109c){var _0x19fa0e=_0x50fdc8[_0xe945('0x2a')][_0xe945('0x5f')]?0x1f4:_0x5b109c[_0xe945('0x60')]||0x1f4;logger[_0xe945('0x61')]('getFields,\x20%s,\x20%s,\x20%s',_0xe945('0x62'),_0x19fa0e,JSON[_0xe945('0x63')](_0x5b109c));delete _0x5b109c['name'];if(_0x19fa0e===0x191){_0x19fa0e=0x190;}_0x32f024[_0xe945('0x18')](_0x19fa0e)['send'](_0x50fdc8[_0xe945('0x2a')][_0xe945('0x5f')]?{'message':_0xe945('0x64'),'statusCode':_0x5b109c[_0xe945('0x60')]}:_0x5b109c);});};
\ No newline at end of file