summaryrefslogtreecommitdiffstats
path: root/src/components/Settings/SettingsAddressbook.vue
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2019-01-05 10:53:59 +0100
committerJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2019-01-05 10:54:01 +0100
commit8244ec77c02803faa3069cf9515ea21bb4cdd31a (patch)
treec80c3371c8b0ebc666d7197fc531fe06e76528d1 /src/components/Settings/SettingsAddressbook.vue
parentf408f6e4a1a443ddcf5cc5a59a7148f63479e064 (diff)
Addressbook deletion confirm
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Diffstat (limited to 'src/components/Settings/SettingsAddressbook.vue')
-rw-r--r--src/components/Settings/SettingsAddressbook.vue44
1 files changed, 28 insertions, 16 deletions
diff --git a/src/components/Settings/SettingsAddressbook.vue b/src/components/Settings/SettingsAddressbook.vue
index dd6ac69c..991ffcda 100644
--- a/src/components/Settings/SettingsAddressbook.vue
+++ b/src/components/Settings/SettingsAddressbook.vue
@@ -140,7 +140,7 @@ export default {
menu.push({
icon: this.deleteAddressbookLoading ? 'icon-loading-small' : 'icon-delete',
text: t('contacts', 'Delete'),
- action: this.deleteAddressbook
+ action: this.confirmDeletion
})
}
}
@@ -184,21 +184,33 @@ export default {
}
}, 500)
},
- deleteAddressbook() {
- // change to loading status
- this.deleteAddressbookLoading = true
- setTimeout(() => {
- try {
- this.$store.dispatch('deleteAddressbook', this.addressbook)
- } catch (err) {
- // error handling
- console.error(err)
- OC.Notification.showTemporary(t('contacts', 'Deletion of addressbook was not successful.'))
- } finally {
- // stop loading status regardless of outcome
- this.deleteAddressbookLoading = false
- }
- }, 500)
+
+ confirmDeletion() {
+ OC.dialogs.confirm(
+ t('contacts', 'This will delete the addressbook and every contacts within it'),
+ t('contacts', 'Delete {addressbook} ?', { addressbook: this.addressbook.displayName }),
+ this.deleteAddressbook,
+ true
+ )
+ },
+
+ deleteAddressbook(confirm) {
+ if (confirm) {
+ // change to loading status
+ this.deleteAddressbookLoading = true
+ setTimeout(() => {
+ try {
+ this.$store.dispatch('deleteAddressbook', this.addressbook)
+ } catch (err) {
+ // error handling
+ console.error(err)
+ OC.Notification.showTemporary(t('contacts', 'Deletion of addressbook was not successful.'))
+ } finally {
+ // stop loading status regardless of outcome
+ this.deleteAddressbookLoading = false
+ }
+ }, 500)
+ }
},
renameAddressbook() {
this.editingName = true