Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 537 of 808  Not logged in ELOG logo
ID Date Icon Author Author Emaildown Category OS ELOG Version Subject
  873   Mon Jan 10 20:52:13 2005 Reply Heiko Scheith.scheit@mpi-hd.mpg.deRequestLinux Re: implement 'hide attribute' and 'sort attribute'
> > 'sort attributes' sorts the logbook entries when they are displayed.  Or?
> 
> Right
> 
> > What I want is to rearrange the entry mask.  E.g. if 'Entry type' article is
> > selected then the attributes 'Author', 'Journal', 'Title', and 'Year' 
> > should be listed first, as they are required for this bibtex entry type.
> > Is it possible with the current elogd version to also sort (rearrange) the 
> > attributes in the entry mask?  If yes, how?  
> 
> Attributes are shown in the order you specify them in the config file, so what about
> 
> Attributes = Entry type, Author, Journal, Title, Year     ???

Because for 'Entry type'='InProceedings' one needs:
'Author', 'Title', 'Booktitle', 'Year', 'Volume', 'Number'.
So, depending on the entry type that was chosen the entry mask should change,
with the required fields first and the not valid fields should not be shown
at all, which can nicely be done with the 'hidden attributes' config option.
Only the sorting (of the entry mask!) is missing! :)
  953   Sat Feb 19 18:39:52 2005 Entry Heiko Scheith.scheit@mpi-hd.mpg.deBug fixLinux2.5.7Problem with 'Show Attributes' option
There is a problem with the 'Show Attributes' option
causing the 'Format ...' options to be ignored.

See attachment for patch.
Attachment 1: patch
--- elogd.c_20050219    Sat Feb 19 18:15:09 2005
+++ elogd.c     Sat Feb 19 18:25:55 2005
@@ -8169,7 +8169,7 @@
       if (format_flags[index] & AFF_SAME_LINE)
          /* if attribute on same line, do nothing */
          rsprintf("");
-      else if (index < n_attr - 1 && (format_flags[index + 1] & AFF_SAME_LINE)) {
+      else if (aindex < n_disp_attr - 1 && (format_flags[attr_index[aindex + 1]] & AFF_SAME_LINE)) {
          /* if next attribute on same line, start a new subtable */
          rsprintf("<tr><td colspan=2><table width=\"100%%\" cellpadding=0 cellspacing=0><tr>");
          subtable = 1;
@@ -8469,7 +8469,7 @@
          }
       }
 
