Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG, Page 718 of 796  Not logged in ELOG logo
ID Date Icon Author Author Emaildown Category OS ELOG Version Subject
  66062   Thu Nov 20 10:29:39 2008 Reply Steve WilliamsonStephenWilliamson@Barnsley.gov.ukRequestLinux2.7.5Re: Sorting Museremail

Stefan Ritt wrote:

 

Steve Williamson wrote:

 

However, the main reason for the request was that the I was so pleased with the ordering introduced in 2.7.5 but, as it is more normal for me  to look down a list of names ordered by last-name/first-name than the other way about, I thought it worth asking if there was any way to do this sensibly.  I appreciate that it isn't simple and what suits me may well not suit others - so thanks for taking time to consider the possibilities.  I guess the only real solution is to define users differently, e.g. by structuring the name data into first name(s) and last name (not a global solution but would suit most of western europe and the USA at least!) but that is bound to have lots of impacts both on the application and on existing setups - so not really feasible, and probably not worth the disruption.

 

 That's correct. Adding first name(s), last name(s) requires major modifications which are not se easy and I don't have time for that in the moment. So we'll keep it for the time being.

 That's fine.  Thanks for listenening - and for keeping on with elog

regards

Steve

 

 

  66074   Mon Nov 24 13:49:56 2008 Reply Steve WilliamsonStephenWilliamson@Barnsley.gov.ukBug reportLinux2.7.5Re: Special characters in attribute names

Stefan Ritt wrote:

 

Steve Williamson wrote:

Hi

Thanks for elog - it's a brilliant piece of software.  I'd looked all over for open source software to log/manage change requests before discovering elog; it's so flexible that I've been able to do everything I need with it.

However, I think that I've just discovered my first undocumented 'feature'.  Attribute names containing punctuation characters (e.g. / and :) cause "Redirection limit for this URL exceeded" errors in Firefox 3.0.2 and corrupt the URL if they're used in a Quick Filter.  I often use '/' in attribute names for brevity, e.g. "Old/New Versions" but hadn't used one in a Quick Filter before.

 

Quick answer: Don't use '/' in attribute names ;-) but I guess you were kind of afraid to get this answer.

Somehow longer answer: I tried to reproduce your problem with following configuration:

[demo]
Attributes = Author, Type, Subject, Old/New
Options Old/New = Old, New
Quick filter = Type, Old/New

But I was not successful. Everything worked fine using ELOG V2.7.5-2137. Can you please check with the above configuration and tell me exactly when the redirection problem occurs? Is it during filtering on already on creating a new entry?

 

 Thanks for the advice!

I've just had time to set up a test for this using both empty and populated logbooks (which don't have Hardware/Software in every entry as the field was added recently) and newly created logbooks (which have consistent attributes) and saw the problem on . 

The control ("Hardware/Software") causing the problem has three options "Hardware Only", "Software Only" and "Both".  The problem happens every time you click on the "-- Hardware/Software --" (i.e. All) option in the Quick Filter after having previously selected one (or more) of the options as a filter.  This produces the error:

The page isn't redirecting properly
Firefox has detected that the server is redirecting the request for this address in a way that will never complete.
*   This problem can sometimes be caused by disabling or refusing to accept cookies.

I ran elog with a trace (attached) which shows lots of:

select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20

messages after selecting "-- Hardware/Software --"

The only difference between today's test and last week's is that today the browser is on the local machine.

I also attach my (anonymised) elogd.cfg

Hope this helps

regards

Steve

 

Attachment 1: elogd.cfg.txt
#
# elogd.conf
#
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# This is the configuration file for eLog                                             #
# After changing this file you must re-start the elog daemon by, as root, running:    #
# /etc/rc.d/init.d/elogd restart                                                      #
# The command also recognises "start" and "stop" options                              #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #

# Standards
# ---------
# Please follow the implied standards in this configuration file
# Especially:
#   Separate logs clearly
#   Start each log with the 'global' items for the log (menu lists, security etc)
#   List all attributes before defining them
#   Define all attributes (even those with a blank definition) in the order in which they appear
#   in the main form - it makes it much easier to navigate

