diff options
author | TheArcaneBrony <myrainbowdash949@gmail.com> | 2023-10-19 07:21:41 +0200 |
---|---|---|
committer | TheArcaneBrony <myrainbowdash949@gmail.com> | 2023-10-19 07:21:41 +0200 |
commit | 063fb6f12aea3a5b71c05beea22e7f6482c2f1cf (patch) | |
tree | 064aa9edd5a27017f95ed0a6b19ac69499005778 /MatrixRoomUtils.Web/Shared/UserListItem.razor | |
parent | Add user management page (diff) | |
download | MatrixUtils-063fb6f12aea3a5b71c05beea22e7f6482c2f1cf.tar.xz |
Refactor, fix stuff
Diffstat (limited to 'MatrixRoomUtils.Web/Shared/UserListItem.razor')
-rw-r--r-- | MatrixRoomUtils.Web/Shared/UserListItem.razor | 30 |
1 files changed, 10 insertions, 20 deletions
diff --git a/MatrixRoomUtils.Web/Shared/UserListItem.razor b/MatrixRoomUtils.Web/Shared/UserListItem.razor index 9010820..96e8e64 100644 --- a/MatrixRoomUtils.Web/Shared/UserListItem.razor +++ b/MatrixRoomUtils.Web/Shared/UserListItem.razor @@ -1,8 +1,9 @@ @using LibMatrix.Helpers @using LibMatrix.EventTypes.Spec.State +@using LibMatrix.Homeservers <div style="background-color: #ffffff11; border-radius: 25px; margin: 8px; width: fit-Content;"> - <img style="@(ChildContent is not null ? "vertical-align: baseline;" : "") width: 32px; height: 32px; border-radius: 50%;" src="@profileAvatar"/> - <span style="vertical-align: middle; margin-right: 8px; border-radius: 75px;">@profileName</span> + <img style="@(ChildContent is not null ? "vertical-align: baseline;" : "") width: 32px; height: 32px; border-radius: 50%;" src="@(string.IsNullOrWhiteSpace(User?.AvatarUrl) ? "https://api.dicebear.com/6.x/identicon/svg?seed=" + UserId : User.AvatarUrl)"/> + <span style="vertical-align: middle; margin-right: 8px; border-radius: 75px;">@User?.DisplayName</span> <div style="display: inline-block;"> @if (ChildContent is not null) { @@ -18,36 +19,25 @@ public RenderFragment? ChildContent { get; set; } [Parameter] - public ProfileResponseEventContent User { get; set; } + public ProfileResponseEventContent? User { get; set; } [Parameter] public string UserId { get; set; } - private string? profileAvatar { get; set; } = "/icon-192.png"; - private string? profileName { get; set; } = "Loading..."; - - private static SemaphoreSlim _semaphoreSlim = new(8); + private AuthenticatedHomeserverGeneric _homeserver = null!; protected override async Task OnInitializedAsync() { - await base.OnInitializedAsync(); - - var hs = await MRUStorage.GetCurrentSessionOrNavigate(); - if (hs is null) return; - - await _semaphoreSlim.WaitAsync(); + _homeserver = await MRUStorage.GetCurrentSessionOrNavigate(); + if (_homeserver is null) return; if (User == null) { if (UserId == null) { throw new ArgumentNullException(nameof(UserId)); } - User = await hs.GetProfileAsync(UserId); + User = await _homeserver.GetProfileAsync(UserId); } - // UserId = User.; - profileAvatar = await hsResolver.ResolveMediaUri(hs.ServerName, User.AvatarUrl); - profileName = User.DisplayName; - - _semaphoreSlim.Release(); + await base.OnInitializedAsync(); } -} +} \ No newline at end of file |