X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=webcit%2Froomops.c;h=832b622d1e4ae39d8e6d6bbeac4d792329c46e99;hb=bedf5c0b955473d8ad02eaf628e8d209f534f2b6;hp=5cee8c9f21012816ca6b76aa303147fe42346f85;hpb=088ccd10d6dd7ca2bee8d3f7638a179c50726ae2;p=citadel.git diff --git a/webcit/roomops.c b/webcit/roomops.c index 5cee8c9f2..832b622d1 100644 --- a/webcit/roomops.c +++ b/webcit/roomops.c @@ -272,22 +272,36 @@ void zapped_list(void) */ void readinfo(void) { - char buf[SIZ]; + char buf[256]; + char briefinfo[128]; + char fullinfo[8192]; + int fullinfo_len = 0; serv_puts("RINF"); serv_getln(buf, sizeof buf); if (buf[0] == '1') { + + while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) { + if (fullinfo_len < (sizeof fullinfo - sizeof buf)) { + strcpy(&fullinfo[fullinfo_len], buf); + fullinfo_len += strlen(buf); + } + } + + safestrncpy(briefinfo, fullinfo, sizeof briefinfo); + strcpy(&briefinfo[50], "..."); + wprintf("
"); - wprintf(_("Room info")); - wprintf("
" - "

"); - wprintf(_("Close window")); - wprintf("

"); - fmout("CENTER"); + escputs(briefinfo); + wprintf("
"); + wprintf("\"%s\"", + _("Close window") + ); + escputs(fullinfo); wprintf("
"); } else { @@ -453,7 +467,8 @@ void embed_room_banner(char *got, int navbar_style) { WC->new_mail = extract_int(&got[4], 9); WC->wc_view = extract_int(&got[4], 11); - svprintf("ROOMNAME", WCS_STRING, "%s", WC->wc_roomname); + stresc(buf, WC->wc_roomname, 1, 1); + svprintf("ROOMNAME", WCS_STRING, "%s", buf); svprintf("NUMMSGS", WCS_STRING, _("%d new of %d messages"), extract_int(&got[4], 1), @@ -468,10 +483,7 @@ void embed_room_banner(char *got, int navbar_style) { do_template("roombanner"); if (navbar_style != navbar_none) { - wprintf("
\n" - "