# -------------------------------------------------------------------------------------
# Amendment History
# -------------------------------------------------------------------------------------
# Date         Who     What
# 21/01/2008   SW      New RFC form for Change Management
# 25/01/2008   SW      New Bid Management form for MS
# 20/02/2008   SW      Amended Change Management after review
# 03/03/2008   SW      Changes SMTP relay server from x to y
# 08/04/2008   SW      Change Log - updated and simlified
# 29/04/2008   SW      Change Log - added Downtime Required and Downtime Comments fields to Section A
#                                 - added Status Comments field to Section B
# 27/06/2008   SW      Removed Standard Change from Change Log Change Type
# 13/08/2008   SW      Change Log - added Time field to Proposed Target Date
#                      Now sends email to x@y when RFC created
#                      (but not when one is edited - needed to create Change Manager 
#                      field which is displayed below contacts to implement this)
# 13/11/2008   SW      Change Log - Added Hardware/Software field for Rob Walker
#
#                        NB: Interesting bug found - attribute (field) names containing
#                        special characters (e.g. / or :) cause elog to fail to deliver and the
#                        browser gets a:
#                        "Redirection limit for this URL exceeded"
#                        message and the URL is messed up
#                        Will report this to Stefan Ritt, the developer.
# -------------------------------------------------------------------------------------

[global]
port = 8080

# Configure menus

# Menu for list of entries
List Menu Commands = List, New, Find, Select, Logout, Config, Help

# Configure fields

# Configure Email server

SMTP Host = x

# Configure standard Title Image, Time Format and text for bottom of page

Title image = <img border=0 src="b.gif" alt="b/T logo">
Bottom Text = <center><a href="/">Index page</a></center>

----------------------------------------------------------------------------------------------------------------
# Change_Log Log -----------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------

[Change_Log]

# Configure Security

Admin User = stevewi,simonf,ianp
Password File = Change_Log.pwd
#Self Register = 1

# Anyone who can log in can edit other peoples RFCs!
Restrict Edit = 0

# Menu for displayed entry
Menu Commands = List, New, Edit, Delete, Duplicate, Find, Logout, Config, Help

# Fields shown on Guest Menu
Guest Menu Commands = List, Find, Login, Help

# Fields shown on Guest List Menu (to hide Config)
Guest List Menu Commands = Find, Select, Login, Help

# Configure general appearance

Reverse sort = 1
Theme = default
Time Format = %a %e/%m/%y at %H:%M
Date Format = %a %e/%m/%y

#Last Submission =

Entries Per Page = 32

Page Title = b/t Change Log

Comment = Requests For Change

Help URL = rfchelp_english.html

# Email all changes to Administrator, user and contact list

Email All = c@y, $Contacts, "$Change Manager"

# Configure Email Identifiers

Use Email Subject = "Change Control: RFC Ref $RFC"
Use Email Heading = "Change Control: New Entry Submitted $RFC"
Use Email Heading Edit = "Change Control: Existing Entry Amended $RFC"

# Complete list of all fields

Attributes = RFC, Created, Creator Email, Last Edited, Editor Email, Section A, Requested By, Requester Email, Heat Reference, Other References, Heat Priority, Change Type, Requested Category, Item To Be Changed, Old/New Versions, Short Description, Hardware/Software, Impacts On, Impacts Details, Recovery/Back Out Plan, Proposed Target Date, Time, Downtime Required, Downtime Comments, Section B, Additional Impacts, Status, Category, Type, Status Comments, Date To Be Implemented, Section C, Updated, Implemented By, Date Implemented, PIR Result, Date PIR Complete, Signed Off By, Date Signed Off, Contacts, Change Manager

# List of fields shown on list screen

List Display = RFC, Item To Be Changed, Short Description, Hardware/Software, Heat Reference, Heat Priority, Status, Type, Proposed Target Date, Date Implemented, Date Signed Off, Edit

# Mandatory Fields

