diff --git a/src/elogd.c b/src/elogd.c
index 4f0e5bf8..0f07fc59 100755
--- a/src/elogd.c
+++ b/src/elogd.c
@@ -6,6 +6,9 @@
Contents: Web server program for Electronic Logbook ELOG
$Log$
+ Revision 1.243 2004/02/13 20:45:09 midas
+ Fixed another problem with quotation marks
+
Revision 1.242 2004/02/13 20:32:34 midas
Attributes can now contain quotation marks
@@ -6383,82 +6386,85 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
rsprintf(" \n", str,
attr_options[index][i]);
}
- } else
+ } else {
+ strencode2(str, attrib[index]);
rsprintf(" \n",
- ua, attrib[index]);
+ ua, str);
+ }
} else {
if (attr_options[index][0][0] == 0) {
- if (attr_flags[index] & AF_DATE) {
+ if (attr_flags[index] & AF_DATE) {
- year = month = day = 0;
- if (attrib[index][0]) {
- ltime = atoi(attrib[index]);
- pts = localtime(<ime);
- year = pts->tm_year+1900;
- month = pts->tm_mon+1;
- day = pts->tm_mday;
+ year = month = day = 0;
+ if (attrib[index][0]) {
+ ltime = atoi(attrib[index]);
+ pts = localtime(<ime);
+ year = pts->tm_year+1900;
+ month = pts->tm_mon+1;
+ day = pts->tm_mday;
+ }
+
+ /* display date selector */
+ rsprintf("
\n", index);
+
+ rsprintf("\n");
+ for (i = 0; i < 12; i++)
+ if (i+1 == month)
+ rsprintf(" %s\n", i + 1, month_name(i));
+ else
+ rsprintf(" %s\n", i + 1, month_name(i));
+ rsprintf(" \n");
+
+ rsprintf("", index);
+ rsprintf("\n");
+ for (i = 0; i < 31; i++)
+ if (i+1 == day)
+ rsprintf(" %d\n", i + 1, i + 1);
+ else
+ rsprintf(" %d\n", i + 1, i + 1);
+ rsprintf(" \n");
+
+ if (year)
+ rsprintf(" %s: ",
+ loc("Year"), index, year);
+ else
+ rsprintf(" %s: ",
+ loc("Year"), index);
+
+ rsprintf("\n\n");
+
+ rsprintf(" \n");
+
+ } else {
+
+ /* show normal edit field */
+ rsprintf("");
+
+ strencode2(str, attrib[index]);
+ rsprintf(" \n",
+ input_size, input_maxlen, ua, str);
+
+ rsprintf(" \n");
}
- /* display date selector */
- rsprintf("\n", index);
-
- rsprintf("\n");
- for (i = 0; i < 12; i++)
- if (i+1 == month)
- rsprintf(" %s\n", i + 1, month_name(i));
- else
- rsprintf(" %s\n", i + 1, month_name(i));
- rsprintf(" \n");
-
- rsprintf("", index);
- rsprintf("\n");
- for (i = 0; i < 31; i++)
- if (i+1 == day)
- rsprintf(" %d\n", i + 1, i + 1);
- else
- rsprintf(" %d\n", i + 1, i + 1);
- rsprintf(" \n");
-
- if (year)
- rsprintf(" %s: ",
- loc("Year"), index, year);
- else
- rsprintf(" %s: ",
- loc("Year"), index);
-
- rsprintf("\n\n");
-
- rsprintf(" \n");
- } else {
-
- /* show normal edit field */
- rsprintf("");
-
- strencode2(str, attrib[index]);
- rsprintf(" \n",
- input_size, input_maxlen, ua, str);
-
- rsprintf(" \n");
- }
-
} else {
if (strieq(attr_options[index][0], "boolean")) {
/* display checkbox */
@@ -13522,9 +13528,10 @@ void show_elog_message(LOGBOOK * lbs, char *dec_path, char *command)
rsprintf("\n");
- for (i = 0; i < lbs->n_attr; i++)
- rsprintf(" \n", attr_list[i],
- attrib[i]);
+ for (i = 0; i < lbs->n_attr; i++) {
+ strencode2(str, attrib[i]);
+ rsprintf(" \n", attr_list[i], str);
+ }
/* browsing flag to distinguish "/../=" from browsing */
rsprintf(" \n");