mirror of
https://gitea.psi.ch/ELOG/elog.git
synced 2026-09-08 17:13:56 +00:00
Version 2.5.9-1
SVN revision: 1339
This commit is contained in:
parent
5541e9716c
commit
dcc7e7d22e
@ -1,3 +1,31 @@
|
|||||||
|
Version 2.5.9, released May 2nd, 2005
|
||||||
|
=====================================
|
||||||
|
|
||||||
|
- Added str_escape from Emiliano Gabrielli
|
||||||
|
- Implemented 'case sensitive search' flag
|
||||||
|
- Applied patch from Emiliano to fix possible buffer overflow
|
||||||
|
- Fixed crashes with very long (revisions) attributes
|
||||||
|
- Fixed missing icons in top groups
|
||||||
|
- Fixed wrong year under IE with datetime attibutes
|
||||||
|
- Added SMTP error reporting
|
||||||
|
- Added 'set current time/date' funcitonality
|
||||||
|
- Use base64 encoding for email subject
|
||||||
|
- Adde 'Raw' mode for export
|
||||||
|
- Fixed bug with conditions and '&'
|
||||||
|
- Fixed crash on 'm*' regex search
|
||||||
|
- Redirect to source logbook for copy/move
|
||||||
|
- Open attachments in separate browser window
|
||||||
|
- Implemented drop-down boxes for copy/move also on individual entry page
|
||||||
|
- Implemented 'Duplicate' command
|
||||||
|
- Implemented datetime format
|
||||||
|
- Subsittute ' ' in attachment file names by '_'
|
||||||
|
- Changed is_ascii() to accept umlaute
|
||||||
|
- Implemented 'expand selection', defaulting to one
|
||||||
|
- Applied patch from Recai to give precedence to directories from the command line
|
||||||
|
- Fixed problem with '&' in href links
|
||||||
|
- Fixed problem with 'protect selection page' and invalid authentication
|
||||||
|
- Fixed bug with crashing elog on 'protect selection page'
|
||||||
|
|
||||||
Version 2.5.8, released March 21st, 2005
|
Version 2.5.8, released March 21st, 2005
|
||||||
========================================
|
========================================
|
||||||
|
|
||||||
|
|||||||
@ -25,7 +25,7 @@
|
|||||||
[<a class="nav" href="#links">Links</a>] * </div>
|
[<a class="nav" href="#links">Links</a>] * </div>
|
||||||
<P class="Sub">Home of the <i>Electronic Logbook</i> package by <a href="mailto:Stefan.Ritt@psi.ch">
|
<P class="Sub">Home of the <i>Electronic Logbook</i> package by <a href="mailto:Stefan.Ritt@psi.ch">
|
||||||
Stefan Ritt</a></P>
|
Stefan Ritt</a></P>
|
||||||
<div class="version">Current version is : 2.5.8</div>
|
<div class="version">Current version is : 2.5.9</div>
|
||||||
<hr>
|
<hr>
|
||||||
<a name="whatis">
|
<a name="whatis">
|
||||||
<div class="section"> What is ELOG ? </div>
|
<div class="section"> What is ELOG ? </div>
|
||||||
|
|||||||
@ -353,3 +353,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -353,3 +353,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -353,3 +353,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -356,3 +356,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -349,3 +349,13 @@ Subscribe to logbooks = S'abonner aux registres
|
|||||||
enable automatic email notifications = activer les notifications par mél.
|
enable automatic email notifications = activer les notifications par mél.
|
||||||
Set all = Activer tout
|
Set all = Activer tout
|
||||||
Set none = Désactiver tout
|
Set none = Désactiver tout
|
||||||
|
|
||||||
|
#
|
||||||
|
#---- please translate following items and then remove this comment ----#
|
||||||
|
#
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -348,3 +348,10 @@ Subscribe to logbooks = Logb
|
|||||||
enable automatic email notifications = Automatische Email Benachrichtigung ermöglichen
|
enable automatic email notifications = Automatische Email Benachrichtigung ermöglichen
|
||||||
Set all = Alle ermöglichen
|
Set all = Alle ermöglichen
|
||||||
Set none = Keinen ermöglichen
|
Set none = Keinen ermöglichen
|
||||||
|
Set current time = Aktuelle Zeit setzen
|
||||||
|
Please enter hour for attribute '%s' = Bitte Stunde eingeben für Attribut '%s'
|
||||||
|
Please enter minute for attribute '%s' = Bitte Minute eingeben für Attribut '%s'
|
||||||
|
Please enter second for attribute '%s' = Bitte Sekunde eingeben für Attribut '%s'
|
||||||
|
No admin user has been defined in configuration file = In der Konfigurationsdatei ist kein Benutzer mit Administrationsrechten eingetragen
|
||||||
|
Duplicate = Duplizieren
|
||||||
|
|
||||||
|
|||||||
@ -352,3 +352,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -351,3 +351,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
@ -349,3 +349,9 @@ Subscribe to logbooks =
|
|||||||
enable automatic email notifications =
|
enable automatic email notifications =
|
||||||
Set all =
|
Set all =
|
||||||
Set none =
|
Set none =
|
||||||
|
Set current time =
|
||||||
|
Please enter hour for attribute '%s' =
|
||||||
|
Please enter minute for attribute '%s' =
|
||||||
|
Please enter second for attribute '%s' =
|
||||||
|
No admin user has been defined in configuration file =
|
||||||
|
Duplicate =
|
||||||
|
|||||||
35
src/elogd.c
35
src/elogd.c
@ -6,6 +6,9 @@
|
|||||||
Contents: Web server program for Electronic Logbook ELOG
|
Contents: Web server program for Electronic Logbook ELOG
|
||||||
|
|
||||||
$Log$
|
$Log$
|
||||||
|
Revision 1.641 2005/05/02 10:06:33 ritt
|
||||||
|
Version 2.5.9-1
|
||||||
|
|
||||||
Revision 1.640 2005/04/29 20:26:12 ritt
|
Revision 1.640 2005/04/29 20:26:12 ritt
|
||||||
Added str_escape from Emiliano Gabrielli
|
Added str_escape from Emiliano Gabrielli
|
||||||
|
|
||||||
@ -1035,7 +1038,7 @@
|
|||||||
\********************************************************************/
|
\********************************************************************/
|
||||||
|
|
||||||
/* Version of ELOG */
|
/* Version of ELOG */
|
||||||
#define VERSION "2.5.8-6"
|
#define VERSION "2.5.9-1"
|
||||||
char cvs_revision[] = "$Id$";
|
char cvs_revision[] = "$Id$";
|
||||||
|
|
||||||
/* ELOG identification */
|
/* ELOG identification */
|
||||||
@ -1910,7 +1913,7 @@ void strsubst(char *string, int size, char name[][NAME_LENGTH], char value[][NAM
|
|||||||
/* subsitute "$name" with value corresponding to name */
|
/* subsitute "$name" with value corresponding to name */
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
char tmp[2*NAME_LENGTH], str[2*NAME_LENGTH], uattr[2*NAME_LENGTH], *ps, *pt, *p;
|
char tmp[2 * NAME_LENGTH], str[2 * NAME_LENGTH], uattr[2 * NAME_LENGTH], *ps, *pt, *p;
|
||||||
|
|
||||||
pt = tmp;
|
pt = tmp;
|
||||||
ps = string;
|
ps = string;
|
||||||
@ -1940,7 +1943,7 @@ void strsubst(char *string, int size, char name[][NAME_LENGTH], char value[][NAM
|
|||||||
|
|
||||||
/* copy value */
|
/* copy value */
|
||||||
if (i < n) {
|
if (i < n) {
|
||||||
strlcpy(pt, value[i], sizeof(tmp)-((int)pt-(int)tmp));
|
strlcpy(pt, value[i], sizeof(tmp) - ((int) pt - (int) tmp));
|
||||||
pt += strlen(pt);
|
pt += strlen(pt);
|
||||||
ps = p + strlen(uattr);
|
ps = p + strlen(uattr);
|
||||||
} else {
|
} else {
|
||||||
@ -1950,7 +1953,7 @@ void strsubst(char *string, int size, char name[][NAME_LENGTH], char value[][NAM
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* copy remainder */
|
/* copy remainder */
|
||||||
strlcpy(pt, ps, sizeof(tmp)-((int)pt-(int)tmp));
|
strlcpy(pt, ps, sizeof(tmp) - ((int) pt - (int) tmp));
|
||||||
|
|
||||||
/* return result */
|
/* return result */
|
||||||
strlcpy(string, tmp, size);
|
strlcpy(string, tmp, size);
|
||||||
@ -8016,7 +8019,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
int i, j, n, index, aindex, size, width, height, fh, length, input_size, input_maxlen,
|
int i, j, n, index, aindex, size, width, height, fh, length, input_size, input_maxlen,
|
||||||
format_flags[MAX_N_ATTR], year, month, day, hour, min, sec, n_attr, n_disp_attr,
|
format_flags[MAX_N_ATTR], year, month, day, hour, min, sec, n_attr, n_disp_attr,
|
||||||
attr_index[MAX_N_ATTR];
|
attr_index[MAX_N_ATTR];
|
||||||
char str[2*NAME_LENGTH], preset[2*NAME_LENGTH], *p, *pend, star[80], comment[10000], reply_string[256],
|
char str[2 * NAME_LENGTH], preset[2 * NAME_LENGTH], *p, *pend, star[80], comment[10000], reply_string[256],
|
||||||
list[MAX_N_ATTR][NAME_LENGTH], file_name[256], *buffer, format[256], date[80],
|
list[MAX_N_ATTR][NAME_LENGTH], file_name[256], *buffer, format[256], date[80],
|
||||||
attrib[MAX_N_ATTR][NAME_LENGTH], *text, orig_tag[80], reply_tag[MAX_REPLY_TO * 10],
|
attrib[MAX_N_ATTR][NAME_LENGTH], *text, orig_tag[80], reply_tag[MAX_REPLY_TO * 10],
|
||||||
att[MAX_ATTACHMENTS][256], encoding[80], slist[MAX_N_ATTR + 10][NAME_LENGTH],
|
att[MAX_ATTACHMENTS][256], encoding[80], slist[MAX_N_ATTR + 10][NAME_LENGTH],
|
||||||
@ -8323,10 +8326,10 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
|
|
||||||
strsubst(preset, sizeof(preset), slist, svalue, i);
|
strsubst(preset, sizeof(preset), slist, svalue, i);
|
||||||
if (strlen(preset) > NAME_LENGTH - 100) {
|
if (strlen(preset) > NAME_LENGTH - 100) {
|
||||||
if (strstr(preset+100, "<br>")) {
|
if (strstr(preset + 100, "<br>")) {
|
||||||
strlcpy(str, strstr(preset+100, "<br>"), sizeof(str));
|
strlcpy(str, strstr(preset + 100, "<br>"), sizeof(str));
|
||||||
} else
|
} else
|
||||||
strlcpy(str, preset+100, sizeof(str));
|
strlcpy(str, preset + 100, sizeof(str));
|
||||||
|
|
||||||
strcpy(preset, "...");
|
strcpy(preset, "...");
|
||||||
strlcat(preset, str, sizeof(str));
|
strlcat(preset, str, sizeof(str));
|
||||||
@ -9642,7 +9645,7 @@ void show_find_form(LOGBOOK * lbs)
|
|||||||
rsprintf("<tr><td><td class=\"attribvalue\">\n");
|
rsprintf("<tr><td><td class=\"attribvalue\">\n");
|
||||||
rsprintf("<input type=checkbox id=\"sall\" name=\"sall\" value=1>\n");
|
rsprintf("<input type=checkbox id=\"sall\" name=\"sall\" value=1>\n");
|
||||||
rsprintf("<label for=\"sall\">%s</label>\n", loc("Search text also in attributes"));
|
rsprintf("<label for=\"sall\">%s</label>\n", loc("Search text also in attributes"));
|
||||||
|
|
||||||
if (getcfg(lbs->name, "Case sensitive search", str, sizeof(str)) && atoi(str))
|
if (getcfg(lbs->name, "Case sensitive search", str, sizeof(str)) && atoi(str))
|
||||||
rsprintf("<input type=checkbox id=\"sall\" name=\"casesensitive\" value=1 checked>\n");
|
rsprintf("<input type=checkbox id=\"sall\" name=\"casesensitive\" value=1 checked>\n");
|
||||||
else
|
else
|
||||||
@ -14022,7 +14025,8 @@ void display_line(LOGBOOK * lbs, int message_id, int number, char *mode,
|
|||||||
add_subst_time(lbs, (char (*)[NAME_LENGTH]) slist,
|
add_subst_time(lbs, (char (*)[NAME_LENGTH]) slist,
|
||||||
(char (*)[NAME_LENGTH]) svalue, "entry time", date, &j);
|
(char (*)[NAME_LENGTH]) svalue, "entry time", date, &j);
|
||||||
|
|
||||||
strsubst(display, sizeof(display), (char (*)[NAME_LENGTH]) slist, (char (*)[NAME_LENGTH]) svalue, j);
|
strsubst(display, sizeof(display), (char (*)[NAME_LENGTH]) slist,
|
||||||
|
(char (*)[NAME_LENGTH]) svalue, j);
|
||||||
|
|
||||||
} else
|
} else
|
||||||
sprintf(display, "%d", message_id);
|
sprintf(display, "%d", message_id);
|
||||||
@ -16000,7 +16004,8 @@ void show_elog_list(LOGBOOK * lbs, INT past_n, INT last_n, INT page_n, char *inf
|
|||||||
add_subst_time(lbs, (char (*)[NAME_LENGTH]) slist,
|
add_subst_time(lbs, (char (*)[NAME_LENGTH]) slist,
|
||||||
(char (*)[NAME_LENGTH]) svalue, "entry time", date, &j);
|
(char (*)[NAME_LENGTH]) svalue, "entry time", date, &j);
|
||||||
|
|
||||||
strsubst(str, sizeof(str), (char (*)[NAME_LENGTH]) slist, (char (*)[NAME_LENGTH]) svalue, j);
|
strsubst(str, sizeof(str), (char (*)[NAME_LENGTH]) slist, (char (*)[NAME_LENGTH]) svalue,
|
||||||
|
j);
|
||||||
setparam(attr_list[i], str);
|
setparam(attr_list[i], str);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -18237,7 +18242,7 @@ void show_elog_entry(LOGBOOK * lbs, char *dec_path, char *command)
|
|||||||
int size, i, j, n, n_log, status, fh, length, message_error, index, n_hidden,
|
int size, i, j, n, n_log, status, fh, length, message_error, index, n_hidden,
|
||||||
message_id, orig_message_id, format_flags[MAX_N_ATTR], att_hide[MAX_ATTACHMENTS],
|
message_id, orig_message_id, format_flags[MAX_N_ATTR], att_hide[MAX_ATTACHMENTS],
|
||||||
n_attachments, n_lines;
|
n_attachments, n_lines;
|
||||||
char str[2*NAME_LENGTH], ref[256], file_enc[256], thumb_name[256], attrib[MAX_N_ATTR][NAME_LENGTH];
|
char str[2 * NAME_LENGTH], ref[256], file_enc[256], thumb_name[256], attrib[MAX_N_ATTR][NAME_LENGTH];
|
||||||
char date[80], text[TEXT_SIZE], menu_str[1000], cmd[256], cmd_enc[256],
|
char date[80], text[TEXT_SIZE], menu_str[1000], cmd[256], cmd_enc[256],
|
||||||
orig_tag[80], reply_tag[MAX_REPLY_TO * 10], display[NAME_LENGTH],
|
orig_tag[80], reply_tag[MAX_REPLY_TO * 10], display[NAME_LENGTH],
|
||||||
attachment[MAX_ATTACHMENTS][MAX_PATH_LENGTH], encoding[80], locked_by[256],
|
attachment[MAX_ATTACHMENTS][MAX_PATH_LENGTH], encoding[80], locked_by[256],
|
||||||
@ -18853,7 +18858,8 @@ void show_elog_entry(LOGBOOK * lbs, char *dec_path, char *command)
|
|||||||
add_subst_time(lbs, (char (*)[NAME_LENGTH]) slist,
|
add_subst_time(lbs, (char (*)[NAME_LENGTH]) slist,
|
||||||
(char (*)[NAME_LENGTH]) svalue, "entry time", date, &j);
|
(char (*)[NAME_LENGTH]) svalue, "entry time", date, &j);
|
||||||
|
|
||||||
strsubst(display, sizeof(display), (char (*)[NAME_LENGTH]) slist, (char (*)[NAME_LENGTH]) svalue, j);
|
strsubst(display, sizeof(display), (char (*)[NAME_LENGTH]) slist,
|
||||||
|
(char (*)[NAME_LENGTH]) svalue, j);
|
||||||
|
|
||||||
} else
|
} else
|
||||||
strcpy(display, attrib[i]);
|
strcpy(display, attrib[i]);
|
||||||
@ -20505,8 +20511,7 @@ void interprete(char *lbook, char *path)
|
|||||||
|
|
||||||
/* deliver icons without password */
|
/* deliver icons without password */
|
||||||
if (chkext(path, ".gif") || chkext(path, ".jpg") ||
|
if (chkext(path, ".gif") || chkext(path, ".jpg") ||
|
||||||
chkext(path, ".png") || chkext(path, ".ico") ||
|
chkext(path, ".png") || chkext(path, ".ico") || chkext(path, ".htm") || chkext(path, ".css")) {
|
||||||
chkext(path, ".htm") || chkext(path, ".css")) {
|
|
||||||
/* check if file in resource directory */
|
/* check if file in resource directory */
|
||||||
strlcpy(str, resource_dir, sizeof(str));
|
strlcpy(str, resource_dir, sizeof(str));
|
||||||
strlcat(str, path, sizeof(str));
|
strlcat(str, path, sizeof(str));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user