From 213e6e64dd863fd39d0db7c6fb4ccf1970a868fb Mon Sep 17 00:00:00 2001 From: Chip Black Date: Wed, 5 Jan 2011 04:48:38 -0600 Subject: [PATCH] Add pubDate to RSS generator --- cgi/rss.c | 7 +++++++ database/database.h | 1 + 2 files changed, 8 insertions(+) diff --git a/cgi/rss.c b/cgi/rss.c index a9e3464..24133f6 100644 --- a/cgi/rss.c +++ b/cgi/rss.c @@ -1,5 +1,6 @@ #include #include +#include #include #include "database.h" #include "escapery.h" @@ -12,6 +13,8 @@ int fprint_rss(FILE *f, const char *username) { uint64_t i = (record_count > 50 ? record_count - 50 : 0); char *data; char *tmp; + time_t post_time; + char date[40]; int len; fprintf(f, @@ -30,10 +33,14 @@ int fprint_rss(FILE *f, const char *username) { while (i < record_count) { blerg_fetch(b, i, &data, &len); tmp = xml_escape_data(data, len); + post_time = blerg_get_timestamp(b, i); + strftime(date, 39, "%a, %d %b %Y %H:%M:%S %Z", gmtime(&post_time)); fprintf(f, "\n" + "%s\n" "%s\n" "\n", + date, tmp ); free(tmp); diff --git a/database/database.h b/database/database.h index 0ef1c7d..d128869 100644 --- a/database/database.h +++ b/database/database.h @@ -34,5 +34,6 @@ int blerg_close(struct blerg *); int blerg_store(struct blerg *, const char *, int); int blerg_fetch(struct blerg *, int, char **, int *); uint64_t blerg_get_record_count(struct blerg *); +time_t blerg_get_timestamp(struct blerg *blerg, int record); #endif //_DATABASE_H -- 2.34.1