mirror of
https://gitea.psi.ch/ELOG/elog.git
synced 2026-09-12 19:33:03 +00:00
Made preset $date for date attributes working
SVN revision: 813
This commit is contained in:
parent
70d01d43a0
commit
d670797ea4
56
src/elogd.c
56
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.280 2004/03/06 11:41:58 midas
|
||||||
|
Made preset $date for date attributes working
|
||||||
|
|
||||||
Revision 1.279 2004/03/05 22:35:15 midas
|
Revision 1.279 2004/03/05 22:35:15 midas
|
||||||
Added Prepend/Append on Edit/Reply
|
Added Prepend/Append on Edit/Reply
|
||||||
|
|
||||||
@ -5759,7 +5762,7 @@ void strencode2(char *b, char *text)
|
|||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
|
|
||||||
int build_subst_list(LOGBOOK * lbs, char list[][NAME_LENGTH], char value[][NAME_LENGTH],
|
int build_subst_list(LOGBOOK * lbs, char list[][NAME_LENGTH], char value[][NAME_LENGTH],
|
||||||
char attrib[][NAME_LENGTH])
|
char attrib[][NAME_LENGTH], BOOL format_date)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char str[NAME_LENGTH], format[256];
|
char str[NAME_LENGTH], format[256];
|
||||||
@ -5803,11 +5806,14 @@ int build_subst_list(LOGBOOK * lbs, char list[][NAME_LENGTH], char value[][NAME_
|
|||||||
/* add date */
|
/* add date */
|
||||||
strcpy(list[i], "date");
|
strcpy(list[i], "date");
|
||||||
time(&now);
|
time(&now);
|
||||||
ts = localtime(&now);
|
if (format_date) {
|
||||||
if (!getcfg(lbs->name, "Time format", format))
|
ts = localtime(&now);
|
||||||
strcpy(format, DEFAULT_TIME_FORMAT);
|
if (!getcfg(lbs->name, "Time format", format))
|
||||||
|
strcpy(format, DEFAULT_TIME_FORMAT);
|
||||||
|
|
||||||
strftime(str, sizeof(str), format, ts);
|
strftime(str, sizeof(str), format, ts);
|
||||||
|
} else
|
||||||
|
sprintf(str, "%d", now);
|
||||||
|
|
||||||
strcpy(value[i++], str);
|
strcpy(value[i++], str);
|
||||||
|
|
||||||
@ -6277,12 +6283,6 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
el_lock_message(lbs, message_id, str);
|
el_lock_message(lbs, message_id, str);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
/* get preset attributes */
|
|
||||||
for (i = 0; i < lbs->n_attr; i++) {
|
|
||||||
sprintf(str, "p%s", attr_list[i]);
|
|
||||||
strcpy(attrib[i], getparam(str));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -6362,7 +6362,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
if (getcfg_cond(lbs->name, condition, str, preset)) {
|
if (getcfg_cond(lbs->name, condition, str, preset)) {
|
||||||
/* check if already second reply */
|
/* check if already second reply */
|
||||||
if (orig_tag[0] == 0) {
|
if (orig_tag[0] == 0) {
|
||||||
i = build_subst_list(lbs, slist, svalue, attrib);
|
i = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", str, &i);
|
add_subst_list(slist, svalue, "message id", str, &i);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &i);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &i);
|
||||||
@ -6378,7 +6378,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
for (index = 0; index < lbs->n_attr; index++) {
|
for (index = 0; index < lbs->n_attr; index++) {
|
||||||
sprintf(str, "Subst on edit %s", attr_list[index]);
|
sprintf(str, "Subst on edit %s", attr_list[index]);
|
||||||
if (getcfg_cond(lbs->name, condition, str, preset)) {
|
if (getcfg_cond(lbs->name, condition, str, preset)) {
|
||||||
i = build_subst_list(lbs, slist, svalue, attrib);
|
i = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", str, &i);
|
add_subst_list(slist, svalue, "message id", str, &i);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &i);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &i);
|
||||||
@ -6598,7 +6598,9 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
|
|
||||||
if (!bedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */
|
if (!bedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */
|
||||||
|
|
||||||
i = build_subst_list(lbs, slist, svalue, attrib);
|
/* do not format date for date attributes */
|
||||||
|
i = build_subst_list(lbs, slist, svalue, attrib,
|
||||||
|
(attr_flags[index] & AF_DATE) == 0);
|
||||||
strsubst(preset, slist, svalue, i);
|
strsubst(preset, slist, svalue, i);
|
||||||
|
|
||||||
/* check for index substitution */
|
/* check for index substitution */
|
||||||
@ -6907,7 +6909,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
if (bupload || (!bupload && !breedit)
|
if (bupload || (!bupload && !breedit)
|
||||||
|| (breedit && !getcfg_cond(lbs->name, condition, "Preset text", str))) {
|
|| (breedit && !getcfg_cond(lbs->name, condition, "Preset text", str))) {
|
||||||
|
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(mid, "%d", message_id);
|
sprintf(mid, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", mid, &j);
|
add_subst_list(slist, svalue, "message id", mid, &j);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
||||||
@ -6932,7 +6934,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
if (!getcfg_cond(lbs->name, condition, "Quote on reply", str)
|
if (!getcfg_cond(lbs->name, condition, "Quote on reply", str)
|
||||||
|| atoi(str) > 0) {
|
|| atoi(str) > 0) {
|
||||||
if (getcfg_cond(lbs->name, condition, "Prepend on reply", str)) {
|
if (getcfg_cond(lbs->name, condition, "Prepend on reply", str)) {
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(mid, "%d", message_id);
|
sprintf(mid, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", mid, &j);
|
add_subst_list(slist, svalue, "message id", mid, &j);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
||||||
@ -6979,7 +6981,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
|
|
||||||
if (getcfg_cond(lbs->name, condition, "Append on reply", str)) {
|
if (getcfg_cond(lbs->name, condition, "Append on reply", str)) {
|
||||||
|
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(mid, "%d", message_id);
|
sprintf(mid, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", mid, &j);
|
add_subst_list(slist, svalue, "message id", mid, &j);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
||||||
@ -10338,7 +10340,7 @@ void display_line(LOGBOOK * lbs, int message_id, int number, char *mode,
|
|||||||
}
|
}
|
||||||
|
|
||||||
j = build_subst_list(lbs, (char (*)[NAME_LENGTH])slist,
|
j = build_subst_list(lbs, (char (*)[NAME_LENGTH])slist,
|
||||||
(char (*)[NAME_LENGTH])svalue, attrib);
|
(char (*)[NAME_LENGTH])svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list((char (*)[NAME_LENGTH])slist, (char (*)[NAME_LENGTH])svalue,
|
add_subst_list((char (*)[NAME_LENGTH])slist, (char (*)[NAME_LENGTH])svalue,
|
||||||
"message id", str, &j);
|
"message id", str, &j);
|
||||||
@ -11880,7 +11882,7 @@ void show_elog_list(LOGBOOK * lbs, INT past_n, INT last_n, INT page_n)
|
|||||||
|
|
||||||
/* if value starts with '$', substitute it */
|
/* if value starts with '$', substitute it */
|
||||||
if (str[0] == '$') {
|
if (str[0] == '$') {
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(mid, "%d", message_id);
|
sprintf(mid, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", mid, &j);
|
add_subst_list(slist, svalue, "message id", mid, &j);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
||||||
@ -12075,7 +12077,7 @@ void show_elog_list(LOGBOOK * lbs, INT past_n, INT last_n, INT page_n)
|
|||||||
/*---- header ----*/
|
/*---- header ----*/
|
||||||
|
|
||||||
if (getcfg(lbs->name, "Summary Page Title", str)) {
|
if (getcfg(lbs->name, "Summary Page Title", str)) {
|
||||||
i = build_subst_list(lbs, slist, svalue, NULL);
|
i = build_subst_list(lbs, slist, svalue, NULL, TRUE);
|
||||||
strsubst(str, slist, svalue, i);
|
strsubst(str, slist, svalue, i);
|
||||||
} else
|
} else
|
||||||
sprintf(str, "ELOG %s", lbs->name);
|
sprintf(str, "ELOG %s", lbs->name);
|
||||||
@ -12665,7 +12667,7 @@ int compose_email(LOGBOOK * lbs, char *mail_to, int message_id,
|
|||||||
flags = atoi(str);
|
flags = atoi(str);
|
||||||
|
|
||||||
if (getcfg(lbs->name, "Use Email from", mail_from)) {
|
if (getcfg(lbs->name, "Use Email from", mail_from)) {
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", str, &j);
|
add_subst_list(slist, svalue, "message id", str, &j);
|
||||||
strsubst(mail_from, slist, svalue, j);
|
strsubst(mail_from, slist, svalue, j);
|
||||||
@ -12748,7 +12750,7 @@ int compose_email(LOGBOOK * lbs, char *mail_to, int message_id,
|
|||||||
|
|
||||||
/* compose subject from attributes */
|
/* compose subject from attributes */
|
||||||
if (getcfg(lbs->name, "Use Email Subject", subject)) {
|
if (getcfg(lbs->name, "Use Email Subject", subject)) {
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", str, &j);
|
add_subst_list(slist, svalue, "message id", str, &j);
|
||||||
strsubst(subject, slist, svalue, j);
|
strsubst(subject, slist, svalue, j);
|
||||||
@ -12858,7 +12860,7 @@ int execute_shell(LOGBOOK * lbs, int message_id, char attrib[MAX_N_ATTR][NAME_LE
|
|||||||
|
|
||||||
strlcpy(shell_cmd, sh_cmd, sizeof(shell_cmd));
|
strlcpy(shell_cmd, sh_cmd, sizeof(shell_cmd));
|
||||||
|
|
||||||
i = build_subst_list(lbs, slist, svalue, attrib);
|
i = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", str, &i);
|
add_subst_list(slist, svalue, "message id", str, &i);
|
||||||
strsubst(shell_cmd, slist, svalue, i);
|
strsubst(shell_cmd, slist, svalue, i);
|
||||||
@ -13149,7 +13151,7 @@ void submit_elog(LOGBOOK * lbs)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* compile substitution list */
|
/* compile substitution list */
|
||||||
n = build_subst_list(lbs, slist, svalue, attrib);
|
n = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
if (atoi(getparam("edit_id")))
|
if (atoi(getparam("edit_id")))
|
||||||
add_subst_list(slist, svalue, "message id", getparam("edit_id"), &n);
|
add_subst_list(slist, svalue, "message id", getparam("edit_id"), &n);
|
||||||
|
|
||||||
@ -13287,7 +13289,7 @@ void submit_elog(LOGBOOK * lbs)
|
|||||||
printf("\n%s to %s\n\n", str, list);
|
printf("\n%s to %s\n\n", str, list);
|
||||||
|
|
||||||
for (i = 0; i < n; i++) {
|
for (i = 0; i < n; i++) {
|
||||||
j = build_subst_list(lbs, slist, svalue, attrib);
|
j = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(str, "%d", message_id);
|
sprintf(str, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", str, &j);
|
add_subst_list(slist, svalue, "message id", str, &j);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &j);
|
||||||
@ -13847,7 +13849,7 @@ void show_elog_message(LOGBOOK * lbs, char *dec_path, char *command)
|
|||||||
str[0] = 0;
|
str[0] = 0;
|
||||||
|
|
||||||
if (getcfg(lbs->name, "Page Title", str)) {
|
if (getcfg(lbs->name, "Page Title", str)) {
|
||||||
i = build_subst_list(lbs, slist, svalue, attrib);
|
i = build_subst_list(lbs, slist, svalue, attrib, TRUE);
|
||||||
sprintf(mid, "%d", message_id);
|
sprintf(mid, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", mid, &i);
|
add_subst_list(slist, svalue, "message id", mid, &i);
|
||||||
add_subst_time(lbs, slist, svalue, "entry time", date, &i);
|
add_subst_time(lbs, slist, svalue, "entry time", date, &i);
|
||||||
@ -14843,7 +14845,7 @@ void show_logbook_node(LBLIST plb, LBLIST pparent, int level, int btop)
|
|||||||
if (i < lb_list[index].n_attr)
|
if (i < lb_list[index].n_attr)
|
||||||
sprintf(str + strlen(str), " %s $author", loc("by"));
|
sprintf(str + strlen(str), " %s $author", loc("by"));
|
||||||
}
|
}
|
||||||
j = build_subst_list(&lb_list[index], slist, svalue, attrib);
|
j = build_subst_list(&lb_list[index], slist, svalue, attrib, TRUE);
|
||||||
sprintf(mid, "%d", message_id);
|
sprintf(mid, "%d", message_id);
|
||||||
add_subst_list(slist, svalue, "message id", mid, &j);
|
add_subst_list(slist, svalue, "message id", mid, &j);
|
||||||
add_subst_time(&lb_list[index], slist, svalue, "entry time", date, &j);
|
add_subst_time(&lb_list[index], slist, svalue, "entry time", date, &j);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user