Required Attributes = Item To Be Changed, Status, Requested Category, Change Type, Short Description, Hardware/Software

# Uneditable Fields

Locked Attributes = Created, Creator Email, Last Edited, Editor Email, RFC, Section A, Section B, Section C, Change Manager

# Drop downs on list screen for speedy searches

Quick Filter = Status, Type, Hardware/Software, Heat Priority, Impacts On, Date, Subtext

# Prevent main text box appearing on list screen

Summary Lines = 0

# Configure All fields

# Section A (initial setup fields)

Comment Section A = <strong><font size=4>Initial Details<font size=3></strong>
Preset Section A = Please complete the fields in this section to describe the change
Preset On Duplicate Section A = Please complete the fields in this section to describe the change

# RFC

Format RFC = 0,narrowattribname,narrowattribvalue,60,60
Preset RFC = RFC-######
Preset On Duplicate RFC = RFC-######
Tooltip RFC = A unique reference will be generated for this Request For Change

# Created

Format Created = 0,attribname,attribvalue,70,100
Preset Created = $long_name ($short_name) on $date
Preset On Duplicate Created = $long_name ($short_name) on $date

# Creator Email

Format Creator Email = 1,attribname,attribvalue,70,100
Preset Creator Email = $user_email
Preset On Duplicate Creator Email = $user_email

# Last Edited

Format Last Edited = 0,attribname,attribvalue,70,100
Preset Last Edited = $long_name ($short_name) on $date
Preset On Duplicate Last Edited = 
Subst On Edit Last Edited = $long_name ($short_name) on $date
 
# Editor Email

Format Editor Email = 1,attribname,attribvalue,70,100
Preset Editor Email = $user_email
Subst On Edit Editor Email = $user_email

# Requested By

Format Requested By = 0,attribname,attribvalue,70,100
#Format Requested By = 0,attribname,attribvalue,40,80
Preset On Duplicate Requested By =

# Requester Email

Format Requester Email = 1,attribname,attribvalue,70,100
Preset On Duplicate Requester Email =
Tooltip Requester Email = Emails are not currently sent to requesters so this is optional

# Heat Reference

#Format Heat Reference = 0,attribname,attribvalue,40,80

Format Heat Reference = 0,attribname,attribvalue,70,100
Preset On Duplicate Heat Reference = 
Tooltip Heat Reference = Service Desk reference(s) for this change

# Other Refences

Format Other References = 1,attribname,attribvalue,70,100
Preset On Duplicate Other References = 
Tooltip Other References = Any other relevant references

# Heat Priority

Preset Heat Priority = 
Preset On Duplicate Heat Priority = 
ROptions Heat Priority = 1 (1 day), 2 (3 days), 3 (5 days), 4 (10 days), 5 (40 days), None
Tooltip Heat Priority = Service Desk priority, 1-5

# Change Type (Full or Urgent)

Format Change Type = 0
Options Change Type = Full, Urgent
Preset Change Type = Full
Tooltip Change Type = Note that Urgent CHanges require Change Manager approval

# Requested Category

Format Requested Category = 1
ROptions Requested Category = Minor, Significant, Major
Preset On Duplicate Requested Category = 
Preset Requested Category = 
Tooltip Requested Category = An indication of the resources required and impact of the change

# Item To Be Changed

Tooltip Item To Be Changed = System Name (e.g. Academy) or Hardware Device

# Old/New Versions

Tooltip Old/New Versions = Enter these if relevant

# Short Description

Tooltip Short Description = Text for the list screen - add more details in the text box or attachments

# Hardware/Software

ROptions Hardware/Software = Hardware Only, Software Only, Both
Preset On Duplicate Hardware/Software = 
Preset Hardware/Software = 
Tooltip Hardware/Software = Select the appropriate scope

# Impacts On

MOptions Impacts On = Specific Systems, Specific Users, Aix, Comms, Web, Windows, Citrix, Nagios, Capacity, Floor Space, Air Con, Power, Other
Tooltip Impacts On = Select all areas potentially impacted by this change and add comments below

