From 4a80f2eee0af60806811cd1a00898432bb032ad7 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Thu, 9 Sep 2010 12:48:05 -0400 Subject: [PATCH] Added template element THISROOM:FEED:RSS to offer an RSS feed button for a room, anywhere on the page. Added THISROOM:FEED:RSS to the room banner template. --- webcit/feed_generator.c | 22 +++++++++++++++++++++- webcit/static/t/roombanner.html | 1 + 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/webcit/feed_generator.c b/webcit/feed_generator.c index b1ca93252..a73906763 100644 --- a/webcit/feed_generator.c +++ b/webcit/feed_generator.c @@ -170,13 +170,33 @@ void feed_rss(void) { ); wDumpContent(0); - end_webcit_session(); } +/* + * Offer the RSS feed button for this room + */ +void tmplput_rssbutton(StrBuf *Target, WCTemplputParams *TP) +{ + wcsession *WCC = WC; + char feed_link[1024]; + char encoded_link[1024]; + + strcpy(feed_link, "/feed_rss?gotofirst="); + urlesc(&feed_link[20], sizeof(feed_link) - 20, (char *)ChrPtr(WCC->CurRoom.name) ); + CtdlEncodeBase64(encoded_link, feed_link, strlen(feed_link), 0); + + StrBufAppendPrintf(Target, "", encoded_link); + StrBufAppendPrintf(Target, ""); + StrBufAppendPrintf(Target, ""); +} + + + void InitModule_RSS (void) { WebcitAddUrlHandler(HKEY("feed_rss"), "", 0, feed_rss, ANONYMOUS|COOKIEUNNEEDED|FORCE_SESSIONCLOSE); + RegisterNamespace("THISROOM:FEED:RSS", 0, 0, tmplput_rssbutton, NULL, CTX_NONE); } diff --git a/webcit/static/t/roombanner.html b/webcit/static/t/roombanner.html index 8e083d327..0d2116634 100644 --- a/webcit/static/t/roombanner.html +++ b/webcit/static/t/roombanner.html @@ -5,6 +5,7 @@

+

-- 2.30.2