Built motion from commit 5b761a7b.|2.5.36
[motion2.git] / server / api / user / user.model.js
index 0c02785..347fa88 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xcfee=['catch','exports','models','User','users','utf8_bin','userProfileId','undefined','UserProfile','privacyEnabled','updatePassword','resolve','changed','then','VoiceExtension','bulkCreate','chanspy','destroy','encryptPassword','function','Missing\x20Callback','randomBytes','toString','base64','salt','pbkdf2Sync','sha1','pbkdf2','indexOf','Invalid\x20password','md5secret',':asterisk:','bluebird','crypto','util','md5','./user.attributes','google','length','context','system','format','%s%s','prefix','push','merge','Set','CDR(type)=%s','record','${UNIQUEID}.%s,a','recordingFormat','Authenticate','password','ChanSpy','name','join','StopMixMonitor','WAV','gsm','from-sip','CDR(type)=internal','includes','extensionMonitor','_XCALLY_MIXMONITOR_UNIQUEID=${UNIQUEID}','_XCALLY_MIXMONITOR_FORMAT=%s','SIP/%s,,tTxXU(xcally-mixmonitor-context)','SIP/%s,,tTxX','Hangup','VoiceChanSpy','findAll','internal','concat'];(function(_0x596030,_0x52791b){var _0xf35375=function(_0x58a5d4){while(--_0x58a5d4){_0x596030['push'](_0x596030['shift']());}};_0xf35375(++_0x52791b);}(_0xcfee,0xb0));var _0xecfe=function(_0x12fc8d,_0x19ee33){_0x12fc8d=_0x12fc8d-0x0;var _0x3f9d04=_0xcfee[_0x12fc8d];return _0x3f9d04;};'use strict';var BPromise=require(_0xecfe('0x0'));var crypto=require(_0xecfe('0x1'));var util=require(_0xecfe('0x2'));var md5=require(_0xecfe('0x3'));var _=require('lodash');var attributes=require(_0xecfe('0x4'));var authTypes=[_0xecfe('0x5')];var validatePresenceOf=function(_0x37b4c3){return _0x37b4c3&&_0x37b4c3[_0xecfe('0x6')];};var getChanSpyApplications=function(_0x43e823,_0x370450,_0x5be9d6){var _0x55cf2f={'context':_0x43e823[_0xecfe('0x7')]||'from-sip','type':_0xecfe('0x8'),'isApp':![],'UserId':_0x43e823['id']};var _0x4effef=[];for(var _0x40c0ff=0x0,_0x2695af=0x1;_0x40c0ff<_0x5be9d6[_0xecfe('0x6')];_0x40c0ff++,_0x2695af=0x1){var _0x5cfc18={'exten':util[_0xecfe('0x9')](_0xecfe('0xa'),_0x5be9d6[_0x40c0ff][_0xecfe('0xb')],_0x370450),'ChanSpyId':_0x5be9d6[_0x40c0ff]['id']};_0x4effef[_0xecfe('0xc')](_[_0xecfe('0xd')]({'app':_0xecfe('0xe'),'appdata':util[_0xecfe('0x9')](_0xecfe('0xf'),'chanspy'),'priority':_0x2695af++},_0x55cf2f,_0x5cfc18));if(_0x5be9d6[_0x40c0ff][_0xecfe('0x10')]){_0x4effef[_0xecfe('0xc')](_['merge']({'app':'MixMonitor','appdata':util[_0xecfe('0x9')](_0xecfe('0x11'),_0x5be9d6[_0x40c0ff][_0xecfe('0x12')]),'priority':_0x2695af++},_0x55cf2f,_0x5cfc18));}if(_0x5be9d6[_0x40c0ff]['auth']){_0x4effef[_0xecfe('0xc')](_[_0xecfe('0xd')]({'app':_0xecfe('0x13'),'appdata':_0x5be9d6[_0x40c0ff][_0xecfe('0x14')],'priority':_0x2695af++},_0x55cf2f,_0x5cfc18));}_0x4effef[_0xecfe('0xc')](_[_0xecfe('0xd')]({'app':_0xecfe('0x15'),'appdata':util[_0xecfe('0x9')]('SIP/%s,%s',_0x43e823[_0xecfe('0x16')],_0x5be9d6[_0x40c0ff]['options']?_0x5be9d6[_0x40c0ff]['options'][_0xecfe('0x17')](''):''),'priority':_0x2695af++},_0x55cf2f,_0x5cfc18));if(_0x5be9d6[_0x40c0ff][_0xecfe('0x10')]){_0x4effef[_0xecfe('0xc')](_['merge']({'app':_0xecfe('0x18'),'priority':_0x2695af++},_0x55cf2f,_0x5cfc18));}}return _0x4effef;};var getUserApplications=function(_0x5f1cd2,_0x355d8b){var _0x1a0e24=['wav',_0xecfe('0x19'),_0xecfe('0x1a')];var _0x22efd9={'context':_0x5f1cd2[_0xecfe('0x7')]||_0xecfe('0x1b'),'exten':_0x355d8b,'type':'system','isApp':![],'UserId':_0x5f1cd2['id']};var _0x3017bc=[{'app':'Set','appdata':_0xecfe('0x1c')}];if(_0x5f1cd2['extensionMonitor']&&_[_0xecfe('0x1d')](_0x1a0e24,_0x5f1cd2[_0xecfe('0x1e')])){_0x3017bc[_0xecfe('0xc')]({'app':_0xecfe('0xe'),'appdata':_0xecfe('0x1f')});_0x3017bc['push']({'app':'Set','appdata':util[_0xecfe('0x9')](_0xecfe('0x20'),_0x5f1cd2['extensionMonitor'])});_0x3017bc[_0xecfe('0xc')]({'app':'Dial','appdata':util[_0xecfe('0x9')](_0xecfe('0x21'),_0x5f1cd2[_0xecfe('0x16')])});}else{_0x3017bc[_0xecfe('0xc')]({'app':'Dial','appdata':util[_0xecfe('0x9')](_0xecfe('0x22'),_0x5f1cd2[_0xecfe('0x16')])});}_0x3017bc['push']({'app':_0xecfe('0x23')});for(var _0x5b3308=0x0;_0x5b3308<_0x3017bc[_0xecfe('0x6')];_0x5b3308++){_0x3017bc[_0x5b3308]['priority']=_0x5b3308+0x1;_0x3017bc[_0x5b3308]=_['defaults'](_0x3017bc[_0x5b3308],_0x22efd9);}return _0x3017bc;};var getChanSpyPromise=function(_0x1cf67c,_0x595fe3){return new BPromise(function(_0x161251,_0x14e2d1){return _0x1cf67c[_0xecfe('0x24')][_0xecfe('0x25')]()['then'](function(_0x2f3c95){if(_0x2f3c95){var _0x4059f3=getChanSpyApplications(_0x595fe3,_0x595fe3['internal'],_0x2f3c95);if(_0x595fe3[_0xecfe('0x26')]!=_0x595fe3[_0xecfe('0x16')]){_0x4059f3=_0x4059f3[_0xecfe('0x27')](getChanSpyApplications(_0x595fe3,_0x595fe3[_0xecfe('0x16')],_0x2f3c95));}return _0x161251(_0x4059f3);}return _0x161251([]);})[_0xecfe('0x28')](function(_0xf9ebe1){_0x14e2d1(_0xf9ebe1);});});};module[_0xecfe('0x29')]=function(_0x4d551f,_0x557051){var _0x563ac2=_0x4d551f[_0xecfe('0x2a')];return _0x4d551f['define'](_0xecfe('0x2b'),attributes,{'tableName':_0xecfe('0x2c'),'charset':'utf8','collate':_0xecfe('0x2d'),'hooks':{'beforeCreate':function(_0x419ae9,_0x1e2d3c,_0x46a425){var _0x4a9944=typeof _0x419ae9[_0xecfe('0x2e')]===_0xecfe('0x2f')?BPromise['resolve'](null):_0x563ac2[_0xecfe('0x30')]['find']({'where':{'id':_0x419ae9['userProfileId']}});_0x4a9944['then'](function(_0x433aa6){if(_0x433aa6){_0x419ae9[_0xecfe('0x31')]=_0x433aa6['privacyEnabled'];}})['then'](function(){_0x419ae9['updateMd5Password']();_0x419ae9[_0xecfe('0x32')](_0x46a425);})['catch'](function(_0x47394c){_0x46a425(_0x47394c);});},'beforeUpdate':function(_0x5a0c72,_0x3e24e0,_0x459789){Promise[_0xecfe('0x33')]()['then'](function(){if(_0x5a0c72[_0xecfe('0x34')](_0xecfe('0x2e'))===![])return;return _0x563ac2[_0xecfe('0x30')]['find']({'where':{'id':_0x5a0c72[_0xecfe('0x2e')]}})[_0xecfe('0x35')](function(_0xea8dde){if(_0xea8dde)_0x5a0c72['privacyEnabled']=_0xea8dde[_0xecfe('0x31')];return;});})['then'](function(){if(_0x5a0c72[_0xecfe('0x34')](_0xecfe('0x14'))){_0x5a0c72['updateMd5Password']();return _0x5a0c72['updatePassword'](_0x459789);}_0x459789();})[_0xecfe('0x28')](function(_0x13a7a6){_0x459789(_0x13a7a6);});},'afterCreate':function(_0x13c0e2,_0x4db6c5,_0x5ed9df){var _0x3da188=getUserApplications(_0x13c0e2,_0x13c0e2[_0xecfe('0x26')]);if(_0x13c0e2['internal']!=_0x13c0e2[_0xecfe('0x16')]){_0x3da188=_0x3da188[_0xecfe('0x27')](getUserApplications(_0x13c0e2,_0x13c0e2[_0xecfe('0x16')]));}return _0x563ac2[_0xecfe('0x36')][_0xecfe('0x37')](_0x3da188)['then'](function(){if(_0x13c0e2[_0xecfe('0x38')]){return getChanSpyPromise(_0x563ac2,_0x13c0e2);}})[_0xecfe('0x35')](function(_0x532044){if(_0x532044&&_0x532044[_0xecfe('0x6')]){return _0x563ac2['VoiceExtension'][_0xecfe('0x37')](_0x532044);}})[_0xecfe('0x35')](function(){_0x5ed9df();})[_0xecfe('0x28')](function(_0x3fcd7b){_0x5ed9df(_0x3fcd7b);});},'afterUpdate':function(_0x16438c,_0xe25712,_0x4c1fe9){return BPromise['resolve']()[_0xecfe('0x35')](function(){if(_0x16438c[_0xecfe('0x34')](_0xecfe('0x38'))||_0x16438c[_0xecfe('0x34')](_0xecfe('0x7'))){return _0x563ac2['VoiceExtension']['destroy']({'where':{'UserId':_0x16438c['id'],'type':'system','ChanSpyId':{'$ne':null}}})[_0xecfe('0x35')](function(){if(_0x16438c[_0xecfe('0x38')]){return getChanSpyPromise(_0x563ac2,_0x16438c)[_0xecfe('0x35')](function(_0x337b2c){if(_0x337b2c&&_0x337b2c[_0xecfe('0x6')]){return _0x563ac2['VoiceExtension'][_0xecfe('0x37')](_0x337b2c);}});}});}})[_0xecfe('0x35')](function(){if(_0x16438c[_0xecfe('0x34')](_0xecfe('0x1e'))||_0x16438c[_0xecfe('0x34')](_0xecfe('0x7'))){return _0x563ac2[_0xecfe('0x36')][_0xecfe('0x39')]({'where':{'UserId':_0x16438c['id'],'type':_0xecfe('0x8'),'ChanSpyId':null}})[_0xecfe('0x35')](function(){var _0x39a563=getUserApplications(_0x16438c,_0x16438c[_0xecfe('0x26')]);if(_0x16438c[_0xecfe('0x26')]!=_0x16438c[_0xecfe('0x16')]){_0x39a563=_0x39a563[_0xecfe('0x27')](getUserApplications(_0x16438c,_0x16438c[_0xecfe('0x16')]));}return _0x563ac2[_0xecfe('0x36')][_0xecfe('0x37')](_0x39a563);});}})[_0xecfe('0x35')](function(){_0x4c1fe9();})['catch'](function(_0x12c0e7){_0x4c1fe9(_0x12c0e7);});},'afterDestroy':function(_0x483326,_0xebb981){return _0x563ac2[_0xecfe('0x36')][_0xecfe('0x39')]({'where':{'UserId':_0x483326['id'],'type':_0xecfe('0x8')}});}},'instanceMethods':{'authenticate':function(_0x5b8656,_0x4b41a9){if(!_0x4b41a9){return this[_0xecfe('0x14')]===this[_0xecfe('0x3a')](_0x5b8656);}var _0x5c964a=this;this[_0xecfe('0x3a')](_0x5b8656,function(_0x52c9b3,_0x38c568){if(_0x52c9b3){_0x4b41a9(_0x52c9b3);}if(_0x5c964a[_0xecfe('0x14')]===_0x38c568){_0x4b41a9(null,!![]);}else{_0x4b41a9(null,![]);}});},'makeSalt':function(_0x5da4f4,_0x3680ae){var _0x15e963=0x10;if(typeof arguments[0x0]==='function'){_0x3680ae=arguments[0x0];_0x5da4f4=_0x15e963;}else if(typeof arguments[0x1]===_0xecfe('0x3b')){_0x3680ae=arguments[0x1];}else{throw new Error(_0xecfe('0x3c'));}if(!_0x5da4f4){_0x5da4f4=_0x15e963;}return crypto[_0xecfe('0x3d')](_0x5da4f4,function(_0x4b04f2,_0x169fc2){if(_0x4b04f2){_0x3680ae(_0x4b04f2);}return _0x3680ae(null,_0x169fc2[_0xecfe('0x3e')](_0xecfe('0x3f')));});},'encryptPassword':function(_0x27627a,_0x48144a){if(!_0x27627a||!this[_0xecfe('0x40')]){return _0x48144a?_0x48144a(null):null;}var _0x8d855=0x2710;var _0x256e58=0x40;var _0x490ab3=new Buffer(this['salt'],_0xecfe('0x3f'));if(!_0x48144a){return crypto[_0xecfe('0x41')](_0x27627a,_0x490ab3,_0x8d855,_0x256e58,_0xecfe('0x42'))[_0xecfe('0x3e')](_0xecfe('0x3f'));}return crypto[_0xecfe('0x43')](_0x27627a,_0x490ab3,_0x8d855,_0x256e58,'sha1',function(_0x44eafe,_0x1e257e){if(_0x44eafe){_0x48144a(_0x44eafe);}return _0x48144a(null,_0x1e257e[_0xecfe('0x3e')](_0xecfe('0x3f')));});},'updatePassword':function(_0x5d2086){if(!this[_0xecfe('0x14')]){return _0x5d2086(null);}if(!validatePresenceOf(this[_0xecfe('0x14')])&&authTypes[_0xecfe('0x44')](this['provider'])===-0x1){_0x5d2086(new Error(_0xecfe('0x45')));}var _0x7c5500=this;this['makeSalt'](function(_0x132df7,_0x50bc1b){if(_0x132df7){return _0x5d2086(_0x132df7);}_0x7c5500[_0xecfe('0x40')]=_0x50bc1b;_0x7c5500[_0xecfe('0x3a')](_0x7c5500['password'],function(_0x125525,_0x2afe68){if(_0x125525){_0x5d2086(_0x125525);}_0x7c5500[_0xecfe('0x14')]=_0x2afe68;_0x5d2086(null);});});},'updateMd5Password':function(){this[_0xecfe('0x46')]=md5(this[_0xecfe('0x16')]+_0xecfe('0x47')+this[_0xecfe('0x14')]);return this[_0xecfe('0x46')];}}});};
\ No newline at end of file
+var _0xc5d3=['privacyEnabled','changed','find','bulkCreate','VoiceExtension','destroy','system','function','Missing\x20Callback','randomBytes','toString','base64','salt','pbkdf2Sync','sha1','indexOf','Invalid\x20password','encryptPassword','md5secret','bluebird','crypto','util','md5','lodash','google','from-sip','length','format','push','merge','CDR(type)=%s','chanspy','record','Authenticate','password','ChanSpy','SIP/%s,%s','options','join','StopMixMonitor','wav','gsm','context','Set','CDR(type)=internal','extensionMonitor','includes','_XCALLY_MIXMONITOR_UNIQUEID=${UNIQUEID}','_XCALLY_MIXMONITOR_FORMAT=%s','SIP/%s,,tTxXU(xcally-mixmonitor-context)','Dial','SIP/%s,,tTxX','priority','defaults','findAll','then','internal','name','catch','exports','models','User','users','utf8','undefined','resolve','UserProfile','userProfileId'];(function(_0x2711ec,_0x264584){var _0x468e1c=function(_0x16cb28){while(--_0x16cb28){_0x2711ec['push'](_0x2711ec['shift']());}};_0x468e1c(++_0x264584);}(_0xc5d3,0x123));var _0x3c5d=function(_0x5e2751,_0x518a55){_0x5e2751=_0x5e2751-0x0;var _0x139a39=_0xc5d3[_0x5e2751];return _0x139a39;};'use strict';var BPromise=require(_0x3c5d('0x0'));var crypto=require(_0x3c5d('0x1'));var util=require(_0x3c5d('0x2'));var md5=require(_0x3c5d('0x3'));var _=require(_0x3c5d('0x4'));var attributes=require('./user.attributes');var authTypes=[_0x3c5d('0x5')];var validatePresenceOf=function(_0x1e1b08){return _0x1e1b08&&_0x1e1b08['length'];};var getChanSpyApplications=function(_0x302a91,_0x23b0b1,_0x3835a0){var _0x23c73a={'context':_0x302a91['context']||_0x3c5d('0x6'),'type':'system','isApp':![],'UserId':_0x302a91['id']};var _0xb5a1c1=[];for(var _0x1b56bf=0x0,_0x247305=0x1;_0x1b56bf<_0x3835a0[_0x3c5d('0x7')];_0x1b56bf++,_0x247305=0x1){var _0x52ad71={'exten':util[_0x3c5d('0x8')]('%s%s',_0x3835a0[_0x1b56bf]['prefix'],_0x23b0b1),'ChanSpyId':_0x3835a0[_0x1b56bf]['id']};_0xb5a1c1[_0x3c5d('0x9')](_[_0x3c5d('0xa')]({'app':'Set','appdata':util['format'](_0x3c5d('0xb'),_0x3c5d('0xc')),'priority':_0x247305++},_0x23c73a,_0x52ad71));if(_0x3835a0[_0x1b56bf][_0x3c5d('0xd')]){_0xb5a1c1[_0x3c5d('0x9')](_[_0x3c5d('0xa')]({'app':'MixMonitor','appdata':util[_0x3c5d('0x8')]('${UNIQUEID}.%s,a',_0x3835a0[_0x1b56bf]['recordingFormat']),'priority':_0x247305++},_0x23c73a,_0x52ad71));}if(_0x3835a0[_0x1b56bf]['auth']){_0xb5a1c1[_0x3c5d('0x9')](_[_0x3c5d('0xa')]({'app':_0x3c5d('0xe'),'appdata':_0x3835a0[_0x1b56bf][_0x3c5d('0xf')],'priority':_0x247305++},_0x23c73a,_0x52ad71));}_0xb5a1c1['push'](_[_0x3c5d('0xa')]({'app':_0x3c5d('0x10'),'appdata':util[_0x3c5d('0x8')](_0x3c5d('0x11'),_0x302a91['name'],_0x3835a0[_0x1b56bf][_0x3c5d('0x12')]?_0x3835a0[_0x1b56bf][_0x3c5d('0x12')][_0x3c5d('0x13')](''):''),'priority':_0x247305++},_0x23c73a,_0x52ad71));if(_0x3835a0[_0x1b56bf][_0x3c5d('0xd')]){_0xb5a1c1[_0x3c5d('0x9')](_['merge']({'app':_0x3c5d('0x14'),'priority':_0x247305++},_0x23c73a,_0x52ad71));}}return _0xb5a1c1;};var getUserApplications=function(_0x425e75,_0x23d335){var _0x580696=[_0x3c5d('0x15'),'WAV',_0x3c5d('0x16')];var _0x44e998={'context':_0x425e75[_0x3c5d('0x17')]||_0x3c5d('0x6'),'exten':_0x23d335,'type':'system','isApp':![],'UserId':_0x425e75['id']};var _0x3700cf=[{'app':_0x3c5d('0x18'),'appdata':_0x3c5d('0x19')}];if(_0x425e75[_0x3c5d('0x1a')]&&_[_0x3c5d('0x1b')](_0x580696,_0x425e75[_0x3c5d('0x1a')])){_0x3700cf[_0x3c5d('0x9')]({'app':_0x3c5d('0x18'),'appdata':_0x3c5d('0x1c')});_0x3700cf[_0x3c5d('0x9')]({'app':_0x3c5d('0x18'),'appdata':util[_0x3c5d('0x8')](_0x3c5d('0x1d'),_0x425e75[_0x3c5d('0x1a')])});_0x3700cf[_0x3c5d('0x9')]({'app':'Dial','appdata':util[_0x3c5d('0x8')](_0x3c5d('0x1e'),_0x425e75['name'])});}else{_0x3700cf['push']({'app':_0x3c5d('0x1f'),'appdata':util['format'](_0x3c5d('0x20'),_0x425e75['name'])});}_0x3700cf[_0x3c5d('0x9')]({'app':'Hangup'});for(var _0x51eadb=0x0;_0x51eadb<_0x3700cf[_0x3c5d('0x7')];_0x51eadb++){_0x3700cf[_0x51eadb][_0x3c5d('0x21')]=_0x51eadb+0x1;_0x3700cf[_0x51eadb]=_[_0x3c5d('0x22')](_0x3700cf[_0x51eadb],_0x44e998);}return _0x3700cf;};var getChanSpyPromise=function(_0x530035,_0x1879d2){return new BPromise(function(_0x272b24,_0x5924ca){return _0x530035['VoiceChanSpy'][_0x3c5d('0x23')]()[_0x3c5d('0x24')](function(_0x4cf0a8){if(_0x4cf0a8){var _0x4a7980=getChanSpyApplications(_0x1879d2,_0x1879d2[_0x3c5d('0x25')],_0x4cf0a8);if(_0x1879d2['internal']!=_0x1879d2['name']){_0x4a7980=_0x4a7980['concat'](getChanSpyApplications(_0x1879d2,_0x1879d2[_0x3c5d('0x26')],_0x4cf0a8));}return _0x272b24(_0x4a7980);}return _0x272b24([]);})[_0x3c5d('0x27')](function(_0x5942b3){_0x5924ca(_0x5942b3);});});};module[_0x3c5d('0x28')]=function(_0x182d77,_0x314af8){var _0x2f16f6=_0x182d77[_0x3c5d('0x29')];return _0x182d77['define'](_0x3c5d('0x2a'),attributes,{'tableName':_0x3c5d('0x2b'),'charset':_0x3c5d('0x2c'),'collate':'utf8_bin','hooks':{'beforeCreate':function(_0x298597,_0x5d33e2,_0xe7df03){var _0x2819a4=typeof _0x298597['userProfileId']===_0x3c5d('0x2d')?BPromise[_0x3c5d('0x2e')](null):_0x2f16f6[_0x3c5d('0x2f')]['find']({'where':{'id':_0x298597[_0x3c5d('0x30')]}});_0x2819a4[_0x3c5d('0x24')](function(_0x3adeda){if(_0x3adeda){_0x298597[_0x3c5d('0x31')]=_0x3adeda[_0x3c5d('0x31')];}})[_0x3c5d('0x24')](function(){_0x298597['updateMd5Password']();_0x298597['updatePassword'](_0xe7df03);})[_0x3c5d('0x27')](function(_0x15334f){_0xe7df03(_0x15334f);});},'beforeUpdate':function(_0x512292,_0x364453,_0x17359d){Promise['resolve']()['then'](function(){if(_0x512292[_0x3c5d('0x32')](_0x3c5d('0x30'))===![])return;return _0x2f16f6['UserProfile'][_0x3c5d('0x33')]({'where':{'id':_0x512292[_0x3c5d('0x30')]}})[_0x3c5d('0x24')](function(_0x1c8cf7){if(_0x1c8cf7)_0x512292['privacyEnabled']=_0x1c8cf7['privacyEnabled'];return;});})['then'](function(){if(_0x512292[_0x3c5d('0x32')](_0x3c5d('0xf'))){_0x512292['updateMd5Password']();return _0x512292['updatePassword'](_0x17359d);}_0x17359d();})[_0x3c5d('0x27')](function(_0x58aa70){_0x17359d(_0x58aa70);});},'afterCreate':function(_0x3d4fe2,_0x5348e9,_0x5d8178){var _0x114e13=getUserApplications(_0x3d4fe2,_0x3d4fe2[_0x3c5d('0x25')]);if(_0x3d4fe2[_0x3c5d('0x25')]!=_0x3d4fe2[_0x3c5d('0x26')]){_0x114e13=_0x114e13['concat'](getUserApplications(_0x3d4fe2,_0x3d4fe2[_0x3c5d('0x26')]));}return _0x2f16f6['VoiceExtension'][_0x3c5d('0x34')](_0x114e13)[_0x3c5d('0x24')](function(){if(_0x3d4fe2[_0x3c5d('0xc')]){return getChanSpyPromise(_0x2f16f6,_0x3d4fe2);}})[_0x3c5d('0x24')](function(_0x5e4a7f){if(_0x5e4a7f&&_0x5e4a7f[_0x3c5d('0x7')]){return _0x2f16f6['VoiceExtension'][_0x3c5d('0x34')](_0x5e4a7f);}})[_0x3c5d('0x24')](function(){_0x5d8178();})['catch'](function(_0x426488){_0x5d8178(_0x426488);});},'afterUpdate':function(_0x1fcf50,_0x4dc525,_0x4ac000){return BPromise['resolve']()[_0x3c5d('0x24')](function(){if(_0x1fcf50[_0x3c5d('0x32')](_0x3c5d('0xc'))||_0x1fcf50[_0x3c5d('0x32')](_0x3c5d('0x17'))){return _0x2f16f6[_0x3c5d('0x35')][_0x3c5d('0x36')]({'where':{'UserId':_0x1fcf50['id'],'type':_0x3c5d('0x37'),'ChanSpyId':{'$ne':null}}})[_0x3c5d('0x24')](function(){if(_0x1fcf50[_0x3c5d('0xc')]){return getChanSpyPromise(_0x2f16f6,_0x1fcf50)[_0x3c5d('0x24')](function(_0x25c194){if(_0x25c194&&_0x25c194[_0x3c5d('0x7')]){return _0x2f16f6[_0x3c5d('0x35')][_0x3c5d('0x34')](_0x25c194);}});}});}})[_0x3c5d('0x24')](function(){if(_0x1fcf50['changed'](_0x3c5d('0x1a'))||_0x1fcf50['changed'](_0x3c5d('0x17'))){return _0x2f16f6[_0x3c5d('0x35')][_0x3c5d('0x36')]({'where':{'UserId':_0x1fcf50['id'],'type':_0x3c5d('0x37'),'ChanSpyId':null}})[_0x3c5d('0x24')](function(){var _0x2e4d6d=getUserApplications(_0x1fcf50,_0x1fcf50[_0x3c5d('0x25')]);if(_0x1fcf50[_0x3c5d('0x25')]!=_0x1fcf50[_0x3c5d('0x26')]){_0x2e4d6d=_0x2e4d6d['concat'](getUserApplications(_0x1fcf50,_0x1fcf50[_0x3c5d('0x26')]));}return _0x2f16f6['VoiceExtension']['bulkCreate'](_0x2e4d6d);});}})['then'](function(){_0x4ac000();})[_0x3c5d('0x27')](function(_0x4730a6){_0x4ac000(_0x4730a6);});},'afterDestroy':function(_0x248b14,_0x173845){return _0x2f16f6['VoiceExtension'][_0x3c5d('0x36')]({'where':{'UserId':_0x248b14['id'],'type':_0x3c5d('0x37')}});}},'instanceMethods':{'authenticate':function(_0x3cab07,_0x2203a5){if(!_0x2203a5){return this[_0x3c5d('0xf')]===this['encryptPassword'](_0x3cab07);}var _0x5c3529=this;this['encryptPassword'](_0x3cab07,function(_0x58d808,_0x5c19a0){if(_0x58d808){_0x2203a5(_0x58d808);}if(_0x5c3529[_0x3c5d('0xf')]===_0x5c19a0){_0x2203a5(null,!![]);}else{_0x2203a5(null,![]);}});},'makeSalt':function(_0x4c5808,_0x15eac7){var _0x9a39ef=0x10;if(typeof arguments[0x0]===_0x3c5d('0x38')){_0x15eac7=arguments[0x0];_0x4c5808=_0x9a39ef;}else if(typeof arguments[0x1]===_0x3c5d('0x38')){_0x15eac7=arguments[0x1];}else{throw new Error(_0x3c5d('0x39'));}if(!_0x4c5808){_0x4c5808=_0x9a39ef;}return crypto[_0x3c5d('0x3a')](_0x4c5808,function(_0x17000f,_0x5e5d74){if(_0x17000f){_0x15eac7(_0x17000f);}return _0x15eac7(null,_0x5e5d74[_0x3c5d('0x3b')](_0x3c5d('0x3c')));});},'encryptPassword':function(_0x439e4d,_0x350055){if(!_0x439e4d||!this[_0x3c5d('0x3d')]){return _0x350055?_0x350055(null):null;}var _0x3411f6=0x2710;var _0x2bd84b=0x40;var _0x5859fb=new Buffer(this[_0x3c5d('0x3d')],_0x3c5d('0x3c'));if(!_0x350055){return crypto[_0x3c5d('0x3e')](_0x439e4d,_0x5859fb,_0x3411f6,_0x2bd84b,_0x3c5d('0x3f'))[_0x3c5d('0x3b')](_0x3c5d('0x3c'));}return crypto['pbkdf2'](_0x439e4d,_0x5859fb,_0x3411f6,_0x2bd84b,_0x3c5d('0x3f'),function(_0x2f6c59,_0x3f3863){if(_0x2f6c59){_0x350055(_0x2f6c59);}return _0x350055(null,_0x3f3863['toString'](_0x3c5d('0x3c')));});},'updatePassword':function(_0x44dc98){if(!this[_0x3c5d('0xf')]){return _0x44dc98(null);}if(!validatePresenceOf(this['password'])&&authTypes[_0x3c5d('0x40')](this['provider'])===-0x1){_0x44dc98(new Error(_0x3c5d('0x41')));}var _0x5044bd=this;this['makeSalt'](function(_0x16d484,_0x8bb232){if(_0x16d484){return _0x44dc98(_0x16d484);}_0x5044bd[_0x3c5d('0x3d')]=_0x8bb232;_0x5044bd[_0x3c5d('0x42')](_0x5044bd[_0x3c5d('0xf')],function(_0x4e1b31,_0x64cc8c){if(_0x4e1b31){_0x44dc98(_0x4e1b31);}_0x5044bd[_0x3c5d('0xf')]=_0x64cc8c;_0x44dc98(null);});});},'updateMd5Password':function(){this[_0x3c5d('0x43')]=md5(this[_0x3c5d('0x26')]+':asterisk:'+this[_0x3c5d('0xf')]);return this[_0x3c5d('0x43')];}}});};
\ No newline at end of file