# Impacts Details

Tooltip Impacts Details = Describe any specific impacts

# Recovery/Back Out Plan

Tooltip Recovery/Back Out Plan = You may also attach supporting documents

# Proposed Target Date

Preset On Duplicate Proposed Target Date = 
Tooltip Proposed Target Date = Enter date using drop-down lists or click on calendar icon
Type Proposed Target Date = Date

# Time

Format Time = 1,attribname,attribvalue
Preset On Duplicate Time = 
Tooltip Time = Optionally, enter time or other schedule information

# Downtime Required check box

MOptions Downtime Required = Yes (If checked then give details in comments)
Preset On Duplicate Downtime Required = Yes
Tooltip Downtime Required = Check this box if downtime will be required and describe it in the comments

# Downtime Comments

Format Downtime Comments = 1,attribname,attribvalue,70,100
Tooltip Downtime Comments = If downtime required then describe it here
Preset On Duplicate Downtime Comments =

# Section B

Comment Section B = <strong><font size=4>CM/CAB Actions<font size=3></strong>
Preset Section B = The CM/CAB may, optionally, appoint Investigator(s) before making a decision on whether to implement the change and if so, with what priority
Preset On Duplicate Section B = The CM/CAB may, optionally, appoint Investigator(s) before making a decision on whether to implement the change and if so, with what priority

# Additional Impacts

Tooltip Additional Impacts = Additional impacts identified during investigation

# Status

Format Status = 0
ROptions Status = New, Accepted, Rejected, Dormant, Complete
Preset On Duplicate Status = New
Preset Status = New
... 94 more lines ...
Attachment 2: trace.txt
select(1024, [3], NULL, NULL, {0, 813000}) = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 1 (in [3], left {0, 313000})
accept(3, {sa_family=AF_INET, sin_port=htons(34681), sin_addr=inet_addr("127.0.0.1")}, [16]) = 5
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=%5EHardware+Only%24"..., 100000, 0) = 724
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
open("/usr/local/elog/logbooks/Change_Log.pwd", O_RDWR|O_CREAT|O_TRUNC, 0644) = 6
write(6, "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n", 44) = 44
time(NULL)                              = 1227528901
write(6, "<!-- created by MXML on Mon Nov 24 12:15:01 2008 -->\n", 53) = 53


<snipped user info>


