* Added "add/edit room graphic" screens.
authorArt Cancro <ajc@citadel.org>
Fri, 1 Jan 1999 07:01:48 +0000 (07:01 +0000)
committerArt Cancro <ajc@citadel.org>
Fri, 1 Jan 1999 07:01:48 +0000 (07:01 +0000)
        * Added "add/edit floor graphic" screens.
        * Fixed display of floor graphic in known rooms list.

webcit/ChangeLog
webcit/child.h
webcit/graphics.c
webcit/mainmenu.c
webcit/roomops.c
webcit/webcit.c
webcit/webcit.h

index cd1e633035e07f43fd773839fc92af8f8a45fd5b..a37ff76495ebf7bef7b257767a2655dbb16172f2 100644 (file)
@@ -3,6 +3,9 @@ Thu Dec 31 21:53:20 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
        * "Finished" the MIME parser.
        * Got image uploads working.
        * Added "add/edit user photo" screens.
+       * Added "add/edit room graphic" screens.
+       * Added "add/edit floor graphic" screens.
+       * Fixed display of floor graphic in known rooms list.
 
 Wed Dec 30 20:36:13 EST 1998 Art Cancro <ajc@uncnsrd.mt-kisco.ny.us>
        * Wrote mime_parser.c for handling of image uploads.  This will also
index 90753141c34712bdc505f3ba66ec6368ca1af5a3..ac063593fe48c261720bc6971f85b835f85b23cb 100644 (file)
@@ -72,15 +72,12 @@ void delete_room(void);
 void validate(void);
 void mime_parser(char *, int, char *);
 void handle_multipart(char *, int, char *);
-void display_graphics_upload(char *description, char *check_cmd, char *uplurl);
+void display_graphics_upload(char *, char *, char *);
 void do_graphics_upload(char *upl_cmd);
 void serv_read(char *buf, int bytes);
 void serv_gets(char *strbuf);
 void serv_write(char *buf, int nbytes);
 void serv_puts(char *string);
 void serv_printf(const char *format, ...);
-
-
-
-
-
+void load_floorlist(void);
+void select_floor_to_edit_pic(void);
index 1844c0581ff7c8b4c9cda50412c4e183043d6104..e08d7150f600d007e487ddf3ac8963a05dd1eaaa 100644 (file)
@@ -27,8 +27,9 @@ void display_graphics_upload(char *description, char *check_cmd, char *uplurl) {
         wprintf("</FONT></TD></TR></TABLE>\n");
 
        wprintf("<CENTER>\n");
+
+       wprintf("<FORM ENCTYPE=\"multipart/form-data\" ACTION=\"%s&which_room=%s\" METHOD=\"POST\">\n", uplurl, bstr("which_room"));
        wprintf("Please select a file to upload:<BR>\n");
-       wprintf("<FORM ENCTYPE=\"multipart/form-data\" ACTION=\"%s\" METHOD=\"POST\">\n", uplurl);
         wprintf("<INPUT TYPE=\"FILE\" NAME=\"filename\" SIZE=\"35\">\n");
        wprintf("<BR>");
         wprintf("<INPUT TYPE=\"SUBMIT\" VALUE=\"Upload\">\n");
@@ -82,3 +83,27 @@ void do_graphics_upload(char *upl_cmd) {
                return;
                }
        }
