diff --git a/Services/HandlePostAction.cs b/Services/HandlePostAction.cs
index 8836b31..29b798e 100755
--- a/Services/HandlePostAction.cs
+++ b/Services/HandlePostAction.cs
@@ -1,5 +1,6 @@
using CatsOfMastodonBot.Models;
using JsonFlatFileDataStore;
+using Microsoft.AspNetCore.Mvc.Diagnostics;
using Microsoft.Extensions.Logging;
using mstdnCats.Models;
using Telegram.Bot;
@@ -27,12 +28,15 @@ namespace mstdnCats.Services
string mediaId = parts[1];
var post = _db.AsQueryable().FirstOrDefault(p => p.MediaAttachments.Any(m => m.MediaId == mediaId));
+ // Extract Only media attachments into a list of media attachments
+
if (post == null)
{
logger?.LogInformation("No matching post found.");
return;
}
+ var allMediaAttachments = _db.AsQueryable().SelectMany(p => p.MediaAttachments).ToList();
// Approve the media attachment
if (action == "approve")
@@ -55,7 +59,7 @@ namespace mstdnCats.Services
if (updated)
{
// Send the media attachment to the channel
- await _bot.SendPhoto(config.CHANNEL_NUMID, post.MediaAttachments.First().Url, caption: $"Post from " + $"" + post.Account.DisplayName + " ", parseMode: ParseMode.Html
+ await _bot.SendPhoto(config.CHANNEL_NUMID, allMediaAttachments.First(m => m.MediaId == mediaId).Url, caption: $"Post from " + $"" + post.Account.DisplayName + " ", parseMode: ParseMode.Html
, replyMarkup: new InlineKeyboardMarkup(InlineKeyboardButton.WithUrl("View on Mastodon", post.Url)));
await _bot.AnswerCallbackQuery(callbackQuery.Id, "Media attachment approved and sent to channel.");