-      if (index < n_attr - 1 && (format_flags[index + 1] & AFF_SAME_LINE) == 0) {
+      if (aindex < n_disp_attr - 1 && (format_flags[attr_index[aindex + 1]] & AFF_SAME_LINE) == 0) {
          /* if next attribute not on same line, close row or subtable */
          if (subtable) {
             rsprintf("</table></td></tr>\n");
@@ -8479,7 +8479,7 @@
       }
 
       /* if last attribute, close row or subtable */
-      if (index == n_attr - 1) {
+      if (aindex == n_disp_attr - 1) {
          if (subtable) {
             rsprintf("</table></td></tr>\n");
             subtable = 0;
  1072   Mon Apr 11 13:52:29 2005 Warning Heiko Scheith.scheit@mpi-hd.mpg.deBug fixLinux2.5.7-1Segmentation fault when searching for empty regex
Segmentation fault when searching for empty regex
--------------------------------------------------

Searching for a regex like 'm*', which also includes zero 'm's, an empty
expression is found indefinitely in 'highlight_searchtext(...)', which 
eventually results in an overflow of 'pt1'.  The patch below fixes this
particular problem, but I would guess there are many other regular 
expressions that would lead to an overflow of 'pt1', so its size
should definitely be checked before every 'strcpy(pt1,...)' and
the loop be aborted accordingly.  (Or 'pt1' should be allocated 
and enlarged dynamically.)

*** 14777,14782 ****
--- 14777,14784 ----
        if (status != REG_NOMATCH) {
           size = pmatch[0].rm_so;
  
+        if (size == 0) break; /* check for zero size -> infinite loop */
+ 
           /* copy first part original text */
           memcpy(pt1, pt, size);
           pt1 += size;
***************
*** 14788,14795 ****
--- 14790,14799 ----
           /* see also rsputs2(char* ) */
  
           if (hidden)
+          /* need to check size of pt1 !!! */
              strcpy(pt1,
"\001B\004style=\003color:black;background-color:#ffff66\003\002");
           else
+          /* need to check size of pt1 !!! */
              strcpy(pt1, "<B style=\"color:black;background-color:#ffff66\">");
  
           pt1 += strlen(pt1);
***************
*** 14802,14814 ****
--- 14806,14821 ----
  
           /* add coloring 2nd part */
           if (hidden)
+          /* need to check size of pt1 !!! */
              strcpy(pt1, "\001/B\002");
           else
+          /* need to check size of pt1 !!! */
              strcpy(pt1, "</B>");
           pt1 += strlen(pt1);
        }
     } while (status != REG_NOMATCH);
  
+    /* need to check size of pt1 !!! */
     strcpy(pt1, pt);
  }
  1150   Wed May 18 14:12:02 2005 Warning Heiko Scheith.scheit@mpi-hd.mpg.deBug reportLinux2.5.9reverse sort option does not work for quick filter
The 'reverse sort' option does not work for quick filter searches. In the
URL there is always written 'reverse=0'. For normal 'Find' it works OK.
  1151   Wed May 18 14:18:07 2005 Warning Heiko Scheith.scheit@mpi-hd.mpg.deBug reportLinux2.5.9elog crashes when admin tries to register new users
When pasting the URL for the registration of new users (with 'Self register = 3') elog
crashes with segmentation fault. I don't have the time currently to give you more
debuging information but maybe you can have a look the same. It crashes after
the user is registered. The Email is sent, too.
  1152   Wed May 18 14:20:23 2005 Warning Heiko Scheith.scheit@mpi-hd.mpg.deBug report ?error message from this forum
Just after submitting the last message, the following error message was displayed:

Error sending Email via "mailsend.psi.ch": malformed address: synergie-infcom>
  1177   Sat Jun 4 16:37:04 2005 Reply Heiko Scheith.scheit@mpi-hd.mpg.deBug reportLinux2.5.9Re: reverse sort option does not work for quick filter
[quote="Stefan Ritt"][quote="Heiko Scheit"]The 'reverse sort' option does not work for quick filter searches. 
In the
URL there is always written 'reverse=0'.  For normal 'Find' it works OK.[/quote]

I don't understand the problem. If I take the example elogd.cfg from the distribution, it sorts in reverse
order, since the file contains [i]Reverse sort=1[/i]. If I apply a quick filter, the result is still sorted in
reverse order (entry ID from high to low). If I set [i]Reverse sort=0[/i], the even after applying a quick
filter, the entries are sorted with their ID from low to high. Applying a quick filter should not put a
[i]reverse=0[/i] into the URL, so it's strange to me where this comes from. Can you try to reproduce the problem
with the demo elogd.cfg?[/quote]

I played with the quick filter settings somewhat.  Here is what I get.
I can't really make sense of it, but maybe you can figure out what
happens.  Below, the first line always contains the 'Quick filter'
config setting.  The lines below show the URL after searching with the
quick filter for the 1st, 2nd,... attribute listed in the quick filter
setting.  (The common base of the URL was removed.  Shown is
everything after the last '/'.)  Each 'quick search' was started from
the 'List' or 'Back' page, i.e. the URL ended with a '/'.

As you can see below the result depends on the number and on the order
(!) of the attributes.  Only a few give the desired result (marked
with # OK).  Incidentally the option 'Date, Something' works fine,
which is the combination found in the demo config file.  :)

Quick filter            = Subject, Date, Login
?Subject=sd&Login=           # OK
?last=1&&reverse=0
?Login=sdf&reverse=0

Quick filter            = Subject, Login, Date
?Subject=scd&reverse=0
?Login=sdf&reverse=0
?last=1&reverse=0

Quick filter            = Date, Subject, Login
?last=1&&reverse=0
?Subject=sd&Login=           # OK
?Login=sd&reverse=0

Quick filter            = Subject, Date
?Subject=sd                  # OK
?last=1&reverse=0

Quick filter            = Date, Subject
?last=1&Subject=             # OK
?Subject=ddsd                # OK

Quick filter            = Login, Date
?Login=sch                   # OK
?last=31&reverse=0

Quick filter            = Subject, Login
?Subject=dsd&Login=          # OK
?Login=sd&reverse=0

Quick filter            = Login, Subject
?Login=sd&Subject=           # OK
?Subject=sd&reverse=0
  1189   Thu Jun 9 15:20:04 2005 Warning Heiko Scheith.scheit@mpi-hd.mpg.deBug reportLinux2.5.9Re: elog crashes when admin tries to register new users

Stefan Ritt wrote:

Heiko Scheit wrote:
When pasting the URL for the registration of new users (with 'Self register = 3') elog
crashes with segmentation fault. I don't have the time currently to give you more
debuging information but maybe you can have a look the same. It crashes after
the user is registered. The Email is sent, too.


I cannot reproduce this problem either. The only difference I see is that I use thunderbird as my email client, where I don't have to copy/paste the activation URL into my browser, but just click on it. If maybe the copy/paste operation adds an additional CR/LF or so, that could be a problem. Can you check again? A stack trace of the crashed elogd would help as well.


The following appended after the base (!) URL results in a segmentation fault
?cmd=Activate&new_user_name=test1&new_full_name=Test1

It works fine, if a specific logbook is given. So
http://my.ho.st/?cmd=Activate&new_user_name=test1&new_full_name=Test1
is not OK, while
http://my.ho.st/myLogBook/?cmd=Activate&new_user_name=test1&new_full_name=Test1
is OK.
ELOG V3.1.5-3fb85fa6