Built motion from commit f7863d46.|2.5.41
[motion2.git] / server / api / intFreshsalesAccount / intFreshsalesAccount.controller.js
index 6a1387d..7436ff5 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa8ed=['info','FreshsalesAccount,\x20%s,\x20%s','request\x20sent','FreshsalesAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','status','json','count','offset','limit','Content-Range','reject','save','update','then','sendStatus','name','index','map','FreshsalesAccount','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','sort','where','pick','filter','merge','VIRTUAL','options','include','findAll','show','rawAttributes','create','body','params','find','getConfigurations','FreshsalesConfiguration','order','nolimit','addConfiguration','findOne','AccountId','Subjects','getSubjects','channel','Descriptions','getDescriptions','FreshsalesField','username','remoteUri','slice','substring','lastIndexOf','GET','%s%s','/api/selector/owners','apiKey','users','email','statusCode','getFields','send','Wrong\x20credentials','html-pdf','rimraf','moment','mustache','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','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~!@#$%^&-_=+[{]}.'];(function(_0x3f4dd9,_0xe0b819){var _0x31c54a=function(_0x25e6c6){while(--_0x25e6c6){_0x3f4dd9['push'](_0x3f4dd9['shift']());}};_0x31c54a(++_0xe0b819);}(_0xa8ed,0x128));var _0xda8e=function(_0x4fde08,_0x463a36){_0x4fde08=_0x4fde08-0x0;var _0x12e725=_0xa8ed[_0x4fde08];return _0x12e725;};'use strict';var pdf=require(_0xda8e('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xda8e('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xda8e('0x2'));var BPromise=require('bluebird');var Mustache=require(_0xda8e('0x3'));var util=require('util');var path=require(_0xda8e('0x4'));var sox=require(_0xda8e('0x5'));var csv=require(_0xda8e('0x6'));var ejs=require(_0xda8e('0x7'));var fs=require('fs');var _=require(_0xda8e('0x8'));var squel=require(_0xda8e('0x9'));var crypto=require('crypto');var jsforce=require(_0xda8e('0xa'));var deskjs=require(_0xda8e('0xb'));var toCsv=require(_0xda8e('0x6'));var querystring=require(_0xda8e('0xc'));var Papa=require(_0xda8e('0xd'));var Redis=require(_0xda8e('0xe'));var authService=require(_0xda8e('0xf'));var qs=require(_0xda8e('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xda8e('0x11'))('api');var utils=require('../../config/utils');var config=require(_0xda8e('0x12'));var db=require(_0xda8e('0x13'))['db'];var integrations=require(_0xda8e('0x14'));var jayson=require(_0xda8e('0x15'));var client=jayson[_0xda8e('0x16')][_0xda8e('0x17')]({'port':0x232a});function checkPasswordPattern(_0x21b920,_0x4d719a,_0x5b7ee9){if(_0x5b7ee9){var _0x592d52=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x592d52[_0xda8e('0x18')](_0x4d719a)){return _0x21b920;}else{throw new db[(_0xda8e('0x19'))][(_0xda8e('0x1a'))](_0xda8e('0x1b'));}}else{return _0x21b920;}}function respondWithRpcPromise(_0x294132,_0x573050,_0x1ddbc7,_0x249502){return new BPromise(function(_0x379503,_0x38d33d){var _0x25fc6d=_0x249502||client;return _0x25fc6d['request'](_0x294132,_0x1ddbc7)['then'](function(_0x4e9070){logger[_0xda8e('0x1c')](_0xda8e('0x1d'),_0x573050,_0xda8e('0x1e'));logger['debug'](_0xda8e('0x1f'),_0x573050,_0xda8e('0x1e'),JSON[_0xda8e('0x20')](_0x4e9070));if(_0x4e9070[_0xda8e('0x21')]){if(_0x4e9070[_0xda8e('0x21')][_0xda8e('0x22')]===0x1f4){logger[_0xda8e('0x21')](_0xda8e('0x1d'),_0x573050,_0x4e9070[_0xda8e('0x21')][_0xda8e('0x23')]);return _0x38d33d(_0x4e9070[_0xda8e('0x21')]['message']);}logger[_0xda8e('0x21')](_0xda8e('0x1d'),_0x573050,_0x4e9070[_0xda8e('0x21')][_0xda8e('0x23')]);return _0x379503(_0x4e9070[_0xda8e('0x21')][_0xda8e('0x23')]);}else{logger[_0xda8e('0x1c')](_0xda8e('0x1d'),_0x573050,_0xda8e('0x1e'));_0x379503(_0x4e9070[_0xda8e('0x24')]['message']);}})[_0xda8e('0x25')](function(_0x4f8905){logger[_0xda8e('0x21')](_0xda8e('0x1d'),_0x573050,_0x4f8905);_0x38d33d(_0x4f8905);});});}function respondWithStatusCode(_0x3ac240,_0x4aa587){_0x4aa587=_0x4aa587||0xcc;return function(_0x2c0290){if(_0x2c0290){return _0x3ac240['sendStatus'](_0x4aa587);}return _0x3ac240['status'](_0x4aa587)['end']();};}function respondWithResult(_0x34e651,_0x535e93){_0x535e93=_0x535e93||0xc8;return function(_0x552764){if(_0x552764){return _0x34e651[_0xda8e('0x26')](_0x535e93)[_0xda8e('0x27')](_0x552764);}};}function respondWithFilteredResult(_0x5a7484,_0x5a93b0){return function(_0x3c72ed){if(_0x3c72ed){var _0x113a2d=_0x3c72ed[_0xda8e('0x28')],_0x3cfb57=_0x5a93b0[_0xda8e('0x29')],_0x515906=_0x5a93b0[_0xda8e('0x29')]+_0x5a93b0[_0xda8e('0x2a')],_0x309967;if(_0x515906>=_0x113a2d){_0x515906=_0x113a2d;_0x309967=0xc8;}else{_0x309967=0xce;}_0x5a7484[_0xda8e('0x26')](_0x309967);return _0x5a7484['set'](_0xda8e('0x2b'),_0x3cfb57+'-'+_0x515906+'/'+_0x113a2d)[_0xda8e('0x27')](_0x3c72ed);}return null;};}function patchUpdates(_0x3bbdb5){return function(_0x257841){try{jsonpatch['apply'](_0x257841,_0x3bbdb5,!![]);}catch(_0x1fc7a8){return BPromise[_0xda8e('0x2c')](_0x1fc7a8);}return _0x257841[_0xda8e('0x2d')]();};}function saveUpdates(_0x5971b8,_0x2dd787){return function(_0x572e0d){if(_0x572e0d){return _0x572e0d[_0xda8e('0x2e')](_0x5971b8)[_0xda8e('0x2f')](function(_0x1a1776){return _0x1a1776;});}return null;};}function removeEntity(_0x1d4af8,_0x5aa353){return function(_0x4e028a){if(_0x4e028a){return _0x4e028a['destroy']()[_0xda8e('0x2f')](function(){_0x1d4af8[_0xda8e('0x26')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1e0850,_0x156062){return function(_0x520d6a){if(!_0x520d6a){_0x1e0850[_0xda8e('0x30')](0x194);}return _0x520d6a;};}function handleError(_0x13cebb,_0x50adf0){_0x50adf0=_0x50adf0||0x1f4;return function(_0x3d0665){logger[_0xda8e('0x21')](_0x3d0665['stack']);if(_0x3d0665[_0xda8e('0x31')]){delete _0x3d0665[_0xda8e('0x31')];}_0x13cebb['status'](_0x50adf0)['send'](_0x3d0665);};}exports[_0xda8e('0x32')]=function(_0x1770fe,_0x2524b3){var _0x1bb5a8={},_0x265b70={},_0x17caee={'count':0x0,'rows':[]};var _0x44d8ff=_[_0xda8e('0x33')](db[_0xda8e('0x34')]['rawAttributes'],function(_0x43f92c){return{'name':_0x43f92c[_0xda8e('0x35')],'type':_0x43f92c[_0xda8e('0x36')][_0xda8e('0x37')]};});_0x265b70[_0xda8e('0x38')]=_[_0xda8e('0x33')](_0x44d8ff,'name');_0x265b70[_0xda8e('0x39')]=_[_0xda8e('0x3a')](_0x1770fe[_0xda8e('0x39')]);_0x265b70[_0xda8e('0x3b')]=_['intersection'](_0x265b70['model'],_0x265b70[_0xda8e('0x39')]);_0x1bb5a8[_0xda8e('0x3c')]=_[_0xda8e('0x3d')](_0x265b70[_0xda8e('0x38')],qs['fields'](_0x1770fe['query'][_0xda8e('0x3e')]));_0x1bb5a8['attributes']=_0x1bb5a8['attributes'][_0xda8e('0x3f')]?_0x1bb5a8[_0xda8e('0x3c')]:_0x265b70[_0xda8e('0x38')];if(!_0x1770fe[_0xda8e('0x39')][_0xda8e('0x40')]('nolimit')){_0x1bb5a8[_0xda8e('0x2a')]=qs[_0xda8e('0x2a')](_0x1770fe['query'][_0xda8e('0x2a')]);_0x1bb5a8[_0xda8e('0x29')]=qs[_0xda8e('0x29')](_0x1770fe[_0xda8e('0x39')]['offset']);}_0x1bb5a8['order']=qs[_0xda8e('0x41')](_0x1770fe[_0xda8e('0x39')]['sort']);_0x1bb5a8[_0xda8e('0x42')]=qs[_0xda8e('0x3b')](_[_0xda8e('0x43')](_0x1770fe[_0xda8e('0x39')],_0x265b70[_0xda8e('0x3b')]),_0x44d8ff);if(_0x1770fe['query'][_0xda8e('0x44')]){_0x1bb5a8[_0xda8e('0x42')]=_[_0xda8e('0x45')](_0x1bb5a8[_0xda8e('0x42')],{'$or':_[_0xda8e('0x33')](_0x44d8ff,function(_0x258188){if(_0x258188[_0xda8e('0x36')]!==_0xda8e('0x46')){var _0x165953={};_0x165953[_0x258188[_0xda8e('0x31')]]={'$like':'%'+_0x1770fe[_0xda8e('0x39')][_0xda8e('0x44')]+'%'};return _0x165953;}})});}_0x1bb5a8=_[_0xda8e('0x45')]({},_0x1bb5a8,_0x1770fe[_0xda8e('0x47')]);var _0x176fcb={'where':_0x1bb5a8['where']};return db[_0xda8e('0x34')][_0xda8e('0x28')](_0x176fcb)[_0xda8e('0x2f')](function(_0x5b4c4d){_0x17caee['count']=_0x5b4c4d;if(_0x1770fe[_0xda8e('0x39')]['includeAll']){_0x1bb5a8[_0xda8e('0x48')]=[{'all':!![]}];}return db[_0xda8e('0x34')][_0xda8e('0x49')](_0x1bb5a8);})[_0xda8e('0x2f')](function(_0x5f6f2f){_0x17caee['rows']=_0x5f6f2f;return _0x17caee;})[_0xda8e('0x2f')](respondWithFilteredResult(_0x2524b3,_0x1bb5a8))['catch'](handleError(_0x2524b3,null));};exports[_0xda8e('0x4a')]=function(_0x438e9a,_0x5f303c){var _0x18a171={'raw':![],'where':{'id':_0x438e9a['params']['id']}},_0x2fea1f={};_0x2fea1f[_0xda8e('0x38')]=_[_0xda8e('0x3a')](db['FreshsalesAccount'][_0xda8e('0x4b')]);_0x2fea1f[_0xda8e('0x39')]=_['keys'](_0x438e9a['query']);_0x2fea1f[_0xda8e('0x3b')]=_['intersection'](_0x2fea1f[_0xda8e('0x38')],_0x2fea1f[_0xda8e('0x39')]);_0x18a171[_0xda8e('0x3c')]=_[_0xda8e('0x3d')](_0x2fea1f['model'],qs['fields'](_0x438e9a['query']['fields']));_0x18a171['attributes']=_0x18a171[_0xda8e('0x3c')][_0xda8e('0x3f')]?_0x18a171[_0xda8e('0x3c')]:_0x2fea1f[_0xda8e('0x38')];if(_0x438e9a[_0xda8e('0x39')]['includeAll']){_0x18a171['include']=[{'all':!![]}];}_0x18a171=_[_0xda8e('0x45')]({},_0x18a171,_0x438e9a['options']);return db[_0xda8e('0x34')]['find'](_0x18a171)[_0xda8e('0x2f')](handleEntityNotFound(_0x5f303c,null))[_0xda8e('0x2f')](respondWithResult(_0x5f303c,null))[_0xda8e('0x25')](handleError(_0x5f303c,null));};exports[_0xda8e('0x4c')]=function(_0x3e6d2f,_0x4aeb77){return db[_0xda8e('0x34')][_0xda8e('0x4c')](_0x3e6d2f[_0xda8e('0x4d')],{})['then'](respondWithResult(_0x4aeb77,0xc9))[_0xda8e('0x25')](handleError(_0x4aeb77,null));};exports[_0xda8e('0x2e')]=function(_0x2e112b,_0x383311){if(_0x2e112b['body']['id']){delete _0x2e112b[_0xda8e('0x4d')]['id'];}return db[_0xda8e('0x34')]['find']({'where':{'id':_0x2e112b[_0xda8e('0x4e')]['id']}})['then'](handleEntityNotFound(_0x383311,null))['then'](saveUpdates(_0x2e112b[_0xda8e('0x4d')],null))[_0xda8e('0x2f')](respondWithResult(_0x383311,null))[_0xda8e('0x25')](handleError(_0x383311,null));};exports['destroy']=function(_0x133e84,_0x28dbf8){return db[_0xda8e('0x34')][_0xda8e('0x4f')]({'where':{'id':_0x133e84[_0xda8e('0x4e')]['id']}})['then'](handleEntityNotFound(_0x28dbf8,null))['then'](removeEntity(_0x28dbf8,null))[_0xda8e('0x25')](handleError(_0x28dbf8,null));};exports[_0xda8e('0x50')]=function(_0x2cac9e,_0x23389d,_0x5363ac){var _0x15c4af={};var _0x3dd584={};var _0x28e421;var _0x163897;return db[_0xda8e('0x34')]['findOne']({'where':{'id':_0x2cac9e[_0xda8e('0x4e')]['id']}})['then'](handleEntityNotFound(_0x23389d,null))['then'](function(_0x2fab08){if(_0x2fab08){_0x28e421=_0x2fab08;_0x3dd584[_0xda8e('0x38')]=_[_0xda8e('0x3a')](db[_0xda8e('0x51')][_0xda8e('0x4b')]);_0x3dd584[_0xda8e('0x39')]=_['keys'](_0x2cac9e[_0xda8e('0x39')]);_0x3dd584['filters']=_[_0xda8e('0x3d')](_0x3dd584[_0xda8e('0x38')],_0x3dd584['query']);_0x15c4af['attributes']=_[_0xda8e('0x3d')](_0x3dd584[_0xda8e('0x38')],qs[_0xda8e('0x3e')](_0x2cac9e[_0xda8e('0x39')]['fields']));_0x15c4af['attributes']=_0x15c4af[_0xda8e('0x3c')]['length']?_0x15c4af[_0xda8e('0x3c')]:_0x3dd584[_0xda8e('0x38')];_0x15c4af[_0xda8e('0x52')]=qs['sort'](_0x2cac9e[_0xda8e('0x39')][_0xda8e('0x41')]);_0x15c4af[_0xda8e('0x42')]=qs[_0xda8e('0x3b')](_[_0xda8e('0x43')](_0x2cac9e[_0xda8e('0x39')],_0x3dd584[_0xda8e('0x3b')]));if(_0x2cac9e[_0xda8e('0x39')][_0xda8e('0x44')]){_0x15c4af['where']=_['merge'](_0x15c4af[_0xda8e('0x42')],{'$or':_[_0xda8e('0x33')](_0x15c4af[_0xda8e('0x3c')],function(_0x28663e){var _0x243619={};_0x243619[_0x28663e]={'$like':'%'+_0x2cac9e[_0xda8e('0x39')][_0xda8e('0x44')]+'%'};return _0x243619;})});}_0x15c4af=_['merge']({},_0x15c4af,_0x2cac9e['options']);return _0x28e421[_0xda8e('0x50')](_0x15c4af);}})[_0xda8e('0x2f')](function(_0x214e31){if(_0x214e31){_0x163897=_0x214e31[_0xda8e('0x3f')];if(!_0x2cac9e[_0xda8e('0x39')]['hasOwnProperty'](_0xda8e('0x53'))){_0x15c4af[_0xda8e('0x2a')]=qs['limit'](_0x2cac9e[_0xda8e('0x39')][_0xda8e('0x2a')]);_0x15c4af[_0xda8e('0x29')]=qs[_0xda8e('0x29')](_0x2cac9e['query']['offset']);}return _0x28e421[_0xda8e('0x50')](_0x15c4af);}})[_0xda8e('0x2f')](function(_0x153b61){if(_0x153b61){return _0x153b61?{'count':_0x163897,'rows':_0x153b61}:null;}})['then'](respondWithResult(_0x23389d,null))[_0xda8e('0x25')](handleError(_0x23389d,null));};exports[_0xda8e('0x54')]=function(_0xcb4a62,_0x3de64f,_0x1a3d96){if(_0xcb4a62['body']['id']){delete _0xcb4a62[_0xda8e('0x4d')]['id'];}return db[_0xda8e('0x34')][_0xda8e('0x55')]({'where':{'id':_0xcb4a62[_0xda8e('0x4e')]['id']}})['then'](handleEntityNotFound(_0x3de64f,null))[_0xda8e('0x2f')](function(_0x5f3833){if(_0x5f3833){_0xcb4a62[_0xda8e('0x4d')][_0xda8e('0x56')]=_0x5f3833['id'];_0xcb4a62[_0xda8e('0x4d')][_0xda8e('0x57')]=integrations[_0xda8e('0x58')](_0xcb4a62[_0xda8e('0x4d')][_0xda8e('0x59')],_0xcb4a62[_0xda8e('0x4d')][_0xda8e('0x36')]);_0xcb4a62['body'][_0xda8e('0x5a')]=integrations[_0xda8e('0x5b')](_0xcb4a62[_0xda8e('0x4d')]['channel'],_0xcb4a62[_0xda8e('0x4d')][_0xda8e('0x36')]);return db['FreshsalesConfiguration']['create'](_0xcb4a62[_0xda8e('0x4d')],{'include':[{'model':db[_0xda8e('0x5c')],'as':'Subjects'},{'model':db[_0xda8e('0x5c')],'as':_0xda8e('0x5a')}]});}return null;})[_0xda8e('0x2f')](respondWithResult(_0x3de64f,null))['catch'](handleError(_0x3de64f,null));};exports['getFields']=function(_0x503080,_0x20616f,_0x3de2d4){var _0x4e7608='';var _0x180d31='';return db[_0xda8e('0x34')][_0xda8e('0x55')]({'where':{'id':_0x503080[_0xda8e('0x4e')]['id']},'attributes':['id',_0xda8e('0x5d'),_0xda8e('0x5e'),'apiKey']})[_0xda8e('0x2f')](handleEntityNotFound(_0x20616f,null))[_0xda8e('0x2f')](function(_0x578e5e){if(_0x578e5e){_0x180d31=_0x578e5e[_0xda8e('0x5d')];_0x4e7608=_0x578e5e[_0xda8e('0x5e')];var _0x41733e=_0x578e5e['remoteUri'][_0xda8e('0x5f')](-0x1);if(_0x41733e==='/'){_0x4e7608=_0x4e7608[_0xda8e('0x60')](0x0,_0x4e7608[_0xda8e('0x61')](_0x41733e));}return rp({'method':_0xda8e('0x62'),'uri':util['format'](_0xda8e('0x63'),_0x4e7608,_0xda8e('0x64')),'headers':{'Authorization':'Token\x20token='+_0x578e5e[_0xda8e('0x65')]},'json':!![]});}})['then'](function(_0x1b45df){if(_0x1b45df){var _0x422a5a=_0x1b45df[_0xda8e('0x66')];var _0x3b4b02=![];var _0x446cb1=null;for(_0x446cb1=0x0;_0x446cb1<_0x422a5a[_0xda8e('0x3f')];_0x446cb1++){if(_0x422a5a[_0x446cb1][_0xda8e('0x67')]===_0x180d31){_0x3b4b02=!![];}}if(_0x3b4b02){return!![];}else{throw new Error({'statusCode':0x194,'message':'Requested\x20Resource\x20not\x20Found'});}}})['then'](respondWithResult(_0x20616f,null))['catch'](function(_0x194dc2){var _0x42a029=_0x503080[_0xda8e('0x39')]['test']?0x1f4:_0x194dc2[_0xda8e('0x68')]||0x1f4;logger['error']('getFields,\x20%s,\x20%s,\x20%s',_0xda8e('0x69'),_0x42a029,JSON[_0xda8e('0x20')](_0x194dc2));delete _0x194dc2['name'];if(_0x42a029===0x191){_0x42a029=0x190;}_0x20616f['status'](_0x42a029)[_0xda8e('0x6a')](_0x503080[_0xda8e('0x39')][_0xda8e('0x18')]?{'message':_0xda8e('0x6b'),'statusCode':_0x194dc2['statusCode']}:_0x194dc2);});};
\ 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