close(6)                                = 0
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 293, 0) = 293
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {1, 0})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=%5EHardware+Only%24"..., 100000, 0) = 713
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 213, 0) = 213
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 958000})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=%5EHardware+Only%24 HTTP/1.1\r\nHost: localho"..., 100000, 0) = 633
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
brk(0xa66f000)                          = 0xa66f000
brk(0xa697000)                          = 0xa697000
brk(0xa6bc000)                          = 0xa6bc000
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
brk(0xa6fc000)                          = 0xa6fc000
brk(0xa739000)                          = 0xa739000
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
open("/usr/local/elog/logbooks/<center><a href=\"/\">Index page</a></center>", O_RDONLY) = -1 ENOENT (No such file or directory)
time(NULL)                              = 1227528901
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
brk(0xa647000)                          = 0xa647000
send(5, "HTTP/1.1 200 Document follows\r\nServer: ELOG HTTP 2.7.5-2130\r\nContent-Type: text/"..., 243, 0) = 243
send(5, "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n<html><head>\n<ME"..., 7069, 0) = 7069
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 898000})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/favicon.ico HTTP/1.1\r\nHost: localhost:8080\r\nUser-Agent: Mozilla/"..., 100000, 0) = 440
open("/usr/local/elog/scripts/Change_Log/favicon.ico", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/favicon.ico", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/themes/default/favicon.ico", O_RDONLY) = 6
close(6)                                = 0
open("/usr/local/elog/themes/default/favicon.ico", O_RDONLY) = 6
lseek(6, 0, SEEK_END)                   = 318
lseek(6, 0, SEEK_CUR)                   = 318
lseek(6, 0, SEEK_SET)                   = 0
time(NULL)                              = 1227528901
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
read(6, "\0\0\1\0\1\0\20\20\20\0\1\0\4\0(\1\0\0\26\0\0\0(\0\0\0\20\0\0\0 \0\0\0\1\0\4\0\0\0\0\0\300\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\204ZL\0\274\216\204\0\244vl\0\344\252\244\0\334\242"..., 318) = 318
close(6)                                = 0
send(5, "HTTP/1.1 200 Document follows\r\nServer: ELOG HTTP 2.7.5-2130\r\nAccept-Ranges: byte"..., 550, 0) = 550
select(1024, [3 5], NULL, NULL, {1, 0}) = 2 (in [3 5], left {1, 0})
time(NULL)                              = 1227528901
accept(3, {sa_family=AF_INET, sin_port=htons(34682), sin_addr=inet_addr("127.0.0.1")}, [16]) = 6
time(NULL)                              = 1227528901
select(1024, [6], NULL, NULL, {1, 0})   = 1 (in [6], left {1, 0})
recv(6, "GET /Change_Log/bbbb.gif HTTP/1.1\r\nHost: localhost:8080\r\nUser-Agent: Mozilla/5.0"..., 100000, 0) = 521
open("/usr/local/elog/scripts/Change_Log/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/local/elog/themes/default/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528901
open("/usr/local/elog/themes/default/bbbb.gif", O_RDONLY) = -1 ENOENT (No such file or directory)
send(6, "HTTP/1.1 200 Document follows\r\nServer: ELOG HTTP 2.7.5-2130\r\nContent-Type: text/"..., 673, 0) = 673
close(6)                                = 0
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {1, 0})
time(NULL)                              = 1227528901
time(NULL)                              = 1227528901
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "", 100000, 0)                  = 0
close(5)                                = 0
select(1024, [3], NULL, NULL, {1, 0})   = 0 (Timeout)
select(1024, [3], NULL, NULL, {1, 0})   = 1 (in [3], left {0, 521000})
accept(3, {sa_family=AF_INET, sin_port=htons(34683), sin_addr=inet_addr("127.0.0.1")}, [16]) = 5
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=_all_&Heat+Priority"..., 100000, 0) = 710
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 279, 0) = 279
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 979000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Status=_all_&Type=_all_&Hardware%2FSoftware=_all_&Heat+Priority"..., 100000, 0) = 699
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 958000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528903
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528903
time(NULL)                              = 1227528903
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 959000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 961000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
select(1024, [5], NULL, NULL, {1, 0})   = 1 (in [5], left {1, 0})
recv(5, "GET /Change_Log/?Hardware%2FSoftware=_all_ HTTP/1.1\r\nHost: localhost:8080\r\nUser-"..., 100000, 0) = 619
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1323, ...}) = 0
time(NULL)                              = 1227528904
send(5, "HTTP/1.1 302 Found\r\nServer: ELOG HTTP 2.7.5-2130\r\nConnection: Keep-Alive\r\nKeep-A"..., 199, 0) = 199
send(5, "<html>redir</html>\r\n", 20, 0) = 20
select(1024, [3 5], NULL, NULL, {1, 0}) = 1 (in [5], left {0, 960000})
time(NULL)                              = 1227528904
time(NULL)                              = 1227528904
... 14 more lines ...
  66081   Wed Nov 26 10:00:25 2008 Entry Steve WilliamsonStephenWilliamson@Barnsley.gov.ukBug reportLinux2.7.5Auto-increment attributes

We have an auto-incrementing reference attribute defined as:

# RFC

Format RFC = 0,narrowattribname,narrowattribvalue,60,60
Preset RFC = RFC-######
Preset On Duplicate RFC = RFC-######
Tooltip RFC = A unique reference will be generated for this Request For Change

We also have a "Created by/when" attribute.  Looking at the values this seems to be set when the user clicks "New" whereas the time stamp that appears on the line after the  $@MID@$ seems to be set when the user clicks "Submit".

# Created

