ID |
Date |
Icon |
Author |
Author Email |
Category |
OS |
ELOG Version |
Subject |
68467
|
Thu Nov 24 08:40:31 2016 |
| Stefan Ritt | stefan.ritt@psi.ch | Request | All | 3.1.2 | Re: Cancel button missing when editing an entry |
Andreas Luedeke wrote: |
But as a first step, it might be worthwhile to document this behaviour in the ELOG "User's Guide". Drafts are currently only mentioned in the elogd.cfg syntax pages under "Save drafts" and "autosave". I'll try to propose a text :-)
|
Yes, I would be more than happy to include your text in the documentation.
Stefan |
68482
|
Fri Dec 2 13:54:36 2016 |
| Stefan Ritt | stefan.ritt@psi.ch | Info | All | 3.1.2-6ec506b | Display of draft entries in elog | Dear all,
there seems to be still lots of confusion with the new "draft modus" introduced in elog 3.1.2. Here is how it works:
If you edit an old or new entry, your changes are written to the elog server every few seconds. The entry in the elog database is marked as "draft". The idea behind that is that if your browser crashes or you navigate away from the elog page without saving your entry, the "draft" entry is sill in the elog database and can be recovered later. This is typically useful on some shift logbooks, where people keep the entry open for many hours and add things every few minutes. If they have a crash, they would loose a few hours of information.
The draft modus now has a few drawbacks:
- If you have some draft entries in your elog database, you don't see them until you hit "New" the next time. Then the system offers you to continue the open draft entries.
- Once you change an existing entry, you cannot go back to the version of that entry before you started to make modifications. The only option is to keep the current version or delete the whole entry. The old version of your entry in the database is overwritten every few seconds with the current contents of your edit text field.
To fix the first problem, I introduced a new flag "List drafts = 0|1". If this flag is 1, the draft entries are shown in the list view. The default value for this flag is 1, so normally you should see the draft entries in the database. You should refrain from editing these entries if you know that currently somebody else is working on them, otherwise you will overwrite each other's modifications. The modification is in the current git version of elog which is 3.1.2-6ec506b.
The scond drawback is harder to address. In order to go back to previous version, you would need a full version system (ala git), which is far beyond the scope of elog. I'm working on a partial fix by storing the contents on an entry inside the browser when you start editing an entry. You can then "cancel" your modifications by pasting back the original version from your browser. This works of course only if your browser does not crash or you do not navigate away from the elog page, in which case the original version will be lost.
If anybody has a strong opinion about these changes, please post them here.
Stefan |
68483
|
Fri Dec 2 14:54:58 2016 |
| Stefan Ritt | stefan.ritt@psi.ch | Info | All | 3.1.2-6ec506b | Re: Display of draft entries in elog | In version 3.1.2-416db9f I implemented a "Restore" button, which should fix the second drawback. If you press it, you should be able to go back to where you started when editing an entry. |
68667
|
Mon Aug 21 11:45:06 2017 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Bug report | All | 3.1.3-aded4ae | Bug with Drafts and Language German | Hi Stefan,
when one creates a new entry, and a draft entry exists for the logbook, then a menu appears (see attachment).
If one select "Neuen Eintrag anlegen" then it should ignore the draft and create a new entry.
This feat is done by adding a "&ignore=1" to the "new" command: "<URL>/?cmd=New&ignore=1".
The problem is, that it should not be "cmd=New&..." but "cmd=Neu", since the commands are part of the translation.
Due to this, no new entry can be created as long as a draft exists; at least not in any language other than english.
This problem apparently existed since the beginning of drafts, but it only created problems at our site recently.
Kind Regards
Andreas
PS: Here's a patch that works:
diff elogd.c elogd.c-orig
9575,9576c9575,9576
< rsprintf("<input type=button value=\"%s\" onClick=\"window.location.href='?cmd=%s&ignore=1';\">\n", loc("Create new entry"),
< loc("New"));
---
> rsprintf("<input type=button value=\"%s\" onClick=\"window.location.href='%s';\">\n", loc("Create new entry"),
> "?cmd=New&ignore=1"); |
68668
|
Mon Aug 21 12:16:05 2017 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Bug report | All | 3.1.3-aded4ae | Re: Bug with Drafts and Language German | I've quickly checked: there are a couple more commands in the source code that are not language encoded. I guess some of them needs correction.
> egrep -n "cmd=[A-Za-z]" elogd.c
10293: rsprintf(" r.open('GET', '?jcmd=Unlock&edit_id=%d', true);\n", message_id);
11784: ("<label for=\"ELCode\"><a target=\"_blank\" href=\"?cmd=HelpELCode\">ELCode</a> </label>\n");
13663: "\r\n%s URL : %s?cmd=Config&cfg_user=%s&unm=%s\r\n", loc("Logbook"),
14562: redirect(lbs, "?cmd=Config");
14625: sprintf(str, "../%s/?cmd=Config", getparam("lbname"));
14678: sprintf(str, "../%s/?cmd=Config", lbn);
15703: combine_url(lbs, host, "?cmd=GetMD5", url, sizeof(url), &ssl);
16378: strcat(str, "?cmd=GetConfig"); // request complete config file
16380: strcat(str, "?cmd=Download"); // request config section of logbook
16570: strcat(str, "?cmd=GetPwdFile"); // request password file
17575: rsprintf("<br><b><a href=\"../%s/?cmd=Synchronize&confirm=1\">", lbs->name_enc);
17577: rsprintf("<br><b><a href=\"%s/?cmd=Synchronize&confirm=1\">", lbs->name_enc);
17579: rsprintf("<br><b><a href=\"../%s/?cmd=Synchronize&confirm=1\">", lbs->name_enc);
18959: if (strstr(ref, "cmd=Search&"))
18960: strlcpy(strstr(ref, "cmd=Search&"), strstr(ref, "cmd=Search&") + 11, sizeof(str));
26728: rsprintf("<a href=\"?cmd=Synchronize\">%s</a></td>\n", loc("Synchronize all logbooks"));
Andreas Luedeke wrote: |
Hi Stefan,
when one creates a new entry, and a draft entry exists for the logbook, then a menu appears (see attachment).
If one select "Neuen Eintrag anlegen" then it should ignore the draft and create a new entry.
This feat is done by adding a "&ignore=1" to the "new" command: "<URL>/?cmd=New&ignore=1".
The problem is, that it should not be "cmd=New&..." but "cmd=Neu", since the commands are part of the translation.
Due to this, no new entry can be created as long as a draft exists; at least not in any language other than english.
This problem apparently existed since the beginning of drafts, but it only created problems at our site recently.
Kind Regards
Andreas
PS: Here's a patch that works:
diff elogd.c elogd.c-orig
9575,9576c9575,9576
< rsprintf("<input type=button value=\"%s\" onClick=\"window.location.href='?cmd=%s&ignore=1';\">\n", loc("Create new entry"),
< loc("New"));
---
> rsprintf("<input type=button value=\"%s\" onClick=\"window.location.href='%s';\">\n", loc("Create new entry"),
> "?cmd=New&ignore=1");
|
|
68669
|
Mon Aug 21 14:27:50 2017 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Request | All | V3.1.3-aded4ae | CSS reference in Email for private logbooks | We operate ELOG in an intranet. Many logbooks do send out emails; several use HTML content formatting.
If I watch HTML formatted emails from the intranet, then everything is fine.
If I try to read them from home, my email client hangs when it tries to read the CSS file from out intranet (URL: https://elog-gfa.psi.ch/SLS/elog.css).
Is there a way to set a URL for the email CSS?
Then I could simply copy the CSS file to the internet accessible location and the emails would be properly formatted in the intranet and from home.
I've tried to use "Use Email URL = ", but it turned out that this will change all base URL's in the email BUT the one in the CSS :-(
So I would need a config "Email CSS URL = " to set this.
Here is a patch that does what I want, but it might have some side-effects I'm not yet aware of:
7636,7643c7636,7638
< if (absolute_link) {
< if (lbs != NULL && getcfg(lbs->name, "Email CSS URL", str, sizeof(str)))
< strlcpy(css_base, str, sizeof(css_base));
< else if (lbs == NULL && getcfg("global", "Email CSS URL", str, sizeof(str)))
< strlcpy(css_base, str, sizeof(css_base));
< if (css_base[0] == 0)
< compose_base_url(lbs, css_base, sizeof(css_base), FALSE);
< } else
---
> if (absolute_link)
> compose_base_url(lbs, css_base, sizeof(css_base), FALSE);
> else
Cheers
Andreas |
68771
|
Mon Mar 26 16:32:43 2018 |
| Stefan Ritt | stefan.ritt@psi.ch | Info | All | 3.1.2-0914a6 | New elog setting for large attachments | Most mail delivery systems have a maximum size for attachments. In the past, if an elog attachment was larger than this size, the email server refused to accept this email and no notification is sent. Now one can specify the maximum allowed email attachment size with
Max email attachment size = <n>
where <n> is the number of bytes. If an email attachment is larger than <n>, the attachment is not sent with the email notification, but rather replaced by a link to the elog server for that attachment. By clicking on the link in the email notification, a browser will then open and download the large attachment. For each each elog installation, the admin has to figure out what the maximum attachment size of their SMTP server is, and then put this number into the elogd.cfg setting above. For most installations, the default of 10 MB will just work fine.
Stefan |
68879
|
Fri Dec 21 14:04:41 2018 |
| Stefan Ritt | stefan.ritt@psi.ch | Request | All | V3.1.3-aded4ae | Re: CSS reference in Email for private logbooks | I changed the code ot include the CSS file directly in the email body. So no need any more for external CSS files. I dropped the "Email CSS URL" option as well.
Stefan
Andreas Luedeke wrote: |
We operate ELOG in an intranet. Many logbooks do send out emails; several use HTML content formatting.
If I watch HTML formatted emails from the intranet, then everything is fine.
If I try to read them from home, my email client hangs when it tries to read the CSS file from out intranet (URL: https://elog-gfa.psi.ch/SLS/elog.css).
Is there a way to set a URL for the email CSS?
Then I could simply copy the CSS file to the internet accessible location and the emails would be properly formatted in the intranet and from home.
I've tried to use "Use Email URL = ", but it turned out that this will change all base URL's in the email BUT the one in the CSS :-(
So I would need a config "Email CSS URL = " to set this.
Here is a patch that does what I want, but it might have some side-effects I'm not yet aware of:
7636,7643c7636,7638
< if (absolute_link) {
< if (lbs != NULL && getcfg(lbs->name, "Email CSS URL", str, sizeof(str)))
< strlcpy(css_base, str, sizeof(css_base));
< else if (lbs == NULL && getcfg("global", "Email CSS URL", str, sizeof(str)))
< strlcpy(css_base, str, sizeof(css_base));
< if (css_base[0] == 0)
< compose_base_url(lbs, css_base, sizeof(css_base), FALSE);
< } else
---
> if (absolute_link)
> compose_base_url(lbs, css_base, sizeof(css_base), FALSE);
> else
Cheers
Andreas
|
|
|