diff --git a/js/src/graphql/followers.ts b/js/src/graphql/followers.ts index c64d208e..41b775bc 100644 --- a/js/src/graphql/followers.ts +++ b/js/src/graphql/followers.ts @@ -32,7 +32,7 @@ export const GROUP_FOLLOWERS = gql` `; export const UPDATE_FOLLOWER = gql` - mutation UpdateFollower($id: ID!, $approved: Boolean) { + mutation UpdateFollower($id: ID!, $approved: Boolean!) { updateFollower(id: $id, approved: $approved) { id approved diff --git a/js/src/i18n/en_US.json b/js/src/i18n/en_US.json index d319d7ac..53126993 100644 --- a/js/src/i18n/en_US.json +++ b/js/src/i18n/en_US.json @@ -1446,5 +1446,7 @@ "By car": "By car", "Select all resources": "Select all resources", "Select this resource": "Select this resource", - "You can add resources by using the button above.": "You can add resources by using the button above." + "You can add resources by using the button above.": "You can add resources by using the button above.", + "{user}'s follow request was accepted": "{user}'s follow request was accepted", + "{user}'s follow request was rejected": "{user}'s follow request was rejected" } \ No newline at end of file diff --git a/js/src/i18n/fr_FR.json b/js/src/i18n/fr_FR.json index 66f9adf9..73804da2 100644 --- a/js/src/i18n/fr_FR.json +++ b/js/src/i18n/fr_FR.json @@ -1443,5 +1443,7 @@ "By car": "En voiture", "Select all resources": "Sélectionner toutes les ressources", "Select this resource": "Sélectionner cette ressource", - "You can add resources by using the button above.": "Vous pouvez ajouter des ressources en utilisant le bouton au dessus." + "You can add resources by using the button above.": "Vous pouvez ajouter des ressources en utilisant le bouton au dessus.", + "{user}'s follow request was accepted": "La demande de suivi de {user} a été acceptée", + "{user}'s follow request was rejected": "La demande de suivi de {user} a été rejetée" } diff --git a/js/src/views/Group/GroupFollowers.vue b/js/src/views/Group/GroupFollowers.vue index f54c68ed..12307d38 100644 --- a/js/src/views/Group/GroupFollowers.vue +++ b/js/src/views/Group/GroupFollowers.vue @@ -11,12 +11,12 @@ { name: RouteName.GROUP_SETTINGS, params: { preferredUsername: usernameWithDomain(group) }, - text: $t('Settings'), + text: t('Settings'), }, { name: RouteName.GROUP_FOLLOWERS_SETTINGS, params: { preferredUsername: usernameWithDomain(group) }, - text: $t('Followers'), + text: t('Followers'), }, ]" /> @@ -25,9 +25,9 @@ class="container mx-auto section" v-if="group && isCurrentActorAGroupAdmin && followers" > -

{{ $t("Group Followers") }} ({{ followers.total }})

- - {{ $t("Pending") }} +

{{ t("Group Followers") }} ({{ followers.total }})

+ + {{ t("Pending") }}
@@ -76,39 +76,39 @@
- + {{ formatDateString(props.row.insertedAt) }}
{{ formatTimeString(props.row.insertedAt) }}
- -
+ +
{{ $t("Accept") }}{{ t("Accept") }} {{ $t("Reject") }}{{ t("Reject") }}
- {{ $t("You are not an administrator for this group.") }} + {{ t("You are not an administrator for this group.") }}
@@ -164,6 +164,7 @@ const { t } = useI18n({ useScope: "global" }); useHead({ title: computed(() => t("Group Followers")) }); const loadMoreFollowers = async (): Promise => { + console.debug("load more followers"); await fetchMore({ // New variables variables: { @@ -183,6 +184,12 @@ const { onDone, onError, mutate } = useMutation<{ updateFollower: IFollower }>( refetchQueries: [ { query: GROUP_FOLLOWERS, + variables: { + name: usernameWithDomain(group.value), + followersPage: page.value, + followersLimit: FOLLOWERS_PER_PAGE, + approved: !pending.value, + }, }, ], }) @@ -192,11 +199,11 @@ onDone(({ data }) => { const follower = data?.updateFollower; const message = data?.updateFollower.approved === true - ? t("@{username}'s follow request was accepted", { - username: follower?.actor.preferredUsername, + ? t("{user}'s follow request was accepted", { + user: displayName(follower?.actor), }) - : t("@{username}'s follow request was rejected", { - username: follower?.actor.preferredUsername, + : t("{user}'s follow request was rejected", { + user: displayName(follower?.actor), }); notifier?.success(message); });