Browse Source

Let the user confirm the remote wipe

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
tags/v17.0.0beta1
Christoph Wurst 5 years ago
parent
commit
c77feca64b
No account linked to committer's email address

+ 2
- 2
settings/js/vue-settings-personal-security.js
File diff suppressed because it is too large
View File


+ 1
- 1
settings/js/vue-settings-personal-security.js.map
File diff suppressed because it is too large
View File


+ 27
- 14
settings/src/components/AuthTokenSection.vue View File

@@ -39,6 +39,17 @@
import AuthTokenList from './AuthTokenList';
import AuthTokenSetupDialogue from './AuthTokenSetupDialogue';

const confirm = () => {
return new Promise(res => {
OC.dialogs.confirm(
t('core', 'Do you really want to wipe your data from this device?'),
t('core', 'Confirm wipe'),
res,
true
)
})
}

/**
* Tap into a promise without losing the value
*/
@@ -135,22 +146,24 @@
this.tokens.push(token);
})
},
wipeToken(token) {
async wipeToken(token) {
console.debug('wiping app token', token);

confirmPassword()
.then(() => Axios.post(this.baseUrl + '/wipe/' + token.id))
.then(tap(() => {
console.debug('app token marked for wipe')

// Update the type
// TODO: refactor the server-side code to return the updated token
token.type = 2;
}))
.catch(err => {
console.error.bind('could not wipe app token', err);
OC.Notification.showTemporary(t('core', 'Error while wiping the device with the token'));
})
try {
await confirmPassword()

if (!(await confirm())) {
console.debug('wipe aborted by user')
return;
}
await Axios.post(this.baseUrl + '/wipe/' + token.id)
console.debug('app token marked for wipe')

token.type = 2;
} catch (err) {
console.error('could not wipe app token', err);
OC.Notification.showTemporary(t('core', 'Error while wiping the device with the token'));
}
}
}
}

Loading…
Cancel
Save