4 * Administrative screens for floor maintenance
10 #include "webserver.h"
16 * Display floor configuration. If prepend_html is not NULL, its contents
17 * will be displayed at the top of the screen.
19 void display_floorconfig(char *prepend_html)
27 output_headers(1, 1, 2, 0, 0, 0, 0);
28 wprintf("<div id=\"banner\">\n"
29 "<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#444455\"><TR><TD>"
30 "<SPAN CLASS=\"titlebar\">Add/change/delete floors</SPAN>"
31 "</TD></TR></TABLE>\n"
32 "</div>\n<div id=\"content\">\n"
35 if (prepend_html != NULL) {
36 wprintf("<br /><b><i>");
37 client_write(prepend_html, strlen(prepend_html));
38 wprintf("</i></b><br /><br />\n");
42 serv_getln(buf, sizeof buf);
44 wprintf("<TABLE WIDTH=100%% BORDER=0 BGCOLOR=\"#770000\"><TR><TD>");
45 wprintf("<SPAN CLASS=\"titlebar\">Error</SPAN>\n");
46 wprintf("</TD></TR></TABLE>\n");
47 wprintf("%s<br />\n", &buf[4]);
52 wprintf("<div id=\"fix_scrollbar_bug\">"
53 "<TABLE BORDER=1 WIDTH=100%% bgcolor=\"#ffffff\">\n"
54 "<TR><TH>Floor number</TH>"
56 "<TH>Number of rooms</TH></TR>\n"
59 while (serv_getln(buf, sizeof buf), strcmp(buf, "000")) {
60 floornum = extract_int(buf, 0);
61 extract_token(floorname, buf, 1, '|', sizeof floorname);
62 refcount = extract_int(buf, 2);
64 wprintf("<TR><TD><TABLE border=0><TR><TD>%d", floornum);
67 "<A HREF=\"/delete_floor?floornum=%d\">"
68 "<FONT SIZE=-1>(delete floor)</A>"
69 "</FONT><br />", floornum
72 wprintf("<FONT SIZE=-1>"
73 "<A HREF=\"/display_editfloorpic&"
74 "which_floor=%d\">(edit graphic)</A>",
76 wprintf("</TD></TR></TABLE>");
80 "<FORM METHOD=\"POST\" ACTION=\"/rename_floor\">"
81 "<INPUT TYPE=\"hidden\" NAME=\"floornum\" "
83 "<INPUT TYPE=\"text\" NAME=\"floorname\" "
84 "VALUE=\"%s\" MAXLENGTH=\"250\">\n",
86 wprintf("<INPUT TYPE=\"SUBMIT\" NAME=\"sc\" "
87 "VALUE=\"Change name\">"
90 wprintf("<TD>%d</TD></TR>\n", refcount);
93 wprintf("<TR><TD> </TD>"
94 "<TD><FORM METHOD=\"POST\" ACTION=\"/create_floor\">"
95 "<INPUT TYPE=\"text\" NAME=\"floorname\" "
96 "MAXLENGTH=\"250\">\n"
97 "<INPUT TYPE=\"SUBMIT\" NAME=\"sc\" "
98 "VALUE=\"Create new floor\">"
100 "<TD> </TD></TR>\n");
102 wprintf("</table></div>\n");
108 void delete_floor(void) {
113 floornum = atoi(bstr("floornum"));
115 serv_printf("KFLR %d|1", floornum);
116 serv_getln(buf, sizeof buf);
119 sprintf(message, "Floor has been deleted.");
122 sprintf(message, "%s", &buf[4]);
125 display_floorconfig(message);
129 void create_floor(void) {
134 strcpy(floorname, bstr("floorname"));
136 serv_printf("CFLR %s|1", floorname);
137 serv_getln(buf, sizeof buf);
140 sprintf(message, "New floor has been created.");
142 sprintf(message, "%s", &buf[4]);
145 display_floorconfig(message);
149 void rename_floor(void) {
155 floornum = atoi(bstr("floornum"));
156 strcpy(floorname, bstr("floorname"));
158 serv_printf("EFLR %d|%s", floornum, floorname);
159 serv_getln(buf, sizeof buf);
161 sprintf(message, "%s", &buf[4]);
163 display_floorconfig(message);