arsLab Help :: Table of Contents
  What is arsLab?
arsLab is a web module written in PHP with MySQL as a backend. It allows the definition of "Events", each having numerous places available. For each such event, people can register and take places in the event through the web.
It saves the need to keep track of all people, and where/when they want to register.
    Main Features:
  • Definition of elaborate events / classes / labs
  • Users register themselves through the web
  • Registration is intuitive - just point & click
  • Allows for identity verification of the users (with multiple plugins)
  • Allows the administrator to moderate events by deleting and moving registrants.
  • and more...

arsLab is protected under copyright laws and distributed under GPL see COPYING file in this distribution.

Using arsLab? Drop me a line and tell me how you've put arsLab into use.

Dan

Back to the Table of Contents

  Installation Instructions
Please refer to INSTALL file distributed with this software.

Back to the Table of Contents

  User Interface
The term "user" refers here to the end user which registers to events.
The user can be refered to main page where all categories/events are showing, or to a listing of events that belongs to a specific category only, or, directly to the registration page for a specific event.

Labs list A full listing of events (by category) will be displayed when the URL of arsLab is accessed through the web. The user will get a page similar to the one displayed right.

Here you see a partial listing for category "Physics Labs". Note that event status (open/closed for registration) is displayed, and open events are clickable as links. Clicking on category name will display events in that category only.

Once an event page was entered, the user is presented with a table which represents places in the event. Free places are empty cells, which mark yellow when the cursor moves over them. Clicking a free space will open the registration dialog (see below). Taken places are not accessible, and the cell is occupied by the person's name.

Register Example


Once the user was sucessfully authenticated, his name appears in the place s/he has chosen.

Back to the Table of Contents

  Managing Events - Admin Interface

Event Index

Event Index Event Management is accessible through <baseURL>/admin/ URL. This page will show a list of current events defined (as can be seen in the image to the right, click on it to see a full image).
Events will show in each defined category.

The Event Index table shows the following information:

  • Event Name - displayes event's name
  • Event Title - displays event's title
  • Open for Registation - Yes/No field indicating if event currently allows registration
  • Multiple Registration - Yes/No field indicating if event allows to register more than once.
  • Regstration Stats - Numeric value indicating how many places in the event are taken, out of the total available
  • Actions - Four links that allow control over the event: View Edit Audit and Delete

Back to the Table of Contents

Navigation

Nav Menu Each page in the admin area will display the links displayed in the image (right), at the top of the page, on the right hand side.

  • New Event - Opens the new event dialog
  • Edit Categories - Allows editing of event categories
  • Event Index - will redirect back to the Event Index Page

Back to the Table of Contents

Adding & Editing Events

Clicking the "New Event" link, or choosing "Edit" will lead to this dialog. It is similar for both Add and Edit. Differences between the two action will be discussed at the bottom of this section.

The dialog is displayed in 4 boxes, described here separately, but in reality display together on the same page:

General Properties General Properties
These are the basic definitions of the event, all mandatory:

  • Unique Identifier - this field is the main ID for the event. It must be in English, and alpha-numeric, with no spaces or special characters in it.
  • Event's Title - This text will be used as the title when displaying the event. Should be as descriptive as possible.
  • Event's Category - list box that assigns the event to a category. See here for more on categories.

Registration Options Registration Options
This section deals with all aspects of Registration, and it divided into two parts:

    User Registration Options
  • Event is closed for registration checkbox - allows closing the event for user registration. You can re-enable registration be removing this check at a later time.
  • Participants can register up to X times - This will define the amount of times a user is allowed to register in the event. Zero will allow unlimited registration, any other positive number will limit the user to that amount.
  • Participants are allowed to delete themselves - This option does not work at this time.
  • Event Admin's Email - Email address that will be displayed in error messages (like when trying to register too many times). Usually the email of the person in charge of this event.
    Registration Dialog Options
    When the user register s/he will presented with a pop-up window that will ask for registration information. This section control options for that window.
  • Title - Text string to be displayed in the window, prompting the user to provide login information.
  • First Field Name - Title to put by the first input field in that window.
  • Second Field Name - Title to put by the second input field in that window.
  • Second field is a password - If checked second field will be displayed as a password, and typing in that field will not show the letters typed.
  • Use Authentication Function - This will assign which authentication func. to use to verify user's credentials. See discussion of Auth Functions

Time Related Definitions Time Related Definitions
This section is at the heart of the module. It allows definition of a repetative event of the following format: Each event will repeat a few times, every X days. In each such event you (may) have multiple sessions, that occur in set intervals, and each session can have a set amount of places, where one place can allow for 1 or more people. (Like in a class that has 10 computers, where 2 students will sit at each computer - allowing for 20 places.)

