channel-e information in an electronic age.

Midgley Village Web Site

These servlets are from my Midgley Village web site. I hope that others the community in which I live will find it useful. It allows registered users to post news and events without any special technical knowledge.

Background

In 2004 I was told that the community forum would be interested in a web site. However, no one ever formally asked me to produce anything or even gave me ideas about might be wanted. After many months I decided to put together a site anyway.

The site went live on 23 November 2004. There has only be one flurry of interest, but that soon subsided. I continue to add features when I get chance.

Operation

The first feature that I built was the ability for registered users to add news items to the site. The registration process is the normal routine. The users submits their details. A email is sent to their address with a code. The user then confirms registration by entering the code.

I have written in a system that helps to prevent people posting offensive material. When users first register they must have any postings approved before the system displays them. If I feel the user is responsible I will promote them. They then have their postings approved immediately. At the next level users have the ability to approve the postings of others.

News items have a limited lifetime. When posting, the user specifies the display period, up to 23 days. When the item expires it is automatically removed by the system.

When users register they can chose a notification level. If set to "New Post", the user will receive all new events by email. Other settings are Twice Dail, Daily, Weekly and Never.

The latest feature to be added is an events calendar. It works in a similar way to hte news items. Users must register to post events, approval of events being required for new users. More information is required when posting; event date, start and end time etc.

Events are shown on a calendar on the front page. I have yet to decide how to show the event information. I want to ensure that it is accessible, so as a stop gap I'm abusing an abbr tag.

Package Contents

These are the class files included in the package, as at 22 July 2005.

Admin
A page that handles administrator requests. I can start/stop the tasks that TeaBoy performs, change user status levels and send test email.
DiaryEvent
A class for events in the calendar.
EncodedTextField
A class that converts newline characters to <BR>> tags so that they render nicely.
EventDesk
The servlet that allows users to submit/edit/delete events.
Index
The index page.
Links
A simple page that shows links (from a database table).
MenuFrag
Included in all pages to display the menu. Tests for cookies and sessions and changes the menu content to reflect these.
NewsDesk
The servlet that handles submission/editing/deletion of news items.

The "Out..." servlets are generally included in pages. They are called using getNamedDispatcher.

OutEventCalendar
Produces the event calendar.
OutLinksFeed
Produces a list of links.
OutListEvents
Produces a list of events. Used by EventDesk.
OutNewsFeed
Produces a list of news items. The list format is quite varied, depending on how it's called.
OutServicesList
Produces a list of services that TeaBoy runs. Only used by the Admin servlet.
OutUserList
Produces a list of users. Only used by the Admin servlet.
Register
The servlet that handles user registration, settings, login/out.
TeaBoy
A housekeeping servlet that expires news and events and emails users when news items are posted.

Status

Active:

Event Mail Notification
Add a routine to TeaBoy to notify subscribers of new events.
Instructions
Add user guides for posting of news/events.

Released under the GNU General Public License.

The source files are available via FTP. All project files are available from this web site.

History