20030901 OPENWEBMAIL EDITCAL PATCHES:
This set of patches enhances the calendar "additem" and "edititem" functionality in several ways:
- Users can now add a calendar event FOR any day FROM any day. It is no longer required
to go to the day you would like to enter an event for before entering your event.
Pull down lists for recurrance dynamically adjust when the date is changed.
- Users can now edit all events completely, including date and recurrance. It is no
longer a requirement to delete an event and re-enter it completely if you want to
move it to another day. Simply change the date.
- The color picking squares now show a hand icon to indicate that they can be clicked.
Additionally, the color picking code has been fixed to work on all browers on all
platforms I could find. Previously, these squares did not work on any Mac browsers.
Three files are required to be patched. You can download each patch below:
- openwebmail-cal.pl
- etc/lang/en
- etc/templates/en/editcalendar.template
These patches are against the -current file timestamped:
openwebmail-current.tgz 26-Aug-2003 12:42 5.1M
NOTE: I did NOT update any templates or language files other than English because I do not know
enough about character encodings to make sure that I do it correctly. Please update your corresponding
language and template files to ensure these new features work correctly.
This set of patches has been tested on:
Windows 98: Netscape Communicator 4.7
Netscape 6.1
Mozilla 1.0 Gecko 20020530
Internet Explorer 6.0.2800.1106
FreeBSD 4.8: Mozilla1.4 Gecko 20030713
Konquerer 3.1.1 (Using KDE 3.1.1a)
Mac OSX: Safari 1.0(v85)
Internet Explorer 5.2 (5010.1) for Mac
FURTHER POSSIBLE IMPROVEMENTS THAT I MAY GET TO IN THE FUTURE:
- Start times are not checked against end times currently on the client side. This means users
can enter events that end before they start. Although these events are not entered into the .calendar.book
file, the user is left wondering what happened because their event seems to "dissappear".
- Too much code repeating. Many things could be made into functions that would make the code
much smaller and easier to understand.
- Many lines in many of the OWM files have unneccessary whitespace at the end of the line. There
is savings to be had by removing much of this clutter, although it may be less than 1k.
- Local variables inside subroutines should not be named the same as global variables. CGI.pm
gets confused by this sometimes and it is not good practice generally IMO.
- We should change the .calendar.book to read/write in iCal format instead of the wierd format
it is in currently. This will be a good baby-step towards a system that can function with all of the
other popular calendar systems out there.
Alex