Lets see if I can make it clearer while explaining the dialog to the right:

  • First Event will start at: - Defines the date/time of the first event. All other times and events are calculated as set intervals/jumps from that time.
  • Events will... - This defines how many times you want the event to occur, with the interval of days between each event. Say you have 3 classes on Sunday, Tuesday and Thursday, you'd want to repeat 3 times evey 2 days. (assuming the date/time above were set to the correct time for Sunday).
  • Each Event Will... - This divides the event into sessions within the day. You may have multiple sessions in that day, each with a defined length, and with a defined break between them. Say there are 4 lessons, each taking 1 hour, then half our break (and a new lesson starts), then fill in: "Repeat for 4 sessions... 60 minutes, 30 minutes break". (Again, base time for these calculations is the time defined above. Also, note that the module will allocate places for each session in the event.)
  • In Each Session: - this defines the number of places in your session, where 1 place can allow for more than one person. (Again, for the event where you have a lab with 10 computers, and you want to seat more than one person near each computer.)

    A Little Math:
    {Places in 1 Session} = {Num of Places} x {Num of Persons per place}
    {Places in 1 day event} = {Places in 1 Session} x {Num of Sessions}
    {Places in the whole event} = {Places in 1 day event} x {Num of days event repeats}
    (Now imagine you'd have to do it manually...)

HTML Definitions
This section allows the definition of a page header and a page footer (See this image) that will display at the top and bottom of the event page. The text can contain HTML code, like lists or tables, and will be displayed in a framed box at the top/bottom accordingly.
The header/footer are used to display information about the event for the registering users, like terms, limitations and instructions.

The "Commit" button at the bottom of the page will save changes made to the event.

Back to the Table of Contents

Edit Dialog

The Edit Dialog allows editing of an existing event, and is essentially similar to the Add dialog with the following differences:

  • The dialog title displays the event title with two links that allow to View and Audit the event.
    Edit Title
  • The Unique Identifier field is not editable. This field is set once when the event is added and is not allowed to be chagned.
  • Some Time-Related Definitions will be disabled only if users have already registered to the event. This is due to the fact that changing these fields after users are registered will shift registered users to slots others than where they registered in the first place. The disabled fields are: Numer of sessions per event, Numer of places per session and Numer of people per place. All other time fields are allowed to be changed.
    A message explaining why the fields are disabled will appear under the Time-Definition box:
    Disabled Fields
  • The button at the bottom of the page will change from "Commit" to "Update" to indicate updating of an exsiting event.

Back to the Table of Contents

View Event

The "View Event" link appears both in the index table in the "Actions" section for each event, and in the "Edit Event" dialog.
It will redirect to the page displaying the event, and allowing for user registration. This is comfortable if you want to review the event and check how it will look to the regular user.

Back to the Table of Contents

Audit Event

Event Auditing allows the administrator to manage registered users, using an easy graphical interface to move users around the event, or delete them from the event.

The admin can reach Audit mode by following the "Audit" link in the Index Table or from the Edit Dialog. Once in that screen, the admin is displayed with the event layout (similar to what the user sees). However, in this screen the admin can perform changes regular users cannot:

Swithing between the modes:
There are two audit modes that are toggled through the botton which displays in the top middle. Pressing the button will change between the modes: (back and forth)

Move Mode
In "Move Mode" the admin can move a user from the place he currently occupies to an empty place. This is done by clicking the user's cell (which will turn blue), and then clicking the destination empty cell (which will turn green). A popup window will ask to verify the move:

Moving a user

Pressing OK will verify the move, Cancel will abort it.
Also, if you've chosen a user to move, you can abort the move by clicking the cell again (will turn off the blue lighting), or by chosing a different user (the new user's cell will light blue instead).

Move Mode
Delete mode is similar, but has only 1 step. First toggle to del-move using the button. Then simply click on an occupied cell, the cell will light red, and a popup window will appear to confirm the delete:
User Delete

Remember that delete operations are permanent once confirmed.

Back to the Table of Contents

Delete Event

An even can be deleted, along with all data associated with it, meaning it's cnnfiguration and all registration information will be permanently deleted from the database.
Delete operation can be performed by pressing the "Delete" link of a specific event in the Events Index. The action will be confirmed by a popup dialog.

Back to the Table of Contents

Category Management

Categories allow events to be assigned to a predefined topic / categories. It's easier to manage and view events in this manner, since it's generally easier on the admin and end-user to see a categorized list, and also, it allows to show the end user a list of events for a certain topic/category only.

Category List You can manage categories easily by clicking the "Edit Categories" link in the Navigation Menu. A dialog window will appear (see right).

The dialog is simple:

  • Use the top links to navigate the dialog
  • Use the "Close Window" link at the bottom to close this window
  • Use the "New Category" link to add a new category
  • Use the "Category List" link to return to the list.
  • Use the "Edit" and "Delete" links to perform these actions on each category.

Back to the Table of Contents