aboutsummaryrefslogtreecommitdiff
path: root/src/components/remove_follower_button/remove_follower_button.js
diff options
context:
space:
mode:
authorTusooa Zhu <tusooa@kazv.moe>2022-09-27 18:47:50 -0400
committertusooa <tusooa@kazv.moe>2023-01-22 09:25:24 -0500
commitce8101e60a1dc1a768f793a34fb6e9cca70b4858 (patch)
treee52a0c0360dd9bf8ef04a63e7994216a73147027 /src/components/remove_follower_button/remove_follower_button.js
parent5359633c743455739a8b6fe64e246c832656b4d0 (diff)
Add remove follower confirmation
Diffstat (limited to 'src/components/remove_follower_button/remove_follower_button.js')
-rw-r--r--src/components/remove_follower_button/remove_follower_button.js27
1 files changed, 25 insertions, 2 deletions
diff --git a/src/components/remove_follower_button/remove_follower_button.js b/src/components/remove_follower_button/remove_follower_button.js
index e1a7531b..052a519f 100644
--- a/src/components/remove_follower_button/remove_follower_button.js
+++ b/src/components/remove_follower_button/remove_follower_button.js
@@ -1,10 +1,16 @@
+import ConfirmModal from '../confirm_modal/confirm_modal.vue'
+
export default {
- props: ['relationship'],
+ props: ['user', 'relationship'],
data () {
return {
- inProgress: false
+ inProgress: false,
+ showingConfirmRemoveFollower: false
}
},
+ components: {
+ ConfirmModal
+ },
computed: {
label () {
if (this.inProgress) {
@@ -12,14 +18,31 @@ export default {
} else {
return this.$t('user_card.remove_follower')
}
+ },
+ shouldConfirmRemoveUserFromFollowers () {
+ return this.$store.getters.mergedConfig.modalOnRemoveUserFromFollowers
}
},
methods: {
+ showConfirmRemoveUserFromFollowers () {
+ this.showingConfirmRemoveFollower = true
+ },
+ hideConfirmRemoveUserFromFollowers () {
+ this.showingConfirmRemoveFollower = false
+ },
onClick () {
+ if (!this.shouldConfirmRemoveUserFromFollowers) {
+ this.doRemoveUserFromFollowers()
+ } else {
+ this.showConfirmRemoveUserFromFollowers()
+ }
+ },
+ doRemoveUserFromFollowers () {
this.inProgress = true
this.$store.dispatch('removeUserFromFollowers', this.relationship.id).then(() => {
this.inProgress = false
})
+ this.hideConfirmRemoveUserFromFollowers()
}
}
}