]> code.citadel.org Git - citadel.git/commitdiff
* Set default view of new rooms during CRE8 command instead of afterwards
authorArt Cancro <ajc@citadel.org>
Thu, 16 Sep 2004 02:42:37 +0000 (02:42 +0000)
committerArt Cancro <ajc@citadel.org>
Thu, 16 Sep 2004 02:42:37 +0000 (02:42 +0000)
webcit/ChangeLog
webcit/calendar.c
webcit/messages.c
webcit/roomops.c
webcit/webcit.h

index f21d34879c54ab429418d8fe867454f2013450dd..7fd689bd8f5654a56c3fd2db6ce2f384681dec91 100644 (file)
@@ -1,4 +1,7 @@
 $Log$
+Revision 523.4  2004/09/16 02:42:37  ajc
+* Set default view of new rooms during CRE8 command instead of afterwards
+
 Revision 523.3  2004/09/15 03:08:50  ajc
 * Support config of seaperate MSA port in Citadel 6.26
 
@@ -2046,4 +2049,3 @@ Sun Dec  6 19:50:55 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
 
 1998-12-03 Nathan Bryant <bryant@cs.usm.maine.edu>
        * webserver.c: warning fix
-
index 4d16877c843883cb6f7c159a12b9ee8481c1c9c9..91a2c413a91bb30bf4c37dc88e82a91b1d39b952 100644 (file)
@@ -823,7 +823,7 @@ void display_edit_task(void) {
 
        /* Force change the room if we have to */
        if (strlen(bstr("taskrm")) > 0) {
-               gotoroom(bstr("taskrm"), 0);
+               gotoroom(bstr("taskrm"));
        }
 
        msgnum = atol(bstr("msgnum"));
index 758659260848fbe1b778e719693a49c5d5a23c5f..4c22811c431781909114b8dbad4c68d9242f1561 100644 (file)
@@ -1505,7 +1505,7 @@ void display_enter(void)
        struct wc_attachment *att;
 
        if (strlen(bstr("force_room")) > 0) {
-               gotoroom(bstr("force_room"), 0);
+               gotoroom(bstr("force_room"));
        }
 
        /* Are we perhaps in an address book view?  If so, then an "enter
index 695fa48c982f03298f84d2dd071acc7081166dca..ce7e4fd5a9f4aa6e20dca3f8ec4391afba7f88cc 100644 (file)
@@ -366,36 +366,18 @@ void embed_room_banner(char *got) {
 
 
 /*
- * generic routine to take the session to a new room
+ * back end routine to take the session to a new room
  *
- * display_name values:  0 = goto only
- *                       1 = goto and display
- *                       2 = display only
  */
-void gotoroom(char *gname, int display_name)
+void gotoroom(char *gname)
 {
        char buf[SIZ];
        static long ls = (-1L);
 
+       /* store ungoto information */
+       strcpy(WC->ugname, WC->wc_roomname);
+       WC->uglsn = ls;
 
-       if (display_name) {
-               output_headers(0);
-                wprintf("Pragma: no-cache\n");
-                wprintf("Cache-Control: no-store\n");
-
-               wprintf("<HTML><HEAD>\n"
-                       "<META HTTP-EQUIV=\"refresh\" CONTENT=\"500363689;\">\n"
-                       "<META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">\n"
-                       "<META HTTP-EQUIV=\"expired\" CONTENT=\"28-May-1971 18:10:00 GMT\">\n"
-                       "<meta name=\"MSSmartTagsPreventParsing\" content=\"TRUE\">\n"
-                       "</HEAD>\n");
-               do_template("background");
-       }
-       if (display_name != 2) {
-               /* store ungoto information */
-               strcpy(WC->ugname, WC->wc_roomname);
-               WC->uglsn = ls;
-       }
        /* move to the new room */
        serv_printf("GOTO %s", gname);
        serv_gets(buf);
@@ -404,10 +386,6 @@ void gotoroom(char *gname, int display_name)
                serv_gets(buf);
        }
        if (buf[0] != '2') {
-               if (display_name) {
-                       wprintf("<EM>%s</EM><BR>\n", &buf[4]);
-                       wDumpContent(1);
-               }
                return;
        }
        extract(WC->wc_roomname, &buf[4], 0);
@@ -428,12 +406,6 @@ void gotoroom(char *gname, int display_name)
        remove_march(WC->wc_roomname);
        if (!strcasecmp(gname, "_BASEROOM_"))
                remove_march(gname);
-
-       /* Display the room banner */
-       if (display_name) {
-               embed_room_banner(buf);
-               wDumpContent(1);
-       }
 }
 
 
