]> code.citadel.org Git - citadel.git/blobdiff - citadel/textclient/citadel.c
Fixed bugs related to last three commits
[citadel.git] / citadel / textclient / citadel.c
index 8d730855eda712dea9079c2ef6a00c8d07f6acfb..ef2685edadd7d0a15f7b7128cb36a73300821cfd 100644 (file)
@@ -127,21 +127,6 @@ CtdlIPC *ipc_for_signal_handlers;  /* KLUDGE cover your eyes */
 int enable_syslog = 0;
 
 
-/*
- * CtdlLogPrintf()  ...   Write logging information; 
- *                  simple here to have the same 
- *                  symbols in the client.
- */
-
-void CtdlLogPrintf(enum LogLevel loglevel, const char *format, ...) {   
-       va_list arg_ptr;
-
-       va_start(arg_ptr, format);
-       vfprintf(stderr, format, arg_ptr);   
-       va_end(arg_ptr);   
-       fflush(stderr);
-}   
-
 /*
  * here is our 'clean up gracefully and exit' routine
  */
@@ -471,6 +456,7 @@ void dotgoto(CtdlIPC *ipc, char *towhere, int display_name, int fromungoto)
        switch(room->RRdefaultview) {
                case VIEW_BBS:
                case VIEW_MAILBOX:
+               case VIEW_BLOG:
                                        entmsg_ok = 1;
                                        break;
                default:
@@ -531,6 +517,14 @@ void dotgoto(CtdlIPC *ipc, char *towhere, int display_name, int fromungoto)
                }
        }
        free(room);
+
+       if (screenwidth>5) snprintf(&status_line[1], screenwidth-1, "%s  |  %s  |  %s  |  %s  |  %d new mail  |",
+               (secure ? "Encrypted" : "Unencrypted"),
+               ipc->ServInfo.humannode,
+               ipc->ServInfo.site_location,
+               room_name,
+               newmailcount
+       );
 }
 
 /* Goto next room having unread messages.
@@ -595,7 +589,6 @@ void forget_all_rooms_on(CtdlIPC *ipc, int ffloor)
        int r;                          /* IPC response code */
 
        scr_printf("Forgetting all rooms on %s...\n", &floorlist[ffloor][0]);
-       scr_flush();
        remove_march("_FLOOR_", ffloor);
        r = CtdlIPCKnownRooms(ipc, AllAccessibleRooms, ffloor, &flist, buf);
        if (r / 100 != 1) {
@@ -973,8 +966,6 @@ void read_config(CtdlIPC *ipc)
        scr_printf("\n");
 
        /* show preferences */
-       scr_printf("Your screen width: ");                                     color(BRIGHT_CYAN); scr_printf("%d",   /*user->USscreenwidth*/ screenwidth);          color(DIM_WHITE); 
-       scr_printf(", height: ");                                              color(BRIGHT_CYAN); scr_printf("%d\n", /*user->USscreenheight*/ screenheight);        color(DIM_WHITE);  
        scr_printf("Are you an experienced Citadel user: ");                   color(BRIGHT_CYAN); scr_printf("%s\n", (user->flags & US_EXPERT) ? "Yes" : "No");     color(DIM_WHITE);
        scr_printf("Print last old message on New message request: ");         color(BRIGHT_CYAN); scr_printf("%s\n", (user->flags & US_LASTOLD)? "Yes" : "No");     color(DIM_WHITE);
        scr_printf("Prompt after each message: ");                             color(BRIGHT_CYAN); scr_printf("%s\n", (!(user->flags & US_NOPROMPT))? "Yes" : "No"); color(DIM_WHITE);
@@ -1401,7 +1392,6 @@ int shift(int argc, char **argv, int start, int count) {
 
 static void statusHook(char *s) {
        scr_printf(s);
-       scr_flush();
 }
 
 /*
@@ -1552,6 +1542,8 @@ int main(int argc, char **argv)
                logoff(NULL, 3);
        }
 
+       CtdlIPC_SetNetworkStatusCallback(ipc, scr_wait_indicator);
+
        if (!(ipc->isLocal)) {
                scr_printf("Connected to %s [%s].\n", ipc->ip_hostname, ipc->ip_address);
        }
@@ -1600,7 +1592,6 @@ int main(int argc, char **argv)
        get_serv_info(ipc, telnet_client_host);
        scr_printf("%-24s\n%s\n%s\n", ipc->ServInfo.software, ipc->ServInfo.humannode,
                   ipc->ServInfo.site_location);
-       scr_flush();
 
        screenwidth = 80;       /* default screen dimensions */
        screenheight = 24;
@@ -1782,17 +1773,11 @@ NEWUSR: if (IsEmptyStr(rc_password)) {
        screenwidth = 80;
        screenheight = 24;
        r = CtdlIPCGetConfig(ipc, &myself, aaa);
-       if (r == 2) {
-               screenwidth = myself->USscreenwidth;
-               screenheight = myself->USscreenheight;
-       }
        if (getenv("TERM") != NULL)
                if (!strcmp(getenv("TERM"), "xterm")) {
                        have_xterm = 1;
                }
-#ifdef TIOCGWINSZ
        check_screen_dims();
-#endif
 
        set_floor_mode(ipc);