summaryrefslogtreecommitdiffstats
path: root/web/html/rss.php
diff options
context:
space:
mode:
Diffstat (limited to 'web/html/rss.php')
-rw-r--r--web/html/rss.php48
1 files changed, 48 insertions, 0 deletions
diff --git a/web/html/rss.php b/web/html/rss.php
new file mode 100644
index 0000000..659ee15
--- /dev/null
+++ b/web/html/rss.php
@@ -0,0 +1,48 @@
+<?php
+
+set_include_path(get_include_path() . PATH_SEPARATOR . '../lib' . PATH_SEPARATOR . '../lang');
+include_once("aur.inc");
+include_once("feedcreator.class.php");
+
+#detect prefix
+$protocol = $_SERVER["HTTPS"]=='on' ? "https" : "http";
+$host = $_SERVER['HTTP_HOST'];
+
+#If there's a cached version <1hr old, won't regenerate now
+$rss = new UniversalFeedCreator();
+$rss->useCached("RSS2.0", "/tmp/aur-newestpkg.xml", 1800);
+
+#All the general RSS setup
+$rss->title = "AUR Newest Packages";
+$rss->description = "The latest and greatest packages in the AUR";
+$rss->link = "${protocol}://{$host}";
+$rss->syndicationURL = "{$protocol}://{$host}/rss2.php";
+$image = new FeedImage();
+$image->title = "AUR";
+$image->url = "{$protocol}://{$host}/images/AUR-logo-80.png";
+$image->link = $rss->link;
+$image->description = "AUR Newest Packages Feed";
+$rss->image = $image;
+
+#Get the latest packages and add items for them
+$dbh = db_connect();
+$q = "SELECT * FROM Packages ";
+$q.= "WHERE DummyPkg != 1 ";
+$q.= "ORDER BY SubmittedTS DESC ";
+$q.= "LIMIT 0 , 20";
+$result = db_query($q, $dbh);
+
+while ($row = mysql_fetch_assoc($result)) {
+ $item = new FeedItem();
+ $item->title = $row["Name"];
+ $item->link = "{$protocol}://{$host}/packages.php?ID={$row["ID"]}";
+ $item->description = $row["Description"];
+ $item->date = intval($row["SubmittedTS"]);
+ $item->source = "{$protocol}://{$host}";
+ $item->author = username_from_id($row["MaintainerUID"]);
+ $rss->addItem($item);
+}
+
+#save it so that useCached() can find it
+$rss->saveFeed("RSS2.0","/tmp/aur-newestpkg.xml",true);
+