From 4587f37dd72cfbb75e0fb008237ee3fe430caed1 Mon Sep 17 00:00:00 2001 From: Ilja Date: Sun, 12 Dec 2021 18:09:21 +0100 Subject: [PATCH] Allow canceling a follow request When a follow request is sent, but not (yet) accepted, the behaviour is now to cancel the request instead of re sending. The reason is double * You couldn't cancel a follow request if you change your mind and the request wasn't answered yet * Instances don't always correctly process a new follow request when the following is already happening. If something went wrong (e;g. the target server thinks you're following, but your instance thinks you're not yet), it's better to first sent an unfollow. This is the behaviour that Mastodon and most probably most other clients have. Therefore this flow is more tested and expected by other instances. --- src/components/follow_button/follow_button.js | 4 ++-- src/i18n/ca.json | 1 - src/i18n/cs.json | 1 - src/i18n/de.json | 1 - src/i18n/en.json | 2 +- src/i18n/eo.json | 1 - src/i18n/es.json | 1 - src/i18n/eu.json | 1 - src/i18n/fi.json | 1 - src/i18n/fr.json | 1 - src/i18n/he.json | 1 - src/i18n/id.json | 1 - src/i18n/it.json | 1 - src/i18n/ja_easy.json | 1 - src/i18n/ja_pedantic.json | 1 - src/i18n/ko.json | 1 - src/i18n/nb.json | 1 - src/i18n/nl.json | 2 +- src/i18n/oc.json | 1 - src/i18n/pl.json | 1 - src/i18n/pt.json | 1 - src/i18n/ru.json | 1 - src/i18n/te.json | 1 - src/i18n/uk.json | 1 - src/i18n/zh.json | 1 - src/i18n/zh_Hant.json | 1 - 26 files changed, 4 insertions(+), 27 deletions(-) diff --git a/src/components/follow_button/follow_button.js b/src/components/follow_button/follow_button.js index 95e7cb6ba7..df42692b27 100644 --- a/src/components/follow_button/follow_button.js +++ b/src/components/follow_button/follow_button.js @@ -14,7 +14,7 @@ export default { if (this.inProgress || this.relationship.following) { return this.$t('user_card.follow_unfollow') } else if (this.relationship.requested) { - return this.$t('user_card.follow_again') + return this.$t('user_card.follow_cancel') } else { return this.$t('user_card.follow') } @@ -33,7 +33,7 @@ export default { }, methods: { onClick () { - this.relationship.following ? this.unfollow() : this.follow() + this.relationship.following || this.relationship.requested ? this.unfollow() : this.follow() }, follow () { this.inProgress = true diff --git a/src/i18n/ca.json b/src/i18n/ca.json index 2536656ffc..1f5392f3c5 100644 --- a/src/i18n/ca.json +++ b/src/i18n/ca.json @@ -620,7 +620,6 @@ "grant_moderator": "Concedir permisos de Moderació" }, "edit_profile": "Edita el perfil", - "follow_again": "Envia de nou la petició?", "hidden": "Amagat", "follow_sent": "Petició enviada!", "unmute_progress": "Deixant de silenciar…", diff --git a/src/i18n/cs.json b/src/i18n/cs.json index d9aed34a04..ca87214e0d 100644 --- a/src/i18n/cs.json +++ b/src/i18n/cs.json @@ -407,7 +407,6 @@ "follow": "Sledovat", "follow_sent": "Požadavek odeslán!", "follow_progress": "Odeslílám požadavek…", - "follow_again": "Odeslat požadavek znovu?", "follow_unfollow": "Přestat sledovat", "followees": "Sledovaní", "followers": "Sledující", diff --git a/src/i18n/de.json b/src/i18n/de.json index 7439f494a9..b659959479 100644 --- a/src/i18n/de.json +++ b/src/i18n/de.json @@ -569,7 +569,6 @@ "follow": "Folgen", "follow_sent": "Anfrage gesendet!", "follow_progress": "Anfragen…", - "follow_again": "Anfrage erneut senden?", "follow_unfollow": "Folgen beenden", "followees": "Folgt", "followers": "Folgende", diff --git a/src/i18n/en.json b/src/i18n/en.json index 0dac0fa39f..eef8d70153 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -731,9 +731,9 @@ "edit_profile": "Edit profile", "favorites": "Favorites", "follow": "Follow", + "follow_cancel": "Cancel request", "follow_sent": "Request sent!", "follow_progress": "Requesting…", - "follow_again": "Send request again?", "follow_unfollow": "Unfollow", "followees": "Following", "followers": "Followers", diff --git a/src/i18n/eo.json b/src/i18n/eo.json index 16a904b745..169248bc50 100644 --- a/src/i18n/eo.json +++ b/src/i18n/eo.json @@ -580,7 +580,6 @@ "follow": "Aboni", "follow_sent": "Peto sendiĝis!", "follow_progress": "Petante…", - "follow_again": "Ĉu sendi peton ree?", "follow_unfollow": "Malaboni", "followees": "Abonatoj", "followers": "Abonantoj", diff --git a/src/i18n/es.json b/src/i18n/es.json index 0d343e8c07..5f4db163f4 100644 --- a/src/i18n/es.json +++ b/src/i18n/es.json @@ -687,7 +687,6 @@ "follow": "Seguir", "follow_sent": "¡Solicitud enviada!", "follow_progress": "Solicitando…", - "follow_again": "¿Enviar solicitud de nuevo?", "follow_unfollow": "Dejar de seguir", "followees": "Siguiendo", "followers": "Seguidores", diff --git a/src/i18n/eu.json b/src/i18n/eu.json index 29eb7c50f1..539ee1bdb6 100644 --- a/src/i18n/eu.json +++ b/src/i18n/eu.json @@ -569,7 +569,6 @@ "follow": "Jarraitu", "follow_sent": "Eskaera bidalita!", "follow_progress": "Eskatzen…", - "follow_again": "Eskaera berriro bidali?", "follow_unfollow": "Jarraitzeari utzi", "followees": "Jarraitzen", "followers": "Jarraitzaileak", diff --git a/src/i18n/fi.json b/src/i18n/fi.json index ebcad8045e..7b5244cb7c 100644 --- a/src/i18n/fi.json +++ b/src/i18n/fi.json @@ -590,7 +590,6 @@ "follow": "Seuraa", "follow_sent": "Pyyntö lähetetty!", "follow_progress": "Pyydetään…", - "follow_again": "Lähetä pyyntö uudestaan?", "follow_unfollow": "Älä seuraa", "followees": "Seuraa", "followers": "Seuraajat", diff --git a/src/i18n/fr.json b/src/i18n/fr.json index 41f543934e..6d3c75d163 100644 --- a/src/i18n/fr.json +++ b/src/i18n/fr.json @@ -624,7 +624,6 @@ "follow": "Suivre", "follow_sent": "Demande envoyée !", "follow_progress": "Demande en cours…", - "follow_again": "Renvoyer la demande ?", "follow_unfollow": "Désabonner", "followees": "Suivis", "followers": "Vous suivent", diff --git a/src/i18n/he.json b/src/i18n/he.json index 4b920536a6..b0c59a30e5 100644 --- a/src/i18n/he.json +++ b/src/i18n/he.json @@ -312,7 +312,6 @@ "follow": "עקוב", "follow_sent": "בקשה נשלחה!", "follow_progress": "מבקש…", - "follow_again": "שלח בקשה שוב?", "follow_unfollow": "בטל עקיבה", "followees": "נעקבים", "followers": "עוקבים", diff --git a/src/i18n/id.json b/src/i18n/id.json index a2e7df0cdc..e6b5eb945d 100644 --- a/src/i18n/id.json +++ b/src/i18n/id.json @@ -322,7 +322,6 @@ "delete_user": "Hapus pengguna", "delete_user_confirmation": "Apakah Anda benar-benar yakin? Tindakan ini tidak dapat dibatalkan." }, - "follow_again": "Kirim permintaan lagi?", "follow_unfollow": "Berhenti mengikuti", "followees": "Mengikuti", "followers": "Pengikut", diff --git a/src/i18n/it.json b/src/i18n/it.json index ee872328f1..6fc1d05a27 100644 --- a/src/i18n/it.json +++ b/src/i18n/it.json @@ -516,7 +516,6 @@ "its_you": "Sei tu!", "hidden": "Nascosto", "follow_unfollow": "Disconosci", - "follow_again": "Reinvio richiesta?", "follow_progress": "Richiedo…", "follow_sent": "Richiesta inviata!", "favorites": "Preferiti", diff --git a/src/i18n/ja_easy.json b/src/i18n/ja_easy.json index 991f3762f2..f64943d9a3 100644 --- a/src/i18n/ja_easy.json +++ b/src/i18n/ja_easy.json @@ -567,7 +567,6 @@ "follow": "フォロー", "follow_sent": "リクエストを、おくりました!", "follow_progress": "リクエストしています…", - "follow_again": "ふたたびリクエストをおくりますか?", "follow_unfollow": "フォローをやめる", "followees": "フォロー", "followers": "フォロワー", diff --git a/src/i18n/ja_pedantic.json b/src/i18n/ja_pedantic.json index dccff5bb01..7241c9ac71 100644 --- a/src/i18n/ja_pedantic.json +++ b/src/i18n/ja_pedantic.json @@ -679,7 +679,6 @@ "follow": "フォロー", "follow_sent": "リクエストを送りました!", "follow_progress": "リクエストしています…", - "follow_again": "再びリクエストを送りますか?", "follow_unfollow": "フォローをやめる", "followees": "フォロー", "followers": "フォロワー", diff --git a/src/i18n/ko.json b/src/i18n/ko.json index 1033dfa61e..6386438a9c 100644 --- a/src/i18n/ko.json +++ b/src/i18n/ko.json @@ -428,7 +428,6 @@ "follow": "팔로우", "follow_sent": "요청 보내짐!", "follow_progress": "요청 중…", - "follow_again": "요청을 다시 보낼까요?", "follow_unfollow": "팔로우 중지", "followees": "팔로우 중", "followers": "팔로워", diff --git a/src/i18n/nb.json b/src/i18n/nb.json index e0dffe833b..5e3e8ef3da 100644 --- a/src/i18n/nb.json +++ b/src/i18n/nb.json @@ -516,7 +516,6 @@ "follow": "Følg", "follow_sent": "Forespørsel sendt!", "follow_progress": "Forespør…", - "follow_again": "Gjenta forespørsel?", "follow_unfollow": "Avfølg", "followees": "Følger", "followers": "Følgere", diff --git a/src/i18n/nl.json b/src/i18n/nl.json index c8a35bccd1..b113ffe4ea 100644 --- a/src/i18n/nl.json +++ b/src/i18n/nl.json @@ -565,9 +565,9 @@ "deny": "Weigeren", "favorites": "Favorieten", "follow": "Volgen", + "follow_cancel": "Aanvraag annuleren", "follow_sent": "Aanvraag verzonden!", "follow_progress": "Aanvragen…", - "follow_again": "Aanvraag opnieuw zenden?", "follow_unfollow": "Stop volgen", "followees": "Aan het volgen", "followers": "Volgers", diff --git a/src/i18n/oc.json b/src/i18n/oc.json index 24001d4aae..40f48149e2 100644 --- a/src/i18n/oc.json +++ b/src/i18n/oc.json @@ -465,7 +465,6 @@ "follow": "Seguir", "follow_sent": "Demanda enviada !", "follow_progress": "Demanda…", - "follow_again": "Tornar enviar la demanda ?", "follow_unfollow": "Quitar de seguir", "followees": "Abonaments", "followers": "Seguidors", diff --git a/src/i18n/pl.json b/src/i18n/pl.json index 11409169d2..304a03491e 100644 --- a/src/i18n/pl.json +++ b/src/i18n/pl.json @@ -721,7 +721,6 @@ "follow": "Obserwuj", "follow_sent": "Wysłano prośbę!", "follow_progress": "Wysyłam prośbę…", - "follow_again": "Wysłać prośbę ponownie?", "follow_unfollow": "Przestań obserwować", "followees": "Obserwowani", "followers": "Obserwujący", diff --git a/src/i18n/pt.json b/src/i18n/pt.json index 841516c045..e32a95e451 100644 --- a/src/i18n/pt.json +++ b/src/i18n/pt.json @@ -575,7 +575,6 @@ "follow": "Seguir", "follow_sent": "Pedido enviado!", "follow_progress": "Enviando…", - "follow_again": "Enviar solicitação novamente?", "follow_unfollow": "Deixar de seguir", "followees": "Seguindo", "followers": "Seguidores", diff --git a/src/i18n/ru.json b/src/i18n/ru.json index 7c20ad8b50..ba0cec28f7 100644 --- a/src/i18n/ru.json +++ b/src/i18n/ru.json @@ -550,7 +550,6 @@ "follow": "Читать", "follow_sent": "Запрос отправлен!", "follow_progress": "Запрашиваем…", - "follow_again": "Запросить еще раз?", "follow_unfollow": "Перестать читать", "followees": "Читаемые", "followers": "Читатели", diff --git a/src/i18n/te.json b/src/i18n/te.json index bb68d29e47..1216de5955 100644 --- a/src/i18n/te.json +++ b/src/i18n/te.json @@ -310,7 +310,6 @@ "user_card.follow": "Follow", "user_card.follow_sent": "Request sent!", "user_card.follow_progress": "Requesting…", - "user_card.follow_again": "Send request again?", "user_card.follow_unfollow": "Unfollow", "user_card.followees": "Following", "user_card.followers": "Followers", diff --git a/src/i18n/uk.json b/src/i18n/uk.json index 10a7375fea..d98330874b 100644 --- a/src/i18n/uk.json +++ b/src/i18n/uk.json @@ -748,7 +748,6 @@ "message": "Повідомлення", "follow": "Підписатись", "follow_unfollow": "Відписатись", - "follow_again": "Відправити запит знову?", "follow_sent": "Запит відправлено!", "blocked": "Заблоковано!", "admin_menu": { diff --git a/src/i18n/zh.json b/src/i18n/zh.json index 9f91ef1a31..abba4be933 100644 --- a/src/i18n/zh.json +++ b/src/i18n/zh.json @@ -677,7 +677,6 @@ "follow": "关注", "follow_sent": "请求已发送!", "follow_progress": "请求中…", - "follow_again": "再次发送请求?", "follow_unfollow": "取消关注", "followees": "正在关注", "followers": "关注者", diff --git a/src/i18n/zh_Hant.json b/src/i18n/zh_Hant.json index 7af2cf393a..2c4dc3fb31 100644 --- a/src/i18n/zh_Hant.json +++ b/src/i18n/zh_Hant.json @@ -771,7 +771,6 @@ "follow": "關注", "follow_sent": "請求已發送!", "follow_progress": "請求中…", - "follow_again": "再次發送請求?", "follow_unfollow": "取消關注", "followees": "正在關注", "followers": "關注者",