+
+
+
+void select_floor_to_edit_pic(void) {
+       int a;
+
+       printf("HTTP/1.0 200 OK\n");
+       output_headers(1);
+
+        wprintf("<TABLE WIDTH=100% BORDER=0 BGCOLOR=770000><TR><TD>");
+        wprintf("<FONT SIZE=+1 COLOR=\"FFFFFF\"");
+        wprintf("<B>Select floor to edit label graphic</B>\n");
+        wprintf("</FONT></TD></TR></TABLE>\n");
+
+       load_floorlist();
+       for (a=0; a<128; ++a) if (strlen(floorlist[a])>0) {
+               wprintf("<A HREF=\"/display_editfloorpic&which_floor=%d\">", a);
+               escputs(floorlist[a]);
+               wprintf("</A>\n");
+               }
+       
+       wprintf("</BODY></HTML>\n");
+       wDumpContent();
+       }
index 44ae0cb8fec9c74207975f0d056cdf64f3ba882d..d9d9d44b27035b8781b925927f224fcea9960bfc 100644 (file)
@@ -168,7 +168,7 @@ if ((axlevel>=6) || (is_room_aide)) {
                wprintf("<LI><A HREF=\"/validate\">\n");
                wprintf("Validate new users</A>\n");
 
-               wprintf("<LI><A HREF=\"/display_editfloorpic\">\n");
+               wprintf("<LI><A HREF=\"/select_floor_to_edit_pic\">\n");
                wprintf("Set or change a floor label graphic</A>\n");
 
                wprintf("<LI><A HREF=\"/display_netconf\">\n");
index ab5aa3c9d95d5ed9d4562e57497be23231a7c867..5e61dbae694f9f13741885aac48c02c0170029c2 100644 (file)
@@ -46,7 +46,6 @@ void load_floorlist(void) {
        }
 
 
-
 /*
  * remove a room from the march list
  */
@@ -127,11 +126,17 @@ void list_all_rooms_by_floor(void) {
                /* Floor name column */
                wprintf("<TR><TD>");
        
-/* FIX ... don't link to a floor pic that doesn't exist
-               wprintf("<IMG SRC=\"/dynamic/_floorpic_/%d\" ALT=\"%s\">",
-                       &floorlist[a][0]);
- */
-               escputs(&floorlist[a][0]);
+               serv_printf("OIMG _floorpic_|%d", a);
+               serv_gets(buf);
+               if (buf[0] == '2') {
+                       serv_puts("CLOS");
+                       serv_gets(buf);
+                       wprintf("<IMG SRC=\"/image&name=_floorpic_&parm=%d\" ALT=\"%s\">",
+                               a, &floorlist[a][0]);
+                       }
+               else {
+                       escputs(&floorlist[a][0]);
+                       }
 
                wprintf("</TD>");
 
index 5f6703083ad67a2f6c905aa142c94d6fed024b3d..34e97a88a6f2a6f39a031e7f57012059e513413c 100644 (file)
@@ -775,6 +775,34 @@ void session_loop(void) {
                do_graphics_upload("UIMG 1|_userpic_");
                }
 
+       else if (!strcasecmp(action, "display_editroompic")) {
+               display_graphics_upload("the graphic for this room",
+                                       "UIMG 0|_roompic_",
+                                       "/editroompic");
+               }
+
+       else if (!strcasecmp(action, "editroompic")) {
+               do_graphics_upload("UIMG 1|_roompic_");
+               }
+
+       else if (!strcasecmp(action, "select_floor_to_edit_pic")) {
+               select_floor_to_edit_pic();
+               }
+
+       else if (!strcasecmp(action, "display_editfloorpic")) {
+               sprintf(buf, "UIMG 0|_floorpic_|%s",
+                       bstr("which_floor"));
+               display_graphics_upload("the graphic for this floor",
+                                       buf,
+                                       "/editfloorpic");
+               }
+
+       else if (!strcasecmp(action, "editfloorpic")) {
+               sprintf(buf, "UIMG 1|_floorpic_|%s",
+                       bstr("which_floor"));
+               do_graphics_upload(buf);
+               }
+
        /* When all else fails... */
        else {
                printf("HTTP/1.0 200 OK\n");
index 06f18a571d7826d8b1e93eb125bc92f0eeec53b1..94693ab0e84422cb003c943d1828b15a5afd7623 100644 (file)
@@ -76,3 +76,4 @@ extern long uglsn;
 extern char *axdefs[];
 extern int upload_length;
 extern char *upload;
+extern char floorlist[128][256];