Fix campaign owner labels to always use display names
This commit is contained in:
@@ -590,10 +590,18 @@ public partial class Workspace : IAsyncDisposable
|
||||
if (User is not null && ownerUserId == User.Id)
|
||||
return "You";
|
||||
|
||||
if (SelectedCampaign is not null && ownerUserId == SelectedCampaign.Gm.Id)
|
||||
if (SelectedCampaign is null)
|
||||
return "Unknown owner";
|
||||
|
||||
if (ownerUserId == SelectedCampaign.Gm.Id)
|
||||
return $"{SelectedCampaign.Gm.DisplayName} (GM)";
|
||||
|
||||
return ownerUserId.ToString("N")[..8];
|
||||
var ownerDisplayName = SelectedCampaign.Characters
|
||||
.Where(character => character.OwnerUserId == ownerUserId)
|
||||
.Select(character => character.OwnerDisplayName)
|
||||
.FirstOrDefault(displayName => !string.IsNullOrWhiteSpace(displayName));
|
||||
|
||||
return string.IsNullOrWhiteSpace(ownerDisplayName) ? "Unknown owner" : ownerDisplayName;
|
||||
}
|
||||
|
||||
private string CharacterLabel(Guid characterId)
|
||||
|
||||
Reference in New Issue
Block a user