Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 649 of 808  Not logged in ELOG logo
ID Date Icon Author Author Email Category OS ELOG Versiondown Subject
  903   Sun Feb 6 12:44:03 2005 Reply Stefan Rittstefan.ritt@psi.chBug reportLinux2.5.6+r154Re: $user_email variable causes problems in Use Email From setting
> header. I saw that elog:333 reported a similar problem but this was listed
> as fixed.

Yes, this was fixed in revision 1.550 of elogd.c. You apparently have revision 1.54x
which does not yet contain the patch. You need to donwload the newest version from
CVS and compile it by hand (or wait for the next major release).
  925   Tue Feb 8 17:40:54 2005 Idea Emiliano GabrielliAlberT@SuperAlberT.itBug fixAll2.5.6 cvs[patch]: fixed wrong extention check
current version uses strstr() to check if the file has the expected ascii
text extension ... this is buggy becouse this way a file named
".txt_hidden_file" or "foo.config.dat" are both seen as .txt files.

the following patch fixes the problem, plz apply to cvs:



#######################################################################
--- elogd_orig.c        2005-02-03 16:46:10.000000000 +0100
+++ elogd_extchk_fix.c  2005-02-08 17:32:21.000000000 +0100
@@ -1160,6 +1160,28 @@

 #define my_toupper(_c)    ( ((_c)>='a' && (_c)<='z') ? ((_c)-'a'+'A') : (_c) )