Format Created = 0,attribname,attribvalue,70,100
Preset Created = $long_name ($short_name) on $date
Preset On Duplicate Created = $long_name ($short_name) on $date

Every once in a while the incrementing stops working and the number 'sticks' or misses some out.  It looks as if it might be because multiple people are adding entries concurrently.  Could the occasion where there is a gap in the sequence (171-174) be where people abandoned changes (clicked on "Back") after having numbers allocated?  Here is a list showing the discrepancies.

Date        Item     Time Stamp (from the line after $@MID@$)  "Created" attribute time stamp

22/09/08    124      16:15:10                                   11:58

22/09/08    125      16:33:54                                   16:24

 

22/09/08    125      16:35:37                                   16:33              Should be 126

...

10/10/08    146      10:39:09                                   10:30                    Correct

10/10/08    146      10:46:57                                   10:35              Should be 147

10/10/08    147      13:04:03                                   13:02              Should be 148

10/10/08    148      15:11:38                                   15:00              Should be 149

...

17/11/08    171      10:21                                      10:17              Correct

17/11/08    174      14:30                                      13:47              Should be 172

17/11/08    175      16:14                                      16:04              Should be 173

17/11/08    176      16:49                                      16:38              Should be 174

...

25/11/08    187      15:49:58                                   15:47              Correct

25/11/08    187      15:52:39                                   15:48              Should be 188

25/11/08    188      16:49:56                                   16:44              Should be 189

25/11/08    188      16:52:40                                   16:40              Should be 190

25/11/08    188      16:55:17                                   16:43              Should be 191

Let me know if you need any more information.

regards

Steve


  66082   Wed Nov 26 12:49:08 2008 Reply Steve WilliamsonStephenWilliamson@Barnsley.gov.ukBug reportLinux2.7.5Re: Special characters in attribute names

Stefan Ritt wrote:

Thanks to your detailed description I could reproduce and fix the problem. Please download SVN revision #2144 and give it a try.

Tested SVN v 2147 and all looks OK

thanks

Steve

  66097   Fri Dec 5 16:14:19 2008 Reply Steve WilliamsonStephenWilliamson@Barnsley.gov.ukBug reportLinux2.7.5Re: Auto-increment attributes

Steve Williamson wrote:

We have an auto-incrementing reference attribute defined as:

# RFC

Format RFC = 0,narrowattribname,narrowattribvalue,60,60
Preset RFC = RFC-######
Preset On Duplicate RFC = RFC-######
Tooltip RFC = A unique reference will be generated for this Request For Change

We also have a "Created by/when" attribute.  Looking at the values this seems to be set when the user clicks "New" whereas the time stamp that appears on the line after the  $@MID@$ seems to be set when the user clicks "Submit".

# Created

Format Created = 0,attribname,attribvalue,70,100
Preset Created = $long_name ($short_name) on $date
Preset On Duplicate Created = $long_name ($short_name) on $date

Every once in a while the incrementing stops working and the number 'sticks' or misses some out.  It looks as if it might be because multiple people are adding entries concurrently.  Could the occasion where there is a gap in the sequence (171-174) be where people abandoned changes (clicked on "Back") after having numbers allocated?  Here is a list showing the discrepancies.

Date        Item     Time Stamp (from the line after $@MID@$)  "Created" attribute time stamp

22/09/08    124      16:15:10                                   11:58

22/09/08    125      16:33:54                                   16:24

 

22/09/08    125      16:35:37                                   16:33              Should be 126

...

10/10/08    146      10:39:09                                   10:30                    Correct

10/10/08    146      10:46:57                                   10:35              Should be 147

10/10/08    147      13:04:03                                   13:02              Should be 148

10/10/08    148      15:11:38                                   15:00              Should be 149

...

17/11/08    171      10:21                                      10:17              Correct

17/11/08    174      14:30                                      13:47              Should be 172

17/11/08    175      16:14                                      16:04              Should be 173

17/11/08    176      16:49                                      16:38              Should be 174

...

25/11/08    187      15:49:58                                   15:47              Correct

