wp-SwimTeam v1.0.514 available for download

A new release of wp-SwimTeam is now available.  This release addresses a number of issues encountered when running on a server with PHP 5.3.5 installed.  This release requires the phpHtmlLib plugin to be updated to v2.6.2.3545 or later.

Make sure you backup your database before installing this update.  This update also fixes some database table issues, deleting fields and columns which have been deprecated.  Please report any issues you find, I have tried to test everything but I may have missed something!

wp-SwimTeam plugin – updated 2/20/2011 @ 18:11
[download#7#image]

phpHtmlLib v2.6.2.3545 available

Update:  Bad link fixed!  2/21/2011

An update to the phpHtmlLib plugin which wp-SwimTeam depends on is now available.  This update addresses a number of issues found running against PHP 5.3.5, the latest release of PHP.  There are number of changes between PHP 5.2.x and 5.3.x which were exposed and have been addressed.  This update is ABSOLUTELY necessary for anyone running on a server which has PHP 5.3.x installed.

wp-SwimTeam plugin – updated 2/20/2011 @ 18:11
[download#8#image]

Bug found – PHP 5.3.x incompatibility

The problem which I suspected was due to a plugin conflict turns out to be a PHP 5.3.x incompatibility.  I don’t have a solution yet because I don’t fully understand what changed but I am working on it.  There is no potential of database corruption, the bug simply fails to load the GUI on any of the Swim Team pages except the Overview page.  This bug only affects sites running on PHP5.3.x, sites running on PHP 5.2.x or PHP 4.4.x are not affected and will operate correctly.

UPDATE

I have identified and fixed the problem.  There is a change in PHP 5.3 which affects how objects of a child class can call methods in the parent class.  The syntax which has worked fine until PHP 5.3 occurs in both the wp-SwimTeam plugin and in the phpHtmlLib plugin so both will need to be updated.  I have found several places where the code needs to be updated to the new syntax requirements but still need to do further testing to make sure I have found them all.

Preparing for a new release

I’ve been working on wp-SwimTeam over the past couple days and fixed a lot of minor issues and a couple of bigger ones and one critical one in phpHtmlLib.  The change in phpHtmlLib is absolutely required to support WordPress 3.0 and later so it will be necessary to update the phpHtmlLib plugin in addition to the latest update.

This upcoming release of wp-SwimTeam is ONLY being tested against WordPress 3.0.x (3.0.4 in my case).  It may work fine with 2.9.x but I do not plan to test it.  This upcoming release also tweaks the database, dropping columns that are no longer used.  This is primarily an issue with the Users and Swimmers table where there were some remnants left from the previous implementation of optional fields.  Make sure you backup your database prior to installing!

The release should be available in the next day or two.

Potential Bug follow up

I had some airplane seat time over the last couple days and had a chance to look into the potential bug thatI posed about a couple days ago.  I have not discovered the source of the bug yet, I am even more convinced it is from a plugin conflict of some sort.

However, in the process of trying to find it I enabled some WordPress debug features and found a bunch of little things wrong with wp-SwimTeam.  Prior to WordPress 3.0 most of these either didn’t happen or didn’t matter and the end user never was exposed to them.  I have spent a fair amount of time cleaning them up as they DO matter in 3.0.x and still have a few more to do.

I hope to have a new release out by the end of the week.

Potential problems with WordPress 3.0.x

I have encountered a problem running wp-SwimTeam under WordPress 3.0.4 on the MacDolphins web site which causes pages to not load completely.  I am not sure what the problem is yet but it seems to be related to another plugin as it doesn’t happen on the wp-SwimTeam Demo site.  It is most evident from the Swim Team -> Users tab where the page content is simply blank.  I hope to have a resolution to the problem in the next day or two.

Flip-Turn – swim results management

A few weeks ago I mentioned that I had started working on a new swim team project.  I am calling it Flip-Turn.  Flip-Turn is a basic PHP/MySQL web application which allows a swim team or swim association to publish swim results on the web in a format that is easy to navigate and view.

Dealing with results has been the last real big hole in wp-SwimTeam and I’ve started working on it a couple times only to abandon it because I didn’t like where it was headed.  Over the winter I had an e-mail dialog where a team was simply looking to store results in a database so they could be easily displayed on a web page.  As I started thinking about this I came to the conclusion that it would be an interesting project to work on and would be an easy way for me to find a better way to manage results.

For the last couple weeks I have been working on Flip-Turn as time permits and I now have a basic demo up and running.  You can see it here:  http://demo.flip-turn.com The demo is pretty simple, it allows a user to upload results in SDIF format and parses the results and stores them in a database.  The results can then be queried based on swimmer, event, or swim meet.  While pretty basic, it works pretty well.

In its current state Flip-Turn doesn’t deal with relay (E0) records but does handle individual (D0) records correctly.  In most cases, what people seem to be concerned with are their individual results so that is what I have focused on.  I don’t anything I have done will prevent dealing with relay records at a later date but for now, I don’t plan to address them.

Wile the code seems fairly robust, I am not ready to distribute the code yet as I don’t have a great solution for initializing the database tables or changes to the tables.  I need to figure something out there – right now I have an SQL script that needs to be run against the database to create the tables.  I used phpMyAdmin to initialize mine.

I fully expect to roll this effort back into wp-SwimTeam as this is something I’ve wanted to do for our swim team for a couple seasons.

Why is my web site so sloooooooooow?

I apologize for how slow this web site has been lately.  I don’t visit it myself too often when I am not actively working on wp-SwimTeam so I was somewhat oblivious to it.  My sites are hosted with GoDaddy and I’ve never really had an issue with their shared hosting service.  It is cheap, easy to administer, and for the low volume traffic I tend to get, more than adequate.

I called GoDaddy this morning to see why my sites was loading so slowly – I am seeing page load times of 30-40 seconds which is just plain silly.  It looks like another web site that I happen to be sharing the “shared” server with is consuming all of the resources.  GoDaddy is going to monitor it and see what is up.  I expect it will remain slow for at least a few days.  Hopefully they’ll figure out what it is and do something about it but they did tell me that if the other site isn’t violating their TOS, there isn’t much I can do about it.  They also suggested I look into a WordPress caching plugin.  I don’t have near the volume of data nor traffic to warrant a caching plugin but if the situation persists, I’ll look into it.

Bleh.  Even on a shared server there ought to be some expectation of “reasonable” performance.  I will continue to monitor the performance and see what I can do about it.

A new project?

Recently I have been working on a new Swim Team related project which at some point I will likely integrate into wp-SwimTeam but for now, it is a standalone application.  Pretty regularly I receive e-mail from people who want to post their meet results online in some form or fashion.  Most of the time these results come from Hy-tek in the form of a ZIP file or a CL2 file.

Generating or posting a static web page with some results on it is pretty straight forward and most swim software can do this in some form or another.  Storing the results in a database and presenting them as part of a web site isn’t something readily available as near as I can tell.  It would be nice to be able to upload a season’s worth of results and allow swimmers and parents to review their times and see the trends.  This is basically what I am working on.

At this point I can import a SDIF meet results file and extract the meet data from it.  I have some other infrastructure complete as well and will begin working on extracting and processing all of the result records in the next day or two.

I’ve based this project on two external PHP libraries.  I am using  the 2.x thread of phpHtmlLib, which I also use for wp-SwimTeam and ADODB.  This is my first time using ADODB and so far, there haven’t been any issues.  I decided to use it because I needed a database abstraction layer and phpHtmlLib has a ADODB data source widget which makes it very easy to present data to a user.