@@ -544,7 +516,7 @@ void gotonext(void)
 
 
 void smart_goto(char *next_room) {
-       gotoroom(next_room, 0);
+       gotoroom(next_room);
        readloop("readnew");
 }
 
@@ -1354,7 +1326,7 @@ void editroom(void)
                display_editroom();
                return;
        }
-       gotoroom(er_name, 0);
+       gotoroom(er_name);
 
        if (strlen(er_roomaide) > 0) {
                sprintf(buf, "SETA %s", er_roomaide);
@@ -1366,7 +1338,7 @@ void editroom(void)
                        return;
                }
        }
-       gotoroom(er_name, 0);
+       gotoroom(er_name);
        strcpy(WC->ImportantMessage, "Your changes have been saved.");
        display_editroom();
        return;
@@ -1593,6 +1565,7 @@ void entroom(void)
        char er_password[SIZ];
        int er_floor;
        int er_num_type;
+       int er_view;
 
        if (strcmp(bstr("sc"), "OK")) {
                strcpy(WC->ImportantMessage,
@@ -1604,6 +1577,7 @@ void entroom(void)
        strcpy(er_type, bstr("type"));
        strcpy(er_password, bstr("er_password"));
        er_floor = atoi(bstr("er_floor"));
+       er_view = atoi(bstr("er_view"));
 
        er_num_type = 0;
        if (!strcmp(er_type, "guessname"))
@@ -1615,8 +1589,8 @@ void entroom(void)
        if (!strcmp(er_type, "personal"))
                er_num_type = 4;
 
-       sprintf(buf, "CRE8 1|%s|%d|%s|%d", 
-               er_name, er_num_type, er_password, er_floor);
+       sprintf(buf, "CRE8 1|%s|%d|%s|%d|%d|%d", 
+               er_name, er_num_type, er_password, er_floor, 0, er_view);
        serv_puts(buf);
        serv_gets(buf);
        if (buf[0] != '2') {
@@ -1624,9 +1598,8 @@ void entroom(void)
                display_main_menu();
                return;
        }
-       gotoroom(er_name, 0);
-       er_set_default_view(atoi(bstr("er_view")));     /* Set default view */
-       do_change_view(atoi(bstr("er_view")));          /* Now go there */
+       gotoroom(er_name);
+       do_change_view(er_view);                /* Now go there */
 }
 
 
@@ -1932,6 +1905,7 @@ void do_change_view(int newview) {
 
        serv_printf("VIEW %d", newview);
        serv_gets(buf);
+       WC->wc_view = newview;
        smart_goto(WC->wc_roomname);
 }
 
index dc8b2f10de484db2afea0e660e9c68e7b9a31b92..d3f148aef80b064de99274a0730551457bd62089 100644 (file)
@@ -37,7 +37,7 @@
 #define DEVELOPER_ID           0
 #define CLIENT_ID              4
 #define CLIENT_VERSION         523             /* This version of WebCit */
-#define MINIMUM_CIT_VERSION    623             /* min required Citadel vers */
+#define MINIMUM_CIT_VERSION    626             /* min required Citadel vers */
 #define DEFAULT_HOST           "localhost"     /* Default Citadel server */
 #define DEFAULT_PORT           "504"
 #define LB                     (1)             /* Internal escape chars */
@@ -331,7 +331,7 @@ void server_to_text(void);
 void save_edit(char *description, char *enter_cmd, int regoto);
 void display_edit(char *description, char *check_cmd,
                  char *read_cmd, char *save_cmd, int headers_type);
-void gotoroom(char *gname, int display_name);
+void gotoroom(char *gname);
 void confirm_delete_room(void);
 void delete_room(void);
 void validate(void);