Built motion from commit 0900f080.|2.5.45
[motion2.git] / server / api / user / user.model.js
index 0fd7d47..c874bfc 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xc5c4=['sha1','pbkdf2','indexOf','makeSalt','salt','md5secret',':asterisk:','bluebird','crypto','util','md5','./user.attributes','google','length','context','from-sip','system','prefix','push','merge','format','CDR(type)=%s','record','MixMonitor','recordingFormat','auth','password','ChanSpy','SIP/%s,%s','options','join','wav','WAV','gsm','Set','CDR(type)=internal','includes','extensionMonitor','_XCALLY_MIXMONITOR_UNIQUEID=${UNIQUEID}','_XCALLY_MIXMONITOR_FORMAT=%s','Dial','SIP/%s,,tTxXU(xcally-mixmonitor-context)','name','Hangup','priority','defaults','VoiceChanSpy','then','internal','concat','catch','exports','models','define','users','utf8','utf8_bin','resolve','find','privacyEnabled','updatePassword','changed','userProfileId','UserProfile','updateMd5Password','VoiceExtension','bulkCreate','chanspy','destroy','encryptPassword','function','Missing\x20Callback','randomBytes','toString','base64'];(function(_0x405179,_0x52ddc0){var _0x51e093=function(_0x26d816){while(--_0x26d816){_0x405179['push'](_0x405179['shift']());}};_0x51e093(++_0x52ddc0);}(_0xc5c4,0x17e));var _0x4c5c=function(_0x2895cb,_0x51d03c){_0x2895cb=_0x2895cb-0x0;var _0x22e540=_0xc5c4[_0x2895cb];return _0x22e540;};'use strict';var BPromise=require(_0x4c5c('0x0'));var crypto=require(_0x4c5c('0x1'));var util=require(_0x4c5c('0x2'));var md5=require(_0x4c5c('0x3'));var _=require('lodash');var attributes=require(_0x4c5c('0x4'));var authTypes=[_0x4c5c('0x5')];var validatePresenceOf=function(_0x5467a1){return _0x5467a1&&_0x5467a1[_0x4c5c('0x6')];};var getChanSpyApplications=function(_0x19fedd,_0x2c493b,_0x560854){var _0x496a78={'context':_0x19fedd[_0x4c5c('0x7')]||_0x4c5c('0x8'),'type':_0x4c5c('0x9'),'isApp':![],'UserId':_0x19fedd['id']};var _0x3fcde5=[];for(var _0x5cdd4d=0x0,_0xa90e21=0x1;_0x5cdd4d<_0x560854[_0x4c5c('0x6')];_0x5cdd4d++,_0xa90e21=0x1){var _0x515aff={'exten':util['format']('%s%s',_0x560854[_0x5cdd4d][_0x4c5c('0xa')],_0x2c493b),'ChanSpyId':_0x560854[_0x5cdd4d]['id']};_0x3fcde5[_0x4c5c('0xb')](_[_0x4c5c('0xc')]({'app':'Set','appdata':util[_0x4c5c('0xd')](_0x4c5c('0xe'),'chanspy'),'priority':_0xa90e21++},_0x496a78,_0x515aff));if(_0x560854[_0x5cdd4d][_0x4c5c('0xf')]){_0x3fcde5[_0x4c5c('0xb')](_[_0x4c5c('0xc')]({'app':_0x4c5c('0x10'),'appdata':util[_0x4c5c('0xd')]('${UNIQUEID}.%s,a',_0x560854[_0x5cdd4d][_0x4c5c('0x11')]),'priority':_0xa90e21++},_0x496a78,_0x515aff));}if(_0x560854[_0x5cdd4d][_0x4c5c('0x12')]){_0x3fcde5[_0x4c5c('0xb')](_[_0x4c5c('0xc')]({'app':'Authenticate','appdata':_0x560854[_0x5cdd4d][_0x4c5c('0x13')],'priority':_0xa90e21++},_0x496a78,_0x515aff));}_0x3fcde5[_0x4c5c('0xb')](_['merge']({'app':_0x4c5c('0x14'),'appdata':util['format'](_0x4c5c('0x15'),_0x19fedd['name'],_0x560854[_0x5cdd4d][_0x4c5c('0x16')]?_0x560854[_0x5cdd4d][_0x4c5c('0x16')][_0x4c5c('0x17')](''):''),'priority':_0xa90e21++},_0x496a78,_0x515aff));if(_0x560854[_0x5cdd4d][_0x4c5c('0xf')]){_0x3fcde5[_0x4c5c('0xb')](_[_0x4c5c('0xc')]({'app':'StopMixMonitor','priority':_0xa90e21++},_0x496a78,_0x515aff));}}return _0x3fcde5;};var getUserApplications=function(_0x4d9773,_0x8a6cf4){var _0x3947a4=[_0x4c5c('0x18'),_0x4c5c('0x19'),_0x4c5c('0x1a')];var _0x4368e0={'context':_0x4d9773[_0x4c5c('0x7')]||_0x4c5c('0x8'),'exten':_0x8a6cf4,'type':_0x4c5c('0x9'),'isApp':![],'UserId':_0x4d9773['id']};var _0x4434fb=[{'app':_0x4c5c('0x1b'),'appdata':_0x4c5c('0x1c')}];if(_0x4d9773['extensionMonitor']&&_[_0x4c5c('0x1d')](_0x3947a4,_0x4d9773[_0x4c5c('0x1e')])){_0x4434fb[_0x4c5c('0xb')]({'app':_0x4c5c('0x1b'),'appdata':_0x4c5c('0x1f')});_0x4434fb[_0x4c5c('0xb')]({'app':_0x4c5c('0x1b'),'appdata':util[_0x4c5c('0xd')](_0x4c5c('0x20'),_0x4d9773['extensionMonitor'])});_0x4434fb[_0x4c5c('0xb')]({'app':_0x4c5c('0x21'),'appdata':util[_0x4c5c('0xd')](_0x4c5c('0x22'),_0x4d9773[_0x4c5c('0x23')])});}else{_0x4434fb[_0x4c5c('0xb')]({'app':'Dial','appdata':util[_0x4c5c('0xd')]('SIP/%s,,tTxX',_0x4d9773['name'])});}_0x4434fb[_0x4c5c('0xb')]({'app':_0x4c5c('0x24')});for(var _0x5924c6=0x0;_0x5924c6<_0x4434fb[_0x4c5c('0x6')];_0x5924c6++){_0x4434fb[_0x5924c6][_0x4c5c('0x25')]=_0x5924c6+0x1;_0x4434fb[_0x5924c6]=_[_0x4c5c('0x26')](_0x4434fb[_0x5924c6],_0x4368e0);}return _0x4434fb;};var getChanSpyPromise=function(_0x1b5ee0,_0x28dd7a){return new BPromise(function(_0xb84c4b,_0x39b3bb){return _0x1b5ee0[_0x4c5c('0x27')]['findAll']()[_0x4c5c('0x28')](function(_0x34ed98){if(_0x34ed98){var _0x4c8d4e=getChanSpyApplications(_0x28dd7a,_0x28dd7a[_0x4c5c('0x29')],_0x34ed98);if(_0x28dd7a[_0x4c5c('0x29')]!=_0x28dd7a[_0x4c5c('0x23')]){_0x4c8d4e=_0x4c8d4e[_0x4c5c('0x2a')](getChanSpyApplications(_0x28dd7a,_0x28dd7a[_0x4c5c('0x23')],_0x34ed98));}return _0xb84c4b(_0x4c8d4e);}return _0xb84c4b([]);})[_0x4c5c('0x2b')](function(_0x4b91e1){_0x39b3bb(_0x4b91e1);});});};module[_0x4c5c('0x2c')]=function(_0x54068e,_0x112c82){var _0x3c6004=_0x54068e[_0x4c5c('0x2d')];return _0x54068e[_0x4c5c('0x2e')]('User',attributes,{'tableName':_0x4c5c('0x2f'),'charset':_0x4c5c('0x30'),'collate':_0x4c5c('0x31'),'hooks':{'beforeCreate':function(_0x3f850a,_0x34d7de,_0x1cf285){var _0x58aa84=typeof _0x3f850a['userProfileId']==='undefined'?BPromise[_0x4c5c('0x32')](null):_0x3c6004['UserProfile'][_0x4c5c('0x33')]({'where':{'id':_0x3f850a['userProfileId']}});_0x58aa84[_0x4c5c('0x28')](function(_0x1e0421){if(_0x1e0421){_0x3f850a[_0x4c5c('0x34')]=_0x1e0421[_0x4c5c('0x34')];}})[_0x4c5c('0x28')](function(){_0x3f850a['updateMd5Password']();_0x3f850a[_0x4c5c('0x35')](_0x1cf285);})['catch'](function(_0x14cf5c){_0x1cf285(_0x14cf5c);});},'beforeUpdate':function(_0xdb951c,_0x46df23,_0x2af66e){Promise[_0x4c5c('0x32')]()[_0x4c5c('0x28')](function(){if(_0xdb951c[_0x4c5c('0x36')](_0x4c5c('0x37'))===![])return;return _0x3c6004[_0x4c5c('0x38')]['find']({'where':{'id':_0xdb951c[_0x4c5c('0x37')]}})[_0x4c5c('0x28')](function(_0x335e93){if(_0x335e93)_0xdb951c[_0x4c5c('0x34')]=_0x335e93[_0x4c5c('0x34')];return;});})[_0x4c5c('0x28')](function(){if(_0xdb951c[_0x4c5c('0x36')](_0x4c5c('0x13'))){_0xdb951c[_0x4c5c('0x39')]();return _0xdb951c['updatePassword'](_0x2af66e);}_0x2af66e();})['catch'](function(_0x23fe78){_0x2af66e(_0x23fe78);});},'afterCreate':function(_0x224f37,_0x3476e0,_0x1fdffb){var _0xe11ead=getUserApplications(_0x224f37,_0x224f37[_0x4c5c('0x29')]);if(_0x224f37[_0x4c5c('0x29')]!=_0x224f37[_0x4c5c('0x23')]){_0xe11ead=_0xe11ead['concat'](getUserApplications(_0x224f37,_0x224f37['name']));}return _0x3c6004[_0x4c5c('0x3a')][_0x4c5c('0x3b')](_0xe11ead)[_0x4c5c('0x28')](function(){if(_0x224f37[_0x4c5c('0x3c')]){return getChanSpyPromise(_0x3c6004,_0x224f37);}})[_0x4c5c('0x28')](function(_0x38602a){if(_0x38602a&&_0x38602a[_0x4c5c('0x6')]){return _0x3c6004[_0x4c5c('0x3a')][_0x4c5c('0x3b')](_0x38602a);}})[_0x4c5c('0x28')](function(){_0x1fdffb();})['catch'](function(_0x1fb7ff){_0x1fdffb(_0x1fb7ff);});},'afterUpdate':function(_0x2b7a90,_0x4188a5,_0xceda36){return BPromise['resolve']()[_0x4c5c('0x28')](function(){if(_0x2b7a90[_0x4c5c('0x36')]('chanspy')||_0x2b7a90[_0x4c5c('0x36')](_0x4c5c('0x7'))){return _0x3c6004['VoiceExtension'][_0x4c5c('0x3d')]({'where':{'UserId':_0x2b7a90['id'],'type':_0x4c5c('0x9'),'ChanSpyId':{'$ne':null}}})[_0x4c5c('0x28')](function(){if(_0x2b7a90[_0x4c5c('0x3c')]){return getChanSpyPromise(_0x3c6004,_0x2b7a90)[_0x4c5c('0x28')](function(_0x1bd3f3){if(_0x1bd3f3&&_0x1bd3f3['length']){return _0x3c6004[_0x4c5c('0x3a')][_0x4c5c('0x3b')](_0x1bd3f3);}});}});}})['then'](function(){if(_0x2b7a90[_0x4c5c('0x36')](_0x4c5c('0x1e'))||_0x2b7a90[_0x4c5c('0x36')](_0x4c5c('0x7'))){return _0x3c6004[_0x4c5c('0x3a')][_0x4c5c('0x3d')]({'where':{'UserId':_0x2b7a90['id'],'type':'system','ChanSpyId':null}})[_0x4c5c('0x28')](function(){var _0x1708e5=getUserApplications(_0x2b7a90,_0x2b7a90['internal']);if(_0x2b7a90['internal']!=_0x2b7a90[_0x4c5c('0x23')]){_0x1708e5=_0x1708e5['concat'](getUserApplications(_0x2b7a90,_0x2b7a90[_0x4c5c('0x23')]));}return _0x3c6004[_0x4c5c('0x3a')][_0x4c5c('0x3b')](_0x1708e5);});}})[_0x4c5c('0x28')](function(){_0xceda36();})[_0x4c5c('0x2b')](function(_0x37e372){_0xceda36(_0x37e372);});},'afterDestroy':function(_0x682f64,_0x46e619){return _0x3c6004[_0x4c5c('0x3a')][_0x4c5c('0x3d')]({'where':{'UserId':_0x682f64['id'],'type':_0x4c5c('0x9')}});}},'instanceMethods':{'authenticate':function(_0x5db9e8,_0x3c7e52){if(!_0x3c7e52){return this[_0x4c5c('0x13')]===this[_0x4c5c('0x3e')](_0x5db9e8);}var _0xb3e877=this;this[_0x4c5c('0x3e')](_0x5db9e8,function(_0x187987,_0x5e4c54){if(_0x187987){_0x3c7e52(_0x187987);}if(_0xb3e877['password']===_0x5e4c54){_0x3c7e52(null,!![]);}else{_0x3c7e52(null,![]);}});},'makeSalt':function(_0x2badd0,_0x26b45){var _0xdfbcb1=0x10;if(typeof arguments[0x0]===_0x4c5c('0x3f')){_0x26b45=arguments[0x0];_0x2badd0=_0xdfbcb1;}else if(typeof arguments[0x1]===_0x4c5c('0x3f')){_0x26b45=arguments[0x1];}else{throw new Error(_0x4c5c('0x40'));}if(!_0x2badd0){_0x2badd0=_0xdfbcb1;}return crypto[_0x4c5c('0x41')](_0x2badd0,function(_0xa81b12,_0x579754){if(_0xa81b12){_0x26b45(_0xa81b12);}return _0x26b45(null,_0x579754[_0x4c5c('0x42')](_0x4c5c('0x43')));});},'encryptPassword':function(_0x3f4b6d,_0x320069){if(!_0x3f4b6d||!this['salt']){return _0x320069?_0x320069(null):null;}var _0x181733=0x2710;var _0x34f0bf=0x40;var _0x1beb0b=new Buffer(this['salt'],_0x4c5c('0x43'));if(!_0x320069){return crypto['pbkdf2Sync'](_0x3f4b6d,_0x1beb0b,_0x181733,_0x34f0bf,_0x4c5c('0x44'))[_0x4c5c('0x42')]('base64');}return crypto[_0x4c5c('0x45')](_0x3f4b6d,_0x1beb0b,_0x181733,_0x34f0bf,_0x4c5c('0x44'),function(_0x1e5c00,_0x2c8075){if(_0x1e5c00){_0x320069(_0x1e5c00);}return _0x320069(null,_0x2c8075[_0x4c5c('0x42')]('base64'));});},'updatePassword':function(_0x3fb3cd){if(!this[_0x4c5c('0x13')]){return _0x3fb3cd(null);}if(!validatePresenceOf(this[_0x4c5c('0x13')])&&authTypes[_0x4c5c('0x46')](this['provider'])===-0x1){_0x3fb3cd(new Error('Invalid\x20password'));}var _0x1c7eae=this;this[_0x4c5c('0x47')](function(_0x3011ee,_0x3b61db){if(_0x3011ee){return _0x3fb3cd(_0x3011ee);}_0x1c7eae[_0x4c5c('0x48')]=_0x3b61db;_0x1c7eae['encryptPassword'](_0x1c7eae['password'],function(_0x5ecf5e,_0xf534c7){if(_0x5ecf5e){_0x3fb3cd(_0x5ecf5e);}_0x1c7eae[_0x4c5c('0x13')]=_0xf534c7;_0x3fb3cd(null);});});},'updateMd5Password':function(){this[_0x4c5c('0x49')]=md5(this[_0x4c5c('0x23')]+_0x4c5c('0x4a')+this[_0x4c5c('0x13')]);return this[_0x4c5c('0x49')];}}});};
\ No newline at end of file
+var _0xc831=['password','userSetting','error','VoiceExtension','bulkCreate','destroy','encryptPassword','function','Missing\x20Callback','randomBytes','toString','base64','salt','pbkdf2Sync','sha1','pbkdf2','indexOf','provider','makeSalt','md5secret','bluebird','crypto','util','md5','google','context','length','format','%s%s','prefix','merge','Set','CDR(type)=%s','chanspy','push','MixMonitor','auth','Authenticate','SIP/%s,%s','name','options','join','record','wav','WAV','gsm','from-sip','system','includes','extensionMonitor','_XCALLY_MIXMONITOR_UNIQUEID=${UNIQUEID}','_XCALLY_MIXMONITOR_FORMAT=%s','Dial','SIP/%s,,tTxX','Hangup','defaults','VoiceChanSpy','findAll','then','internal','concat','exports','models','define','User','users','utf8','utf8_bin','userProfileId','undefined','resolve','privacyEnabled','updateMd5Password','updatePassword','catch','changed','UserProfile','find'];(function(_0x55c8d7,_0x2a4369){var _0x523dce=function(_0x1879e2){while(--_0x1879e2){_0x55c8d7['push'](_0x55c8d7['shift']());}};_0x523dce(++_0x2a4369);}(_0xc831,0xfe));var _0x1c83=function(_0x28b73a,_0x34a08b){_0x28b73a=_0x28b73a-0x0;var _0x5c0094=_0xc831[_0x28b73a];return _0x5c0094;};'use strict';var BPromise=require(_0x1c83('0x0'));var crypto=require(_0x1c83('0x1'));var util=require(_0x1c83('0x2'));var md5=require(_0x1c83('0x3'));var _=require('lodash');var attributes=require('./user.attributes');var authTypes=[_0x1c83('0x4')];var validatePresenceOf=function(_0x5e87de){return _0x5e87de&&_0x5e87de['length'];};var getChanSpyApplications=function(_0x3ce6e9,_0x38aea0,_0x3da4ad){var _0xd63733={'context':_0x3ce6e9[_0x1c83('0x5')]||'from-sip','type':'system','isApp':![],'UserId':_0x3ce6e9['id']};var _0x3a7921=[];for(var _0x16714a=0x0,_0x8f6c15=0x1;_0x16714a<_0x3da4ad[_0x1c83('0x6')];_0x16714a++,_0x8f6c15=0x1){var _0x2a12c3={'exten':util[_0x1c83('0x7')](_0x1c83('0x8'),_0x3da4ad[_0x16714a][_0x1c83('0x9')],_0x38aea0),'ChanSpyId':_0x3da4ad[_0x16714a]['id']};_0x3a7921['push'](_[_0x1c83('0xa')]({'app':_0x1c83('0xb'),'appdata':util[_0x1c83('0x7')](_0x1c83('0xc'),_0x1c83('0xd')),'priority':_0x8f6c15++},_0xd63733,_0x2a12c3));if(_0x3da4ad[_0x16714a]['record']){_0x3a7921[_0x1c83('0xe')](_['merge']({'app':_0x1c83('0xf'),'appdata':util[_0x1c83('0x7')]('${UNIQUEID}.%s,a',_0x3da4ad[_0x16714a]['recordingFormat']),'priority':_0x8f6c15++},_0xd63733,_0x2a12c3));}if(_0x3da4ad[_0x16714a][_0x1c83('0x10')]){_0x3a7921[_0x1c83('0xe')](_[_0x1c83('0xa')]({'app':_0x1c83('0x11'),'appdata':_0x3da4ad[_0x16714a]['password'],'priority':_0x8f6c15++},_0xd63733,_0x2a12c3));}_0x3a7921[_0x1c83('0xe')](_['merge']({'app':'ChanSpy','appdata':util[_0x1c83('0x7')](_0x1c83('0x12'),_0x3ce6e9[_0x1c83('0x13')],_0x3da4ad[_0x16714a][_0x1c83('0x14')]?_0x3da4ad[_0x16714a][_0x1c83('0x14')][_0x1c83('0x15')](''):''),'priority':_0x8f6c15++},_0xd63733,_0x2a12c3));if(_0x3da4ad[_0x16714a][_0x1c83('0x16')]){_0x3a7921['push'](_[_0x1c83('0xa')]({'app':'StopMixMonitor','priority':_0x8f6c15++},_0xd63733,_0x2a12c3));}}return _0x3a7921;};var getUserApplications=function(_0x509981,_0x1e5e4a){var _0x2f70ab=[_0x1c83('0x17'),_0x1c83('0x18'),_0x1c83('0x19')];var _0x2d068d={'context':_0x509981[_0x1c83('0x5')]||_0x1c83('0x1a'),'exten':_0x1e5e4a,'type':_0x1c83('0x1b'),'isApp':![],'UserId':_0x509981['id']};var _0x5cd81a=[{'app':_0x1c83('0xb'),'appdata':'CDR(type)=internal'}];if(_0x509981['extensionMonitor']&&_[_0x1c83('0x1c')](_0x2f70ab,_0x509981[_0x1c83('0x1d')])){_0x5cd81a[_0x1c83('0xe')]({'app':_0x1c83('0xb'),'appdata':_0x1c83('0x1e')});_0x5cd81a[_0x1c83('0xe')]({'app':_0x1c83('0xb'),'appdata':util[_0x1c83('0x7')](_0x1c83('0x1f'),_0x509981[_0x1c83('0x1d')])});_0x5cd81a[_0x1c83('0xe')]({'app':'Dial','appdata':util['format']('SIP/%s,,tTxXU(xcally-mixmonitor-context)',_0x509981[_0x1c83('0x13')])});}else{_0x5cd81a[_0x1c83('0xe')]({'app':_0x1c83('0x20'),'appdata':util[_0x1c83('0x7')](_0x1c83('0x21'),_0x509981[_0x1c83('0x13')])});}_0x5cd81a[_0x1c83('0xe')]({'app':_0x1c83('0x22')});for(var _0x1abdf9=0x0;_0x1abdf9<_0x5cd81a[_0x1c83('0x6')];_0x1abdf9++){_0x5cd81a[_0x1abdf9]['priority']=_0x1abdf9+0x1;_0x5cd81a[_0x1abdf9]=_[_0x1c83('0x23')](_0x5cd81a[_0x1abdf9],_0x2d068d);}return _0x5cd81a;};var getChanSpyPromise=function(_0x399eb3,_0x2caaf9){return new BPromise(function(_0xaf981f,_0x23af08){return _0x399eb3[_0x1c83('0x24')][_0x1c83('0x25')]()[_0x1c83('0x26')](function(_0x43cf00){if(_0x43cf00){var _0x5f4e50=getChanSpyApplications(_0x2caaf9,_0x2caaf9['internal'],_0x43cf00);if(_0x2caaf9[_0x1c83('0x27')]!=_0x2caaf9[_0x1c83('0x13')]){_0x5f4e50=_0x5f4e50[_0x1c83('0x28')](getChanSpyApplications(_0x2caaf9,_0x2caaf9[_0x1c83('0x13')],_0x43cf00));}return _0xaf981f(_0x5f4e50);}return _0xaf981f([]);})['catch'](function(_0x4d4668){_0x23af08(_0x4d4668);});});};module[_0x1c83('0x29')]=function(_0x4f8e7e){var _0x4ebc73=_0x4f8e7e[_0x1c83('0x2a')];return _0x4f8e7e[_0x1c83('0x2b')](_0x1c83('0x2c'),attributes,{'tableName':_0x1c83('0x2d'),'charset':_0x1c83('0x2e'),'collate':_0x1c83('0x2f'),'hooks':{'beforeCreate':function(_0x28880c,_0x33ba59,_0x1e5354){var _0x750480=typeof _0x28880c[_0x1c83('0x30')]===_0x1c83('0x31')?BPromise[_0x1c83('0x32')](null):_0x4ebc73['UserProfile']['find']({'where':{'id':_0x28880c[_0x1c83('0x30')]}});_0x750480[_0x1c83('0x26')](function(_0x1c0680){if(_0x1c0680){_0x28880c[_0x1c83('0x33')]=_0x1c0680[_0x1c83('0x33')];}})[_0x1c83('0x26')](function(){_0x28880c[_0x1c83('0x34')]();_0x28880c[_0x1c83('0x35')](_0x1e5354);})[_0x1c83('0x36')](function(_0x161d80){_0x1e5354(_0x161d80);});},'beforeUpdate':function(_0x4d3537,_0x5e90c9,_0x1f1c21){Promise[_0x1c83('0x32')]()[_0x1c83('0x26')](function(){if(_0x4d3537[_0x1c83('0x37')](_0x1c83('0x30'))===![])return;return _0x4ebc73[_0x1c83('0x38')][_0x1c83('0x39')]({'where':{'id':_0x4d3537[_0x1c83('0x30')]}})['then'](function(_0x4ff214){if(_0x4ff214)_0x4d3537['privacyEnabled']=_0x4ff214['privacyEnabled'];return;});})['then'](function(){if(_0x4d3537[_0x1c83('0x37')](_0x1c83('0x3a'))){_0x4d3537['updateMd5Password']();return _0x4d3537[_0x1c83('0x35')](_0x1f1c21);}_0x1f1c21();})[_0x1c83('0x36')](function(_0xab6354){_0x1f1c21(_0xab6354);});},'afterCreate':function(_0x50f53a,_0x19abd0,_0x48be38){var _0x20155d=getUserApplications(_0x50f53a,_0x50f53a['internal']);if(_0x50f53a[_0x1c83('0x27')]!=_0x50f53a[_0x1c83('0x13')]){_0x20155d=_0x20155d[_0x1c83('0x28')](getUserApplications(_0x50f53a,_0x50f53a[_0x1c83('0x13')]));}return Promise[_0x1c83('0x32')]()['then'](function(){if(!_0x50f53a[_0x1c83('0x3b')]){return _0x50f53a['createUserSetting']({'clientSideLoggingLevel':_0x1c83('0x3c'),'clientSideLoggingEnabled':![]});}})[_0x1c83('0x26')](function(){return _0x4ebc73[_0x1c83('0x3d')][_0x1c83('0x3e')](_0x20155d);})[_0x1c83('0x26')](function(){if(_0x50f53a[_0x1c83('0xd')]){return getChanSpyPromise(_0x4ebc73,_0x50f53a);}})[_0x1c83('0x26')](function(_0x1ec215){if(_0x1ec215&&_0x1ec215[_0x1c83('0x6')]){return _0x4ebc73[_0x1c83('0x3d')][_0x1c83('0x3e')](_0x1ec215);}})[_0x1c83('0x26')](function(){_0x48be38();})[_0x1c83('0x36')](function(_0x498833){_0x48be38(_0x498833);});},'afterUpdate':function(_0x47d05d,_0x17cc14,_0x1d5d8c){return BPromise[_0x1c83('0x32')]()[_0x1c83('0x26')](function(){if(_0x47d05d[_0x1c83('0x37')]('chanspy')||_0x47d05d['changed'](_0x1c83('0x5'))){return _0x4ebc73[_0x1c83('0x3d')]['destroy']({'where':{'UserId':_0x47d05d['id'],'type':_0x1c83('0x1b'),'ChanSpyId':{'$ne':null}}})[_0x1c83('0x26')](function(){if(_0x47d05d['chanspy']){return getChanSpyPromise(_0x4ebc73,_0x47d05d)[_0x1c83('0x26')](function(_0x37857d){if(_0x37857d&&_0x37857d[_0x1c83('0x6')]){return _0x4ebc73[_0x1c83('0x3d')][_0x1c83('0x3e')](_0x37857d);}});}});}})[_0x1c83('0x26')](function(){if(_0x47d05d[_0x1c83('0x37')](_0x1c83('0x1d'))||_0x47d05d[_0x1c83('0x37')](_0x1c83('0x5'))){return _0x4ebc73[_0x1c83('0x3d')][_0x1c83('0x3f')]({'where':{'UserId':_0x47d05d['id'],'type':_0x1c83('0x1b'),'ChanSpyId':null}})[_0x1c83('0x26')](function(){var _0x311bc1=getUserApplications(_0x47d05d,_0x47d05d[_0x1c83('0x27')]);if(_0x47d05d['internal']!=_0x47d05d['name']){_0x311bc1=_0x311bc1[_0x1c83('0x28')](getUserApplications(_0x47d05d,_0x47d05d[_0x1c83('0x13')]));}return _0x4ebc73['VoiceExtension'][_0x1c83('0x3e')](_0x311bc1);});}})[_0x1c83('0x26')](function(){_0x1d5d8c();})[_0x1c83('0x36')](function(_0x4d9ccd){_0x1d5d8c(_0x4d9ccd);});},'afterDestroy':function(_0x34f443){return _0x4ebc73[_0x1c83('0x3d')][_0x1c83('0x3f')]({'where':{'UserId':_0x34f443['id'],'type':_0x1c83('0x1b')}});}},'instanceMethods':{'authenticate':function(_0x2e1bdc,_0x17bdbb){if(!_0x17bdbb){return this[_0x1c83('0x3a')]===this[_0x1c83('0x40')](_0x2e1bdc);}var _0x9b9c6a=this;this[_0x1c83('0x40')](_0x2e1bdc,function(_0x476a4d,_0x17e4e1){if(_0x476a4d){_0x17bdbb(_0x476a4d);}if(_0x9b9c6a[_0x1c83('0x3a')]===_0x17e4e1){_0x17bdbb(null,!![]);}else{_0x17bdbb(null,![]);}});},'makeSalt':function(_0x15e3a3,_0x229203){var _0x4b0595=0x10;if(typeof arguments[0x0]===_0x1c83('0x41')){_0x229203=arguments[0x0];_0x15e3a3=_0x4b0595;}else if(typeof arguments[0x1]===_0x1c83('0x41')){_0x229203=arguments[0x1];}else{throw new Error(_0x1c83('0x42'));}if(!_0x15e3a3){_0x15e3a3=_0x4b0595;}return crypto[_0x1c83('0x43')](_0x15e3a3,function(_0x4888e9,_0x307bd1){if(_0x4888e9){_0x229203(_0x4888e9);}return _0x229203(null,_0x307bd1[_0x1c83('0x44')](_0x1c83('0x45')));});},'encryptPassword':function(_0x260735,_0x97254a){if(!_0x260735||!this[_0x1c83('0x46')]){return _0x97254a?_0x97254a(null):null;}var _0x4af65f=0x2710;var _0x27201e=0x40;var _0x4f31f7=new Buffer(this['salt'],_0x1c83('0x45'));if(!_0x97254a){return crypto[_0x1c83('0x47')](_0x260735,_0x4f31f7,_0x4af65f,_0x27201e,_0x1c83('0x48'))[_0x1c83('0x44')]('base64');}return crypto[_0x1c83('0x49')](_0x260735,_0x4f31f7,_0x4af65f,_0x27201e,'sha1',function(_0x52b50f,_0x77c743){if(_0x52b50f){_0x97254a(_0x52b50f);}return _0x97254a(null,_0x77c743[_0x1c83('0x44')]('base64'));});},'updatePassword':function(_0x50362e){if(!this[_0x1c83('0x3a')]){return _0x50362e(null);}if(!validatePresenceOf(this[_0x1c83('0x3a')])&&authTypes[_0x1c83('0x4a')](this[_0x1c83('0x4b')])===-0x1){_0x50362e(new Error('Invalid\x20password'));}var _0x3efc65=this;this[_0x1c83('0x4c')](function(_0x5dfa0b,_0x2d0d3a){if(_0x5dfa0b){return _0x50362e(_0x5dfa0b);}_0x3efc65[_0x1c83('0x46')]=_0x2d0d3a;_0x3efc65['encryptPassword'](_0x3efc65[_0x1c83('0x3a')],function(_0x1fbcee,_0x131639){if(_0x1fbcee){_0x50362e(_0x1fbcee);}_0x3efc65[_0x1c83('0x3a')]=_0x131639;_0x50362e(null);});});},'updateMd5Password':function(){this[_0x1c83('0x4d')]=md5(this['name']+':asterisk:'+this[_0x1c83('0x3a')]);return this[_0x1c83('0x4d')];}}});};
\ No newline at end of file