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 95e7cb6b..df42692b 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 2536656f..1f5392f3 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 d9aed34a..ca87214e 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 7439f494..b6599594 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 0dac0fa3..eef8d701 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 16a904b7..169248bc 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 0d343e8c..5f4db163 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 29eb7c50..539ee1bd 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 ebcad804..7b5244cb 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 41f54393..6d3c75d1 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 4b920536..b0c59a30 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 a2e7df0c..e6b5eb94 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 ee872328..6fc1d05a 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 991f3762..f64943d9 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 dccff5bb..7241c9ac 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 1033dfa6..6386438a 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 e0dffe83..5e3e8ef3 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 c8a35bcc..b113ffe4 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 24001d4a..40f48149 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 11409169..304a0349 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 841516c0..e32a95e4 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 7c20ad8b..ba0cec28 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 bb68d29e..1216de59 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 10a7375f..d9833087 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 9f91ef1a..abba4be9 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 7af2cf39..2c4dc3fb 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": "關注者",