X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=webcit%2Fsitemap.c;h=a0fec9ad7537c791b15c6bd9d7f5fc87f4782a52;hb=8b3b916db46e22d83ba2740d4c09ef8c967263b2;hp=20dace9577e0fdfd7d21c4a310b90df3e0a1b151;hpb=aeade41982c6c9a3e745a3b3c8262a3ec6952670;p=citadel.git diff --git a/webcit/sitemap.c b/webcit/sitemap.c index 20dace957..a0fec9ad7 100644 --- a/webcit/sitemap.c +++ b/webcit/sitemap.c @@ -1,7 +1,7 @@ /* * XML sitemap generator * - * Copyright (c) 2010-2012 by the citadel.org team + * Copyright (c) 2010-2021 by the citadel.org team * * This program is open source software; you can redistribute it and/or modify * it under the terms of the GNU General Public License, version 3. @@ -13,14 +13,13 @@ */ #include "webcit.h" -#include "webserver.h" + /* * XML sitemap generator -- go through the message list for a BBS room */ void sitemap_do_bbs(void) { - wcsession *WCC = WC; int num_msgs = 0; int i; SharedMessageStatus Stat; @@ -30,11 +29,11 @@ void sitemap_do_bbs(void) { Stat.maxload = INT_MAX; Stat.lowest_found = (-1); Stat.highest_found = (-1); - num_msgs = load_msg_ptrs("MSGS ALL", NULL, &Stat, NULL); + num_msgs = load_msg_ptrs("MSGS ALL", NULL, NULL, &Stat, NULL, NULL, NULL, NULL, 0); if (num_msgs < 1) return; for (i=0; isumm); + Msg = GetMessagePtrAt(i, WC->summ); if (Msg != NULL) { wc_printf("%s/readfwd", ChrPtr(site_prefix)); wc_printf("?go="); @@ -46,48 +45,10 @@ void sitemap_do_bbs(void) { } -/* - * XML sitemap generator -- go through the message list for a Blog room - */ -void sitemap_do_blog(void) { - wcsession *WCC = WC; - int num_msgs = 0; - int i; - SharedMessageStatus Stat; - message_summary *Msg = NULL; - StrBuf *Buf = NewStrBuf(); - StrBuf *FoundCharset = NewStrBuf(); - - memset(&Stat, 0, sizeof Stat); - Stat.maxload = INT_MAX; - Stat.lowest_found = (-1); - Stat.highest_found = (-1); - num_msgs = load_msg_ptrs("MSGS ALL", NULL, &Stat, NULL); - if (num_msgs < 1) return; - - for (i=0; isumm); - if (Msg != NULL) { - ReadOneMessageSummary(Msg, FoundCharset, Buf); - /* Show only top level posts, not comments */ - if ((Msg->reply_inreplyto_hash != 0) && (Msg->reply_references_hash == 0)) { - WCC->bptlid = Msg->reply_inreplyto_hash; - wc_printf("%s", ChrPtr(site_prefix)); - tmplput_blog_permalink(NULL, NULL); - wc_printf("\r\n"); - } - } - } - FreeStrBuf(&Buf); - FreeStrBuf(&FoundCharset); -} - - /* * XML sitemap generator -- go through the message list for a wiki room */ void sitemap_do_wiki(void) { - wcsession *WCC = WC; int num_msgs = 0; int i; SharedMessageStatus Stat; @@ -98,11 +59,11 @@ void sitemap_do_wiki(void) { Stat.maxload = INT_MAX; Stat.lowest_found = (-1); Stat.highest_found = (-1); - num_msgs = load_msg_ptrs("MSGS ALL", NULL, &Stat, NULL); + num_msgs = load_msg_ptrs("MSGS ALL", NULL, NULL, &Stat, NULL, NULL, NULL, NULL, 0); if (num_msgs < 1) return; for (i=0; isumm); + Msg = GetMessagePtrAt(i, WC->summ); if (Msg != NULL) { serv_printf("MSG0 %ld|3", Msg->msgnum); @@ -152,6 +113,7 @@ struct sitemap_room_list *sitemap_load_roomlist(void) { return(roomlist); } +extern void sitemap_do_blog(void); /* * Entry point for RSS feed generator @@ -185,7 +147,6 @@ void sitemap(void) { sitemap_do_bbs(); break; case VIEW_WIKI: - case VIEW_WIKIMD: sitemap_do_wiki(); break; case VIEW_BLOG: