Ryan's Electronic Diary Sheet Valid HTML 4.0!  SourceForge.net Logo  Support This Project

News

April 2007 : Version 1.2.1 released! : There was a minor bug that has been fixed regarding remote user detection routine. This meant a user logging in as Fred was being incorrectly detected as another user with an alias of Fred_Jones.

As before there is a special version for Windows. This is due to the older version of Date-EzDate available for that platform compared with other OSes.

Note that although the previous release was 1.2 - some of the files may have inadvertently stated they were v1.3 . V1.3 has not yet been released. The latest version of this software is as above 1.2.1 .

Introduction

Ryan's Electronic Diary Sheet (aka RyansEDS) is a web-based Perl application which allows members of an organisation (typically staff) to inform each other of their proposed whereabouts. It is designed to be a simple shared calendaring application which does require complex (and often proprietary) client/server software.

Like its sister application Ryan's In/Out Board it was written to fulfil a need at my employer Contact a Family. Staff needed a simple centralised way to let each other know when they would be out of the office rather than get into the complexities of sharing calendars.

The diary sheet works on a week by week basis and stores its data accordingly. A shell script (bacth file) is supplied which (when run as a scheduled event/cron job) will clear out data older that your chosen limit. Thus data storage is kept to a minimum. The diary sheet itself also has a feature will prevent users from going too far forward or backward.

Main features are:

Ryan's Electronic Diary Sheet has been tested on Linux (Debian, SuSE) running Apache 2.x . I see no reason why it won't run on Windows, MacOSX or other Unices running different webserver software.

1. RyansEDS uses the REMOTE_USER http environment variable to detect users. Thus if it is hosted on a secure intranet whereby users log into the site, the diary sheet scripts will detect the user they logged in as and use the aliases to map them to the relevant RyansEDS user if required. RyansEDS itself does not require people to login and contains no such security features. I assume that site security is handled as part of the site it is hosted on.

2. A script is supplied to do this - if this script is run as cron job or scheduled task, it will be performed regularly.

Licence

Ryan's Electronic Diary Sheet is copyright (c) 2006 Ryan P. Cartwright
Ryan's Electronic Diary Sheet is released under the terms of the "GNU General Public License (GPL)" (v2 and up).
Ryan's Electronic Diary Sheet is provided "as is" and without any express or implied warranties, including, without limitation, the implied warranties of merchantability and fitness for a particular purpose.

Requirements

Ryan's Electronic Diary Sheet requires no database software or client software beyond a web browser. It requires a web server to serve the Perl files as CGI and storage space for the data files. A typical installation requires about 4Mb of storage space for a year.

Base requirements for the server are:

Note that RyansEDS uses functionality from Date-EzDate 1.05. The latest version on Windows is 1.04 and so those deploying on Windows servers will need to use the special Windows version of RyansEDS which allows for that. Other OSes can use the standard RyansEDS version which employs all the functions from Date-EzDate 1.05 and above.

Why RyansEDS?

It may seem to you that there is no real need for something like RyansEDS, especially considering that it presents yet another form for users to fill in in order to share info. In light of the group-ware client/server applications that exist to share calendaring information it may seem that RyansEDS is, well, a little basic (i.e it doesn't link in with my PIM client).

So why write such an application?
The simple answer is because it met a need at my employer and I suspect it may meet a similar need in many other small (and larger) organisations.

When I joined my employer one of my tasks was to upgrade the ageing fileserver, another task was to produce an Intranet. I started looking down the proprietary route ( okay let's name names - Microsoft Exchange ) and found the licence costs outside of my budget. On consulting users and doing some research I found the features we actually wanted from Exchange were mail, out of office auto-replies, an in-out board and shared calendars.
Happy that I could provide the first two via Exim and having written Ryan's In/Out Board to provide the third, I started to consider the shared calendar options.
At the time there were no open source groupware applications but I didn't want to install (read "pay for") Exchange just for shared calendars. I consulted my users again and asked what it was they actually wanted to get out of shared calendars. Almost all of them said something along the lines of being able to know whether colleagues were in the office or not in the coming weeks and perhaps where they were.
Add to this the fact that, until then, we had used a single diary sheet for the whole office. This was a piece of paper with people down the left and days of the week across the top. Each week we would troupe down to reception and fill in our movements for the next week. This met most of our needs but it had disadvantages:

So Ryan's Electronic Diary Sheet was written to meet this need and has been in use since 2002.
Your need may not be exactly the same, perhaps your staff need shared calendars but before you rush out and renew those licences or get into other groupware server products, consider these questions: If you answered yes to two or more of those, you may find something like Ryan's Electronic Diary Sheet meets your needs.

If you would like to read more about the transition process mentioned above, there's a case study on Contact a Family's website : http://www.cafamily.org.uk/oss

Download

The latest version of Ryan's Electronic Diary Sheet is available here. This will list all the available releases, I suggest you take the latest one. Everything you need is included in the download follow the instructions in the readme to install and configure.

Readme

You can read the distributed ryansiobdoc.txt readme file by clicking here.

Changes

Apr 2007 v1.2.1Minor bugfix to remote_user detection routines.

If you wish to make the change yourself, edit ryanseds.pl and change the following line (should be line 150) from :

if ($users =~ m/$remote_user/){
to:
if ($users eq $remote_user){

Support

I prefer to answer support queries via the sourceforge forum. This currently has some FAQ's. I am notified by mail when you post on there but bear in mind I have a full time job and a family so don't expect instant replies.

Thanks for your interest in Ryan's Electronic Diary Sheet
Ryan Cartwright