25/11/08    187      15:52:39                                   15:48              Should be 188

25/11/08    188      16:49:56                                   16:44              Should be 189

25/11/08    188      16:52:40                                   16:40              Should be 190

25/11/08    188      16:55:17                                   16:43              Should be 191

Let me know if you need any more information.

regards

Steve


 Hi

This is to let you know that the increment problem has just happened again.

Item 206 has timestamp (from the line after $@MID@$) of 11:59:45 and "created" attribute timestamp of 11:29

overlapping with this, a second item 206 has timestamp of 12:04:02 and "created" attribute of 11:53

So, both users were entering information between 11:53 and 11:59:45 and both picked up the same increment number.

There's no easy solution tho, is there? If you pick up the increment number at the start so it can be displayed on screen and ensure uniqueness then, if a user cancels a new entry you end up with "holes" in the sequence.  If you pick it up at the end then you can't display it until the user presses submit.

regards

Steve

  66101   Mon Dec 8 13:13:13 2008 Reply Steve WilliamsonStephenWilliamson@Barnsley.gov.ukBug reportLinux2.7.5Re: Auto-increment attributes

Stefan Ritt wrote:

I finally found some time to address this problem. It is indeed related to the fact that the new number gets assigned when you click on 'New'. So if two people edit the new entries at the same time, they get assigned the same number. To fix this problem, I made the tag generation work with the 'Subst' command, which is evaluated at the entry submission, and not when you click on 'New'. So to make this work, you need to upgrade to SVN revision 2152 and then put into your configuration file: 

Attributes = Author, RFC, Subject
Preset RFC = <will be assigned when you submit>
Preset on duplicate RFC = <will be assigned when you submit>
Locked attributes = RFC  Subst RFC = RFC-######

I also changed the documentation accordingly.

 Stefan

Thanks for fix - I've just tested it and it works beautifully.

regards

Steve

 

  66196   Fri Feb 6 12:08:49 2009 Entry Steve WilliamsonStephenWilliamson@Barnsley.gov.ukQuestionLinux2.7.5Attachments

If I open an elog entry as read-only then attachments show as links which can be clicked to open the attachment.  However, if I open an entry using Edit then attachments show as text with a delete button - I would expect to be able to read attachments when editing an entry but there may be some good reason for not being able to.

Also, on attachments, if I click on the attachment icon (paperclip) on the list page the URL encodes "/" as "%2f", e.g.

http://xxx.xxx.xxx.xxx:8080/Change_Log/..%2FChange_Log%2F090205_123135%2FCHANGE_CONTROL_NOTICE_050209.doc and I get the following error:

"Invalid URL: Change_Log/..%2FChange_Log%2F090205_123135%2FCHANGE_CONTROL_NOTICE_050209.doc" .  If I then change all occurrences of "%2f" to "/" the link works.

We don't use attachments very often but occasionally they are just what you need - and so is elog!

great piece of software - many thanks for sharing it

Steve

 

 


  66210   Tue Feb 17 12:28:19 2009 Reply Steve WilliamsonStephenWilliamson@Barnsley.gov.ukQuestionLinux2.7.5Re: Attachments

Stefan Ritt wrote:

 

Steve Williamson wrote:

Also, on attachments, if I click on the attachment icon (paperclip) on the list page the URL encodes "/" as "%2f", e.g.

http://xxx.xxx.xxx.xxx:8080/Change_Log/..%2FChange_Log%2F090205_123135%2FCHANGE_CONTROL_NOTICE_050209.doc and I get the following error:

"Invalid URL: Change_Log/..%2FChange_Log%2F090205_123135%2FCHANGE_CONTROL_NOTICE_050209.doc" .  If I then change all occurrences of "%2f" to "/" the link works.

 

You have an old version of elog, this bug has been fixed some time ago. Have a look for example at https://midas.psi.ch/elogs/Linux+Demo/.

If you click on a peperclip there, the attachment is shown correctly. 

 Thanks - just downloaded and compiled the latest version and all is well

ELOG V3.1.5-2eba886