feat: add raw and pt formats to member banners

This commit is contained in:
rladenson 2024-11-18 23:43:04 -07:00 committed by Petal Ladenson
parent 8db785f98a
commit ba279612ca

View file

@ -229,18 +229,28 @@ public class MemberEdit
async Task ShowBannerImage() async Task ShowBannerImage()
{ {
if ((target.BannerImage?.Trim() ?? "").Length > 0) if ((target.BannerImage?.Trim() ?? "").Length > 0)
switch (ctx.MatchFormat())
{ {
var eb = new EmbedBuilder() case ReplyFormat.Raw:
await ctx.Reply($"`{target.BannerImage.TryGetCleanCdnUrl()}`");
break;
case ReplyFormat.Plaintext:
var ebP = new EmbedBuilder()
.Description($"Showing banner for member {target.NameFor(ctx)} (`{target.Id}`)");
await ctx.Reply(text: $"<{target.BannerImage.TryGetCleanCdnUrl()}>", embed: ebP.Build());
break;
default:
var ebS = new EmbedBuilder()
.Title($"{target.NameFor(ctx)}'s banner image") .Title($"{target.NameFor(ctx)}'s banner image")
.Image(new Embed.EmbedImage(target.BannerImage)) .Image(new Embed.EmbedImage(target.BannerImage.TryGetCleanCdnUrl()));
.Description($"To clear, use `pk;member {target.Reference(ctx)} banner clear`."); if (target.System == ctx.System?.Id)
await ctx.Reply(embed: eb.Build()); ebS.Description($"To clear, use `pk;member {target.Reference(ctx)} banner clear`.");
await ctx.Reply(embed: ebS.Build());
break;
} }
else else
{
throw new PKSyntaxError( throw new PKSyntaxError(
"This member does not have a banner image set. Set one by attaching an image to this command, or by passing an image URL."); "This member does not have a banner image set." + ((target.System == ctx.System?.Id) ? " Set one by attaching an image to this command, or by passing an image URL." : ""));
}
} }
if (ctx.MatchClear() && await ctx.ConfirmClear("this member's banner image")) if (ctx.MatchClear() && await ctx.ConfirmClear("this member's banner image"))