wc_printf("<div id=\"important_message\">\n"
"<span class=\"imsg\">");
StrEscAppend(WCC->WBuf, NULL, WCC->ImportantMessage, 0, 0);
- wc_printf("</span><br />\n"
+ wc_printf("</span><br>\n"
"</div>\n"
);
StrBufAppendBufPlain(WCC->trailing_javascript,
wc_printf("<div id=\"important_message\">\n"
"<span class=\"imsg\">");
StrEscAppend(WCC->WBuf, WCC->ImportantMsg, NULL, 0, 0);
- wc_printf("</span><br />\n"
+ wc_printf("</span><br>\n"
"</div>\n"
);
StrBufAppendBufPlain(WCC->trailing_javascript,
}
/*
- * If we're not connected to a Citadel server, try to hook up the
- * connection now.
+ * If we're not connected to a Citadel server, try to hook up the connection now.
*/
if (!WCC->connected) {
- if (GetConnected ())
+ if (GetConnected()) {
+ hprintf("HTTP/1.1 503 Service Unavailable\r\n");
+ hprintf("Content-Type: text/plain\r\n");
+ begin_burst();
+ wc_printf(_("This program was unable to connect or stay "
+ "connected to the Citadel server. Please report "
+ "this problem to your system administrator.")
+ );
+ end_burst();
goto SKIP_ALL_THIS_CRAP;
+ }
}
-
/*
* If we're not logged in, but we have authentication data (either from
* a cookie or from http-auth), try logging in to Citadel using that.
end_ajax_response();
}
}
- /* When all else fails, display the main menu. */
+ /* When all else fails, display the default landing page or a main menu. */
else {
/*
* ordinary browser users get a nice login screen, DAV etc. requsets
if (xhttp) {
authorization_required();
}
- else if (WCC->serv_info->serv_supports_guest) {
- /* default action. probably revisit this. */
- StrBuf *teh_lobby = NewStrBufPlain(HKEY("_BASEROOM_"));
- smart_goto(teh_lobby);
- FreeStrBuf(&teh_lobby);
- }
else {
- display_login();
+ display_default_landing_page();
}
}
/*
}
+
+/*
+ * Display the appropriate landing page for this site.
+ */
+void display_default_landing_page(void) {
+ if (WC->serv_info->serv_supports_guest) {
+ /* default action. probably revisit this. */
+ StrBuf *teh_lobby = NewStrBufPlain(HKEY("_BASEROOM_"));
+ smart_goto(teh_lobby);
+ FreeStrBuf(&teh_lobby);
+ }
+ else {
+ display_login();
+ }
+}
+
+
/*
* Replacement for sleep() that uses select() in order to avoid SIGALRM
*/