X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=webcit%2Fwiki.c;h=b1822e951a0ee17d5df2bcc5b63d6df8cb467977;hb=HEAD;hp=c4b5736ccdef3aae5b26762ce91b61ebdb0fecf9;hpb=c6aec42f213ec284e34648f3d69bcf927dccddb1;p=citadel.git diff --git a/webcit/wiki.c b/webcit/wiki.c index c4b5736cc..390bf3cbe 100644 --- a/webcit/wiki.c +++ b/webcit/wiki.c @@ -1,4 +1,3 @@ - /* * Functions pertaining to rooms with a wiki view * @@ -19,7 +18,8 @@ /* * Convert a string to something suitable as a wiki index */ -void str_wiki_index(StrBuf * s) { +void str_wiki_index(StrBuf *s) +{ StrBufSanitizeAscii(s, '_'); StrBufLowerCase(s); } @@ -30,13 +30,14 @@ void str_wiki_index(StrBuf * s) { * "rev" may be set to an empty string to display the current version. * "do_revert" may be set to nonzero to perform a reversion to the specified version. */ -void display_wiki_page_backend(StrBuf * pagename, char *rev, int do_revert) { +void display_wiki_page_backend(StrBuf *pagename, char *rev, int do_revert) +{ const StrBuf *Mime; long msgnum = (-1L); char buf[256]; if (WC->CurRoom.view != VIEW_WIKI) { - wc_printf(_("'%s' is not a Wiki room."), ChrPtr(WC->CurRoom.name)); + wc_printf(_("'%s' is not a Wiki room."), ChrPtr(WC->CurRoom.name) ); return; } @@ -48,7 +49,7 @@ void display_wiki_page_backend(StrBuf * pagename, char *rev, int do_revert) { if ((rev != NULL) && (strlen(rev) > 0)) { /* read an older revision */ - serv_printf("WIKI rev|%s|%s|%s", ChrPtr(pagename), rev, (do_revert ? "revert" : "fetch")); + serv_printf("WIKI rev|%s|%s|%s", ChrPtr(pagename), rev, (do_revert ? "revert" : "fetch") ); serv_getln(buf, sizeof buf); if (buf[0] == '2') { msgnum = extract_long(&buf[4], 0); @@ -71,7 +72,8 @@ void display_wiki_page_backend(StrBuf * pagename, char *rev, int do_revert) { /* * Display a specific page from a wiki room */ -void display_wiki_page(void) { +void display_wiki_page(void) +{ StrBuf *pagename; char rev[128]; int do_revert = 0; @@ -89,7 +91,8 @@ void display_wiki_page(void) { /* * Display the revision history for a wiki page (template callback) */ -void tmplput_display_wiki_history(StrBuf * Target, WCTemplputParams * TP) { +void tmplput_display_wiki_history(StrBuf *Target, WCTemplputParams *TP) +{ StrBuf *pagename; StrBuf *Buf; int row = 0; @@ -113,13 +116,13 @@ void tmplput_display_wiki_history(StrBuf * Target, WCTemplputParams * TP) { wc_printf("%s", _("Date")); wc_printf("%s", _("Author")); - while ((StrBuf_ServGetln(Buf) >= 0) && strcmp(ChrPtr(Buf), "000")) { + while((StrBuf_ServGetln(Buf) >= 0) && strcmp(ChrPtr(Buf), "000")) { rev_date = extract_long(ChrPtr(Buf), 1); webcit_fmt_date(rev_date_displayed, sizeof rev_date_displayed, rev_date, DATEFMT_FULL); StrBufExtract_token(author, Buf, 2, '|'); - wc_printf("", ((row % 2) ? "#FFFFFF" : "#DDDDDD")); + wc_printf("", ((row%2) ? "#FFFFFF" : "#DDDDDD")); wc_printf("%s", rev_date_displayed); wc_printf("%s", _("(show)")); wc_printf("(%s)", _("Current version")); } else { - wc_printf("%s", _("(show)")); - wc_printf - ("%s", - bstr("page"), ChrPtr(rev_uuid), _("(revert)") - ); + wc_printf("%s", + bstr("page"), + ChrPtr(rev_uuid), + _("(revert)") + ); } wc_printf("\n"); @@ -176,7 +180,8 @@ void tmplput_display_wiki_history(StrBuf * Target, WCTemplputParams * TP) { /* * Display the revision history for a wiki page */ -void display_wiki_history(void) { +void display_wiki_history(void) +{ output_headers(1, 1, 1, 0, 0, 0); do_template("wiki_history"); wDumpContent(1); @@ -186,7 +191,8 @@ void display_wiki_history(void) { /* * Display a list of all pages in a Wiki room (template callback) */ -void tmplput_display_wiki_pagelist(StrBuf * Target, WCTemplputParams * TP) { +void tmplput_display_wiki_pagelist(StrBuf *Target, WCTemplputParams *TP) +{ StrBuf *Buf; int row = 0; @@ -194,7 +200,7 @@ void tmplput_display_wiki_pagelist(StrBuf * Target, WCTemplputParams * TP) { serv_printf("MSGS SEARCH|%s||4", bstr("query")); /* search-reduced list */ } else { - serv_printf("MSGS ALL|||4"); /* full list */ + serv_printf("MSGS ALL|||4"); /* full list */ } Buf = NewStrBuf(); @@ -205,11 +211,11 @@ void tmplput_display_wiki_pagelist(StrBuf * Target, WCTemplputParams * TP) { wc_printf(""); wc_printf("", _("Page title")); - while ((StrBuf_ServGetln(Buf) >= 0) && strcmp(ChrPtr(Buf), "000")) { + while((StrBuf_ServGetln(Buf) >= 0) && strcmp(ChrPtr(Buf), "000")) { StrBufExtract_token(pagetitle, Buf, 1, '|'); - if (!bmstrcasestr((char *) ChrPtr(pagetitle), "_HISTORY_")) { /* no history pages */ - wc_printf("", ((row % 2) ? "#FFFFFF" : "#DDDDDD")); + if (!bmstrcasestr((char *)ChrPtr(pagetitle), "_HISTORY_")) { /* no history pages */ + wc_printf("", ((row%2) ? "#FFFFFF" : "#DDDDDD")); wc_printf("
%s
"); @@ -230,14 +236,16 @@ void tmplput_display_wiki_pagelist(StrBuf * Target, WCTemplputParams * TP) { /* * Display a list of all pages in a Wiki room. Search requests in a Wiki room also go here. */ -void display_wiki_pagelist(void) { +void display_wiki_pagelist(void) +{ output_headers(1, 1, 1, 0, 0, 0); do_template("wiki_pagelist"); wDumpContent(1); } -int wiki_Cleanup(void **ViewSpecific) { +int wiki_Cleanup(void **ViewSpecific) +{ StrBuf *pagename; pagename = NewStrBufDup(sbstr("page")); display_wiki_page_backend(pagename, "", 0); @@ -246,7 +254,8 @@ int wiki_Cleanup(void **ViewSpecific) { } -int ConditionalHaveWikiPage(StrBuf * Target, WCTemplputParams * TP) { +int ConditionalHaveWikiPage(StrBuf *Target, WCTemplputParams *TP) +{ const char *page; const char *pch; long len; @@ -257,34 +266,54 @@ int ConditionalHaveWikiPage(StrBuf * Target, WCTemplputParams * TP) { } -int ConditionalHavewikiType(StrBuf * Target, WCTemplputParams * TP) { +int ConditionalHavewikiType(StrBuf *Target, WCTemplputParams *TP) +{ const char *pch; long len; GetTemplateTokenString(Target, TP, 2, &pch, &len); - return bmstrcasestr((char *) ChrPtr(WC->Hdr->HR.ReqLine), pch) != NULL; + return bmstrcasestr((char *)ChrPtr(WC->Hdr->HR.ReqLine), pch) != NULL; } -int wiki_PrintHeaderPage(SharedMessageStatus * Stat, void **ViewSpecific) { +int wiki_PrintHeaderPage(SharedMessageStatus *Stat, void **ViewSpecific) +{ /* this function was intentionaly left empty. */ return 0; } -int wiki_GetParamsGetServerCall(SharedMessageStatus * Stat, - void **ViewSpecific, long oper, char *cmd, long len, char *filter, long flen) { +int wiki_GetParamsGetServerCall(SharedMessageStatus *Stat, + void **ViewSpecific, + long oper, + char *cmd, + long len, + char *filter, + long flen) +{ if (oper == do_search) display_wiki_pagelist(); - else + else http_redirect("wiki?page=home"); return 300; } -void InitModule_WIKI(void) { - RegisterReadLoopHandlerset(VIEW_WIKI, - wiki_GetParamsGetServerCall, wiki_PrintHeaderPage, NULL, NULL, NULL, NULL, wiki_Cleanup, NULL); +void +InitModule_WIKI +(void) +{ + RegisterReadLoopHandlerset( + VIEW_WIKI, + wiki_GetParamsGetServerCall, + wiki_PrintHeaderPage, + NULL, + NULL, + NULL, + NULL, + wiki_Cleanup, + NULL + ); WebcitAddUrlHandler(HKEY("wiki"), "", 0, display_wiki_page, 0); WebcitAddUrlHandler(HKEY("wiki_history"), "", 0, display_wiki_history, 0);