summaryrefslogtreecommitdiffstats
path: root/web/html/rss.php
diff options
context:
space:
mode:
authorelij <elij.mx@gmail.com>2009-09-27 16:43:39 -0700
committerLoui Chang <louipc.ist@gmail.com>2009-09-28 16:12:59 -0400
commit5ca82939ce78fe848b92f077dd7ec3311a922755 (patch)
treeb9480c7956b8fd2503113177660001494637fb18 /web/html/rss.php
parenta8bf1108b4443009088a4fa29a45b4b2994354a8 (diff)
downloadaurweb-5ca82939ce78fe848b92f077dd7ec3311a922755.tar.xz
renamed rss2 -> rss
changed file name, as the 2 is relatively meaningless. I think at one time it qualified it as a rss2.0 feed, but the distinction is valueless at this point, since the generated xml itself declares the rss version. make sure to set an apache rewrite rule for any production systems that require it. Signed-off-by: Loui Chang <louipc.ist@gmail.com>
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);
+