diff --git a/Iceshrimp.Frontend/Components/FollowRequestEntry.razor b/Iceshrimp.Frontend/Components/FollowRequestEntry.razor
index c9cacbb4..f7e10d83 100644
--- a/Iceshrimp.Frontend/Components/FollowRequestEntry.razor
+++ b/Iceshrimp.Frontend/Components/FollowRequestEntry.razor
@@ -11,6 +11,12 @@
+ @if (_followBack)
+ {
+
+ }
@@ -23,15 +29,30 @@
@code {
[Parameter] [EditorRequired] public required FollowRequestResponse FollowRequest { get; set; }
[Parameter] [EditorRequired] public required EventCallback OnDelete { get; set; }
+ private bool _followBack = false;
+
+ protected override async Task OnInitializedAsync()
+ {
+ var profile = await Api.Users.GetUserProfile(FollowRequest.User.Id);
+ if (profile != null) _followBack = profile.Relations.HasFlag(Relations.None);
+ }
+
private async void Accept()
{
await Api.FollowRequests.AcceptFollowRequest(FollowRequest.Id);
await OnDelete.InvokeAsync(FollowRequest.Id);
}
+
+ private async void AcceptAndFollowBack()
+ {
+ await Api.FollowRequests.AcceptFollowRequest(FollowRequest.Id);
+ await Api.Users.FollowUser(FollowRequest.User.Id);
+ await OnDelete.InvokeAsync(FollowRequest.Id);
+ }
private async void Reject()
{
await Api.FollowRequests.RejectFollowRequest(FollowRequest.Id);
await OnDelete.InvokeAsync(FollowRequest.Id);
}
-}
\ No newline at end of file
+}