diff --git a/NT/elogd.sln b/NT/elogd.sln
index bbfa1d4a..e7cd5574 100755
--- a/NT/elogd.sln
+++ b/NT/elogd.sln
@@ -21,9 +21,9 @@ Global
{8D6EBED8-48F3-4719-907E-7BE46A3C0FA4}.Debug|Win32.ActiveCfg = Debug|Win32
{8D6EBED8-48F3-4719-907E-7BE46A3C0FA4}.Release|Win32.ActiveCfg = Release|Win32
{FD6FCAF3-A94B-40FA-AE52-07705DE2E519}.Debug|Win32.ActiveCfg = Debug|Win32
- {FD6FCAF3-A94B-40FA-AE52-07705DE2E519}.Debug|Win32.Build.0 = Debug|Win32
{FD6FCAF3-A94B-40FA-AE52-07705DE2E519}.Release|Win32.ActiveCfg = Release|Win32
{CB6EB7FE-CC3D-4548-B8B8-8DDA05916759}.Debug|Win32.ActiveCfg = Debug|Win32
+ {CB6EB7FE-CC3D-4548-B8B8-8DDA05916759}.Debug|Win32.Build.0 = Debug|Win32
{CB6EB7FE-CC3D-4548-B8B8-8DDA05916759}.Release|Win32.ActiveCfg = Release|Win32
{CB6EB7FE-CC3D-4548-B8B8-8DDA05916759}.Release|Win32.Build.0 = Release|Win32
{77ED3530-9382-4830-8513-9729C051A93E}.Debug|Win32.ActiveCfg = Debug|Win32
diff --git a/doc/config.html b/doc/config.html
index 1b701772..6030e94e 100755
--- a/doc/config.html
+++ b/doc/config.html
@@ -2473,6 +2473,12 @@ Options Location = Main Building{a}, New Building{b}, Old Building{c}
to the logbook selection page instead to the login page. The default is
0.
+
+ List after submit = 0|1
+ If this flag is 1, the list page is shown after the
+ submission of a new entry. If this flag is 0, the entry just
+ submitted is shown. The default is 0.
+
Restrict edit = 0|1
If this flag is 1, users can only edit their own messages. The
diff --git a/src/elogd.c b/src/elogd.c
index 13ea859d..f6f8f74c 100755
--- a/src/elogd.c
+++ b/src/elogd.c
@@ -22666,7 +22666,10 @@ void submit_elog(LOGBOOK * lbs)
return;
}
- sprintf(str, "%d%s", message_id, mail_param);
+ if (getcfg(lbs->name, "List after submit", str, sizeof(str)) && atoi(str) == 1)
+ sprintf(str, "");
+ else
+ sprintf(str, "%d%s", message_id, mail_param);
redirect(lbs, str);
}
@@ -23568,9 +23571,12 @@ void show_elog_entry(LOGBOOK * lbs, char *dec_path, char *command)
strlcpy(str, loc(menu_item[i]), sizeof(str));
url_encode(str, sizeof(str));
- if (strieq(menu_item[i], "list"))
- rsprintf(" %s \n", message_id, loc(menu_item[i]));
- else
+ if (strieq(menu_item[i], "list")) {
+ if (getcfg(lbs->name, "Back to main", str, sizeof(str)) && atoi(str) == 1)
+ rsprintf(" %s \n", loc(menu_item[i]));
+ else
+ rsprintf(" %s \n", message_id, loc(menu_item[i]));
+ } else
rsprintf(" %s \n", message_id, str, loc(menu_item[i]));
if (i < n - 1)
@@ -26216,6 +26222,12 @@ void interprete(char *lbook, char *path)
/* check for "List" button */
if (strieq(command, loc("List"))) {
+
+ if (getcfg(lbs->name, "Back to main", str, sizeof(str)) && atoi(str) == 1) {
+ redirect(lbs, "../");
+ return;
+ }
+
show_elog_list(lbs, 0, 0, 0, TRUE, NULL);
return;
}