mirror of
https://gitea.psi.ch/ELOG/elog.git
synced 2026-09-08 17:13:56 +00:00
Implemented "Preset on first reply"
SVN revision: 2271
This commit is contained in:
parent
7f7c9e1bb4
commit
fc8b059303
37
src/elogd.c
37
src/elogd.c
@ -9314,20 +9314,13 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sprintf(str, "Preset on reply %s", attr_list[index]);
|
sprintf(str, "Preset on first reply %s", attr_list[index]);
|
||||||
if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && breply) {
|
if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && breply) {
|
||||||
|
|
||||||
if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */
|
el_retrieve(lbs, message_id, NULL, NULL, NULL, 0, NULL, 0, str, NULL, NULL, NULL, NULL);
|
||||||
|
|
||||||
/* check for multiple substitution */
|
if (str[0] == 0) {
|
||||||
strlcpy(str, preset, sizeof(str));
|
if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */
|
||||||
if (strchr(str, '$'))
|
|
||||||
*strchr(str, '$') = 0;
|
|
||||||
if (strchr(str, '%'))
|
|
||||||
*strchr(str, '%') = 0;
|
|
||||||
if (strchr(str, '#'))
|
|
||||||
*strchr(str, '#') = 0;
|
|
||||||
if (strncmp(str, attrib[index], strlen(str)) != 0) {
|
|
||||||
|
|
||||||
/* do not format date for date attributes */
|
/* do not format date for date attributes */
|
||||||
i = build_subst_list(lbs, slist, svalue, attrib, (attr_flags[index] & (AF_DATE | AF_DATETIME))
|
i = build_subst_list(lbs, slist, svalue, attrib, (attr_flags[index] & (AF_DATE | AF_DATETIME))
|
||||||
@ -9347,6 +9340,28 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sprintf(str, "Preset on reply %s", attr_list[index]);
|
||||||
|
if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && breply) {
|
||||||
|
|
||||||
|
if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */
|
||||||
|
|
||||||
|
/* do not format date for date attributes */
|
||||||
|
i = build_subst_list(lbs, slist, svalue, attrib, (attr_flags[index] & (AF_DATE | AF_DATETIME))
|
||||||
|
== 0);
|
||||||
|
strsubst_list(preset, sizeof(preset), slist, svalue, i);
|
||||||
|
|
||||||
|
/* check for index substitution */
|
||||||
|
if (!bedit && (strchr(preset, '%') || strchr(preset, '#'))) {
|
||||||
|
/* get index */
|
||||||
|
get_auto_index(lbs, index, preset, str, sizeof(str));
|
||||||
|
strcpy(preset, str);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!strchr(preset, '%'))
|
||||||
|
strcpy(attrib[index], preset);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
sprintf(str, "Preset on duplicate %s", attr_list[index]);
|
sprintf(str, "Preset on duplicate %s", attr_list[index]);
|
||||||
if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && bduplicate) {
|
if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && bduplicate) {
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user