summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhorus2026-03-29 16:51:34 +0200
committerhorus2026-03-29 16:51:34 +0200
commitdc317981311d42664375484e777b20e81f41e841 (patch)
treedd1b03f6a29009f0b0af691531f092425b8209c1
parent4123e50ad63c2db8150bed396c6de44ec30fbffd (diff)
downloadcurious-dc317981311d42664375484e777b20e81f41e841.tar.gz
fix rss feeds
-rw-r--r--app/Http/Controllers/FeedController.php22
-rw-r--r--app/Libraries/Helper.php3
2 files changed, 22 insertions, 3 deletions
diff --git a/app/Http/Controllers/FeedController.php b/app/Http/Controllers/FeedController.php
index 43b31ef..6dadf8f 100644
--- a/app/Http/Controllers/FeedController.php
+++ b/app/Http/Controllers/FeedController.php
@@ -15,18 +15,34 @@ class FeedController extends Controller
public function new()
{
// creating rss feed with our most recent 20 posts
- $articles = Article::orderBy('created_at', 'desc')->take(20)->get();
+ $articles = Article::join('discussion', 'discussion.article_id', '=', 'view_article.id')
+ ->select('view_article.id', 'view_article.article_id', 'view_article.url', 'view_article.title', 'view_article.excerpt_html', 'view_article.impact', 'view_article.upvotes', 'view_article.comments', 'view_article.repost')
+ ->groupBy('view_article.id', 'view_article.article_id', 'view_article.url', 'view_article.title', 'view_article.excerpt_html', 'view_article.impact', 'view_article.upvotes', 'view_article.comments', 'view_article.repost')
+ ->orderByRaw('MAX(discussion.posted_on) DESC')
+ ->take(20)
+ ->get();
+
return Helper::makeFeed($articles, "new");
}
public function mastodon()
{
- $articles = Article::orderBy('created_at', 'desc')->take(20)->get();
+ $articles = Article::join('discussion', 'discussion.article_id', '=', 'view_article.id')
+ ->select('view_article.id', 'view_article.article_id', 'view_article.url', 'view_article.title', 'view_article.excerpt_html', 'view_article.impact', 'view_article.upvotes', 'view_article.comments', 'view_article.repost')
+ ->groupBy('view_article.id', 'view_article.article_id', 'view_article.url', 'view_article.title', 'view_article.excerpt_html', 'view_article.impact', 'view_article.upvotes', 'view_article.comments', 'view_article.repost')
+ ->orderByRaw('MAX(discussion.posted_on) DESC')
+ ->take(20)
+ ->get();
return Helper::makeFeed($articles, "mastodon");
}
public function mastodon_test()
{
- $articles = Article::orderBy('created_at', 'desc')->take(20)->get();
+ $articles = Article::join('discussion', 'discussion.article_id', '=', 'view_article.id')
+ ->select('view_article.id', 'view_article.article_id', 'view_article.url', 'view_article.title', 'view_article.excerpt_html', 'view_article.impact', 'view_article.upvotes', 'view_article.comments', 'view_article.repost')
+ ->groupBy('view_article.id', 'view_article.article_id', 'view_article.url', 'view_article.title', 'view_article.excerpt_html', 'view_article.impact', 'view_article.upvotes', 'view_article.comments', 'view_article.repost')
+ ->orderByRaw('MAX(discussion.posted_on) DESC')
+ ->take(20)
+ ->get();
return Helper::makeFeed($articles, "mastodon_test");
}
diff --git a/app/Libraries/Helper.php b/app/Libraries/Helper.php
index 924c1db..fcf7e5b 100644
--- a/app/Libraries/Helper.php
+++ b/app/Libraries/Helper.php
@@ -37,6 +37,8 @@ class Helper {
$feed_description = 'All articles for "' . $title . '".';
break;
}
+ $feed_title .= " | mostdiscussed.com";
+
// create new feed
$feed = FeedFactory::create();
@@ -53,6 +55,7 @@ class Helper {
// set your feed's title, description, link, pubdate and language
$feed->setTitle($feed_title);
$feed->setDescription($feed_description);
+ $feed->setSubtitle($feed_description);
#$feed->setLogo('http://yoursite.tld/logo.jpg');
$feed->setLink(url('feed/' . $title));
$feed->setDateFormat('datetime'); // 'datetime', 'timestamp' or 'carbon'