I have uploaded an early release of 1.9.646 to the Downloads page. This new version has the ability to send out Job Assignment reminder e-mails. There is a new action available from the Manage->Swim Meets tab called “Job Reminders”. This action will pull all of the job assignments for the requested meet and send a reminder e-mail to each person.
The MacDolphins are testing this functionality this weekend for our Time Trials on Tuesday and barring any problems, I’ll make it available via the WordPress plugin repository later tonight or early tomorrow. If you want it early, download it and install it manually from the Download page.
Several clubs, including my own, have asked if I would add a feature to send out reminder e-mails to people for the Jobs they have signed up for. Today I implemented this feature and am in the process of testing it on the wp-SwimTeam Demo site.
The Job Reminder e-mail will look fairly similar to a Job Sign Up e-mail and will be sent when the Admin chooses to initiate the action. E-mails can be controlled to limit who receives them based on the Job Duration (Full Meet, Partial Meet, Full Season, etc.). In most cases, the Reminders need to be sent out to the people working the Meet Jobs.
Look for this update in the next day or so after I’ve done a bit of testing with it.
The major feature that I had been working on which I didn’t complete is the ability to generate a Jobs vs. Commitment report. The Jobs module allows each job to assigned some number of credits and there is a setting to set the minimum number of credits each user is responsible for. By default the system will use zero which means there isn’t a minimum. In the latest release, when a user looks at their My Jobs tab, it will show the jobs they have committed to and sum up the credits. If the sum of the credits is less than the minimum, an error notification will be displayed for the user.
Right now this message is only displayed on the My Jobs tab but an administrator will also see it when view selecting the Jobs action for any user from the Manage->Users tab. I had given some thought to displaying the notification anytime a user logged in but have conclude that would be too intrusive. I may make it an optional setting at some point though.
The one thing I haven’t figured out is how to handle a situation like we have with our own team. On our team we ask each family to volunteer four times (four credits) for the season regardless of how many swimmers they have. If both parents are in the system (primary and secondary contacts) right now they would be erroneously flagged if each signed up for two jobs because together, they have met our requirement.
Reporting job commitments versus user is pretty easy and I will do that in the next few days but I have also considered reporting job commitments versus swimmer so that both contacts can be accounted for. In speaking with some teams locally, they require two volunteer commitments per swimmer so that is yet another permutation to account for. In the short term I will likely only report commitments versus users and leave it at that for now and revisit it after the season as there are some other things I need for our season which starts in three weeks: Results, Meet Entries, and some work on WinSwim/Hy-tek interoperability.
This afternoon I uploaded v0.2.482 of wp-SwimTeam. This release introduces the new Jobs module (aka Volunteers). Please back up your database before upgrading as this version changes the structure of one of the tables and introduces two others.
Please let me know if you have any problems with this version. I’ve done a fair amount of testing and I have it up and running on the MacDolphins web site.
The jobs module introduces two new short codes:
Example usage of these two new short codes can be found on the wp-SwimTeam demo site here and here.
There is also a new release of the phpHtmlLib plugin which wp-SwimTeam requires available. This build addresses a minor issue exposed in WordPress 3.0 beta testing.
Hopefully the new Jobs module will be helpful for your team, I know it will be helpful for mine!
I have update the wp-SwimTeam demo site with a preliminary version which includes the new jobs module. I expect I will release it over the weekend at some point. You can see what a sample page or post would look like for a swim meet. From the Administrative perspective, a similar report is available but includes more details (e.g. phone numbers).
I had a chance to show this to the woman who coordinates volunteers for the MacDolphins and she was pretty excited about it. It should make her job much easier and it will also make it much easier for parents to know when they have signed up to volunteer.
I want to do a little more testing on it before I release it but I am pretty confident it is working pretty well.
This past week I have made quite a bit of progress on the jobs module. Everything seems to be working, I just have some polish and testing to finish up before I will release it. The basic job work flow works like this:
- Define a job – title, description, duration, etc.
- Allocate a job to a season or to one or more swim meets. This action connects a job to a specific season or meet and defines the number of positions required.
- Assign job ownership. This can be done by either the administrator or by end users themselves. End users cannot assign themselves jobs which are already assigned to another user. An administrator can change the assignment of a job from one person to another. Job assignment can be performed in couple different ways:
- Full or Partial Season long jobs can be assigned from the Seasons tab.
- Full or Partial Meet long jobs can be assigned from the Swim Meets tab.
- A specific job can be assigned from the Jobs tab.
The Swim Meet Report has been enhanced to include a Job Assignment section and a new short code has been defined to allow a meet specific job report to be added to a page or post easily. The wp-SwimTeam demo site will be updated shortly to show some of the new features.
Over the last couple of days I have finally made some visible progress on the Jobs module. I am still not wild about the term “allocate” but it is the best I have come up so I am proceeding with it.
At this point I am able to define jobs, allocate a job and quantity required against a swim meet and make some refinements of the allocation. I also have the beginning of the assignment to a specific user GUI done but not the backend functionality. I am optimistic that I may finish a first pass this weekend.
Progress on volunteers has been slower than I thought it would be. It turns out that jobs, which is how I refer to the various roles that volunteers take on within wp-SwimTeam, is harder than I thought it would be.
The underlying data is fairly easy to manage but how to present the jobs, associate them with a season or swim meet, and then assign people to fill them has been a challenge. I think the reason I am struggling with this is I am not happy with the terminology I am using. There are three aspects to the Jobs functionality:
- Definition of jobs: Titles, descriptions, duration, etc.
- Allocation of jobs: Jobs are allocated to either a season or a swim meet or multiple meets. The number of positions for each job will vary. For example, the number of timers needed is dependent on the number of lanes the host pool has. You might need four timers one week and then three the next.
- Assignment of jobs: Connecting a name to a particular job. The Lane 2 timer at meet XYZ will be Betty Jones. The Announcer at meet ABC will be Tom Burns.
I am ok with the “Definition” of jobs and the “Assignment” of jobs but I don’t like the term “Allocation” but I can’t think of anything better. If you have a suggestion, drop me a comment!
I had done some work on volunteer management last year but put it aside to focus on other features. I have picked it back up and found that one of the assumptions I had made last fall was completely wrong.
I concluded over the weekend that volunteers is three phases:
- Definition of volunteer roles which are referred to as “Jobs” within wp-SwimTeam. The definition of a job includes the title, description, type of job, duration, where it is needed (home, away, both), and a few other details.
- Assignment of jobs to a season or meet. Some jobs span a season, some are only for a meet. The number of people needed to fill the jobs will differ from team to team and from pool to pool. You might need 3 timers for a 6 lane pool but 4 for a 8 lane pool (assuming each team provides half the timers).
- Assignment of people to the jobs. Once all of the jobs are defined and allocated for each meet and season, people need to sign up (or be assigned) to the jobs. Initially I expect to only implement assignment and will add sign up later.
I’d be curious to know if anyone can think of a scenario that this won’t work for. I’ve got phase 1 completed already and will start on phase 2 this week.
I have not done much work on wp-SwimTeam over the past few months but about a week ago I dusted off my virtual machine (have I ever mentioned how much I love VMware Workstation?) in preparation for the upcoming season. Since I last worked on the project there have been numerous patches for Windows XP (my development area is an XP VM) and WordPress has moved from 2.7 through the 2.8.x releases and is now on 2.9.1.
All new work will be done against 2.9.1 (for now) so I have upgraded WordPress and the plugins that I use in conjunction with wp-SwimTeam. There are two areas where I will focus on immediately – importing results which I never finished last year and volunteer management. I’ll probably finish the portion of results I am working on right now and then move on to volunteer management since we’ll need that functionality in March when the MacDolphins do registration.