+static BOOL chkext(const char *str, const char *ext)
+{
+   int extl, strl;
+   char c1, c2;
+
+   if (ext == NULL || str == NULL)
+      return FALSE;
+
+   extl = strlen(ext);
+   strl = strlen(str);
+   if (extl >= strl)
+      return FALSE;
+   str = str+strl-extl;
+   while (*str) {
+      c1 = *str++;
+      c2 = *ext++;
+      if (my_toupper(c1) != my_toupper(c2))
+         return FALSE;
+   }
+   return TRUE;
+}
+
 BOOL strieq(const char *str1, const char *str2)
 {
    char c1, c2;
@@ -1168,6 +1190,8 @@
       return TRUE;
    if (str1 == NULL || str2 == NULL)
       return FALSE;
+   if (strlen(str1)!=strlen(str2))
+      return FALSE;

    while (*str1) {
       c1 = *str1++;
@@ -13698,8 +13722,8 @@
                       ("<tr><td colspan=%d class=\"attachment\">%s %d: <a
href=\"%s\">%s</a>\n",
                        colspan, loc("Attachment"), index + 1, ref,
attachment[index] + 14);

-                  if ((strstr(str, ".TXT") || strstr(str, ".ASC") ||
strstr(str, ".CFG")
-                       || strstr(str, ".CONF")
+                  if ((chkext(str, ".TXT") || chkext(str, ".ASC") ||
chkext(str, ".CFG")
+                       || chkext(str, ".CONF")
                        || strchr(str, '.') == NULL) && show_attachments) {
                      /* display attachment */
                      rsprintf("</td></tr><tr><td colspan=%d
class=\"messagelist\"><pre>", colspan);
@@ -14779,7 +14803,7 @@
    regex_t re_buf[MAX_N_ATTR + 1];
    regmatch_t pmatch[10];

-   /* redirect if enpty parameters */
+   /* redirect if empty parameters */
    if (strstr(_cmdline, "=&")) {
       while ((pt1 = strstr(_cmdline, "=&")) != NULL) {
          pt2 = pt1;
#######################################################################
  926   Tue Feb 8 19:04:25 2005 Blink Emiliano GabrielliAlberT@SuperAlberT.itCommentLinux2.5.6 cvs[patch] Re: images attached shown as inline
> > uhm ok .. can I expect to get a release with this feature in the near future ?
> 
> I checked how I would do that and did not find a good solution. If I put a
> 
> <img width=300 ...> 
> 
> for example, this scales down a big picture to only 300 pixels width. But if you submit a small
> picture, like just an icon, it blows it up to 300 pixels as well, which does not look nice.
> Unfortunatle I don't know of any option like "maxwidth=x" which only scales pictures down if they
> are larger than x. Do you know?

the following patch should do the job:


#################################################################################
--- elogd_orig.c        2005-02-03 16:46:10.000000000 +0100
+++ elogd_imgscale.c    2005-02-08 18:58:14.000000000 +0100
@@ -13690,9 +13690,14 @@
                       ("<tr><td colspan=%d class=\"attachment\">%s %d: <a href=\"%s\">%s</a>\n",
                        colspan, loc("Attachment"), index + 1, ref, attachment[index] + 14);
                   if (show_attachments)
-                     rsprintf
-                         ("</td></tr><tr><td colspan=%d class=\"messagelist\"><img
src=\"%s\"></td></tr>",
-                          colspan, ref);
+                     if (!getcfg(lbs->name, "Attached image width", str, sizeof(str))) {
+                        rsprintf("</td></tr><tr><td colspan=%d class=\"messagelist\"><img
src=\"%s\"></td></tr>",
+                                 colspan, ref);
+                    } else {
+                        rsprintf("</td></tr><tr><td colspan=%d class=\"messagelist\">"
+                                 "<div style=\"width: %s\"><img src=\"%s\" style=\"width:
100%\"></div></td></tr>",
+                                 colspan, str, ref);
+                    }
                } else {
                   rsprintf
                       ("<tr><td colspan=%d class=\"attachment\">%s %d: <a href=\"%s\">%s</a>\n",
@@ -18090,7 +18095,10 @@
                   if (is_image(att)) {
                      rsprintf("<tr><td class=\"messageframe\">\n");
                      rsprintf("<a name=\"att%d\"></a>\n", index + 1);
-                     rsprintf("<img src=\"%s\"></td></tr>", ref);
+                     if (!getcfg(lbs->name, "Attached image width entry", str, sizeof(str)))
+                        rsprintf("<img src=\"%s\"></td></tr>", ref);
+                    else
+                        rsprintf("<div style=\"width: %s\"><img src=\"%s\" style=\"width:
100%\"></div></td></tr>", str, ref);
                      rsprintf("</td></tr>\n\n");
                   } else {
                      if (is_ascii(file_name)) {
##########################################################################################

two new elog.conf parameters are defined:
Attached image width          ; width of full view image attached
Attached image width entry    ; width of attached image in the entry list view

plz apply :-)
  934   Sat Feb 12 17:45:39 2005 Reply Stefan Rittstefan.ritt@psi.chBug fixAll2.5.6 cvsRe: [patch]: fixed wrong extention check
> current version uses strstr() to check if the file has the expected ascii
> text extension ... this is buggy becouse this way a file named
> ".txt_hidden_file" or "foo.config.dat" are both seen as .txt files.

I added your routine chkext() to the code, but actually use it differently. I
display now ASCII files not by their extension, but the code checks for each file
to contain non-printable characters. If it contains all printable letters, and does
not have the extension PDF, PS or EPS, it's shown inline.
  935   Sat Feb 12 17:48:51 2005 Reply Stefan Rittstefan.ritt@psi.chCommentLinux2.5.6 cvs[patch] Re: images attached shown as inline
Are you sure that this does not stretch small images? Please see elog:931

> two new elog.conf parameters are defined:
> Attached image width          ; width of full view image attached
> Attached image width entry    ; width of attached image in the entry list view

I would rather go with a new class in the CSS file to contain this options, since I 
want to keep the number of options as small as possible.
  948   Wed Feb 16 08:48:52 2005 Smile Emiliano GabrielliAlberT@SuperAlberT.itBug fixAll2.5.6 cvsRe: [patch]: fixed wrong extention check
> > current version uses strstr() to check if the file has the expected ascii 
> > text extension ... this is buggy becouse this way a file named 
> > ".txt_hidden_file" or "foo.config.dat" are both seen as .txt files. 
>  
> I added your routine chkext() to the code, but actually use it differently. I 
> display now ASCII files not by their extension, but the code checks for each file 
> to contain non-printable characters. If it contains all printable letters, and does 
> not have the extension PDF, PS or EPS, it's shown inline. 
 
I totally agree with you choice :-) 
  906   Mon Feb 7 13:14:41 2005 Idea Emiliano GabrielliAlberT@SuperAlberT.itRequestLinux2.5.6images attached shown as inline
I'm configuring this great application in order to replace the previous
elogbook my community is using (in the accelerator's world).

One of the main and mandatory feature they cannot renunce is the possibility
of displaying every attached image just inline, without having to click over
the file name or to enter the entry view (in which the attachment can
already be displayed inline) ...  

- images (and hopefully ps, eps, pdf) be displayed inline just after the
text body of the message in the main "List" view
- possibility to configure the scale of this view
- possibility of build some thumbs in order to save BW and time


Is there any way to do it or any plan to implement such a feature in the
very next future ? 
  907   Mon Feb 7 13:28:18 2005 Warning Emiliano GabrielliAlberT@SuperAlberT.itBug reportLinux2.5.6preselected values and conditional options
here is a piece of my current config:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Attributes = Author, Type, Category, Subject
Required Attributes = Author, Type, Subject

Options Type = Deposition{1}, Arc Studies{1}, Conditioning{1}, Vacuum{2},
Other{3}
Show Attributes = Author, Subject, Type

{1}ROptions Category = Nb, NbN, W, cavity system
{2}ROptions Category = pump, leak, mounting

{1}Show Attributes = Author, Subject, Type, Category
{2}Show Attributes = Author, Subject, Type, Category
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

this is an escamotage I use to have the option to be displyed.
I mean that something like the following:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Attributes = Author, Type, Category, Subject
Required Attributes = Author, Type, Subject
Options Type = Deposition{1}, Arc Studies{1}, Conditioning{1}, Vacuum{2},
Other{3}
Preset Type = Deposition

{1}ROptions Category = Nb, NbN, W, cavity system
{2}ROptions Category = pump, leak, mounting

{3}Show Attributes = Author, Subject, Type
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

rises a bug: the select input correctly shows "Deposition" as preselected
value, BUT the attributes shown are not those identified by the "{3}".
re-selecting by hand the "deposition" Type option everything goes right.

sorry for my bad english
ELOG V3.1.5-3fb85fa6