From 096bf4f45ae65b3a76453d3914bbd5862fe46ea5 Mon Sep 17 00:00:00 2001 From: Stephen <webmaster@scd31.com> Date: Sat, 8 Oct 2022 11:18:47 -0300 Subject: [PATCH] support images --- src/handlers/starboard.rs | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/src/handlers/starboard.rs b/src/handlers/starboard.rs index e19d077..d1316c8 100644 --- a/src/handlers/starboard.rs +++ b/src/handlers/starboard.rs @@ -94,6 +94,13 @@ impl StarboardHandler { .await .unwrap_or_else(|| msg.author.tag()); + let image = msg + .attachments + .iter() + .filter(|a| a.width.is_some()) + .map(|a| &a.url) + .next(); + let repost = ChannelId( gs.starboard_channel .to_u64() @@ -101,9 +108,20 @@ impl StarboardHandler { ) .send_message(ctx, |m| { m.embed(|e| { - e.description(format!("[Jump to source]({})\n{}", msg.link(), msg.content)) + let mut e = e + .description(format!( + "[Jump to source]({})\n{}", + msg.link(), + msg.content + )) .author(|a| a.name(&name).icon_url(msg.author.face())) - .timestamp(&msg.timestamp) + .timestamp(&msg.timestamp); + + if let Some(url) = image { + e = e.image(url); + } + + e }) }) .await?; -- GitLab