static long dont_post = (-1L);
struct wc_attachment *att, *aptr;
int is_anonymous = 0;
+ char *display_name;
- if (!strcasecmp(bstr("is_anonymous"), "yes")) {
+ display_name = bstr("display_name");
+ if (!strcmp(display_name, "__ANONYMOUS__")) {
+ display_name = "";
is_anonymous = 1;
}
"saved this message."));
} else {
rfc2047encode(encoded_subject, sizeof encoded_subject, bstr("subject"));
- sprintf(buf, "ENT0 1|%s|%d|4|%s|||%s|%s|%s",
+ sprintf(buf, "ENT0 1|%s|%d|4|%s|%s||%s|%s|%s",
bstr("recp"),
is_anonymous,
encoded_subject,
+ display_name,
bstr("cc"),
bstr("bcc"),
bstr("wikipage")
char buf[SIZ];
char ebuf[SIZ];
long now;
+ char *display_name;
struct wc_attachment *att;
int recipient_required = 0;
int recipient_bad = 0;
gotoroom(bstr("force_room"));
}
- if (!strcasecmp(bstr("is_anonymous"), "yes")) {
+ display_name = bstr("display_name");
+ if (!strcmp(display_name, "__ANONYMOUS__")) {
+ display_name = "";
is_anonymous = 1;
}
/** Now check our actual recipients if there are any */
if (recipient_required) {
- sprintf(buf, "ENT0 0|%s|%d|0||||%s|%s|%s", bstr("recp"), is_anonymous,
+ sprintf(buf, "ENT0 0|%s|%d|0||%s||%s|%s|%s",
+ bstr("recp"),
+ is_anonymous,
+ display_name,
bstr("cc"), bstr("bcc"), bstr("wikipage"));
serv_puts(buf);
serv_getln(buf, sizeof buf);
wprintf("%s ", buf);
wprintf(_(" <I>from</I> "));
- escputs(WC->wc_fullname);
- wprintf(_(" <I>in</I> "));
- escputs(WC->wc_roomname);
+
+ wprintf("<select name=\"display_name\" size=1>\n");
+
+ serv_puts("GVSN");
+ serv_getln(buf, sizeof buf);
+ if (buf[0] == '1') {
+ while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
+ wprintf("<option %s value=\"",
+ ((!strcasecmp(bstr("display_name"), buf)) ? "selected" : "")
+ );
+ escputs(buf);
+ wprintf("\">");
+ escputs(buf);
+ wprintf("</option>\n");
+ }
+ }
if (WC->room_flags & QR_ANONOPT) {
- wprintf(" "
- "<input type=\"checkbox\" name=\"is_anonymous\" value=\"yes\" %s>",
- (is_anonymous ? "checked" : "")
+ wprintf("<option %s value=\"__ANONYMOUS__\">%s</option>\n",
+ ((!strcasecmp(bstr("__ANONYMOUS__"), WC->wc_fullname)) ? "selected" : ""),
+ _("Anonymous")
);
- wprintf("Anonymous");
}
+
+ wprintf("</select>\n");
+
+ wprintf(_(" <I>in</I> "));
+ escputs(WC->wc_roomname);
wprintf("<br>\n"); /** header bar */
wprintf("<table border=\"0\" width=\"100%%\">\n");
#define SLEEPING 180 /* TCP connection timeout */
#define WEBCIT_TIMEOUT 900 /* WebCit session timeout */
#define PORT_NUM 2000 /* port number to listen on */
-#define SERVER "WebCit v7.02" /* who's in da house */
+#define SERVER "WebCit v7.05" /* who's in da house */
#define DEVELOPER_ID 0
#define CLIENT_ID 4
-#define CLIENT_VERSION 702 /* This version of WebCit */
-#define MINIMUM_CIT_VERSION 690 /* min required Citadel ver. */
+#define CLIENT_VERSION 705 /* This version of WebCit */
+#define MINIMUM_CIT_VERSION 705 /* min required Citadel ver. */
#define DEFAULT_HOST "localhost" /* Default Citadel server */
#define DEFAULT_PORT "504"
#define LB (1) /* Internal escape chars */