As I continue to work away on Event Groups and Event Management overall, I have realized that what I had implemented earlier was really poorly thought out. The way I had defined events and assigned them to a swim meet really isn’t very useful. The Event model will change quite a bit as I flush this out. It is possible that it will be necessary to delete any existing events and redefine them using the new model. I haven’t completely worked it out yet but that is likely where I am headed. It makes the code too ugly to try and deal with old data that really isn’t used for anything in the new model.
I hope to have a release soon which has the base functionality done since I’ve also fixed a few other odds and ends while I’ve been in the code.
Last night while I was at my daughter’s basketball practice I finished up modifying the Events functionality to account for the new events groups which will allow events to be bundled into logical groups. As I was testing everything and things seemed good to go, I realized that the Drag-and-Drop event re-ordering won’t work correctly.
The DnD re-ordering assumes there is only one set of events so as the events are rearranged they are renumbered from 1-N. This isn’t a show stopper but I will have to come up with a new solution. In the process of playing around with some ideas I have determined that the jQuery plugin I was using has been updated to support touch so I have folded that in and everything which was working still works.
I had hoped to get a new release out this week but that is unlikely to happen at this point. I am not going to release anything until I have the event reordering fixed unless I get a serious bug report in which case I’ll simply disable Drag-and-Drop reordering until I get it working again.
It has taken me a little longer (ok, a lot longer) than I had expected but I have drag and drop event ordering working for the default events. Now that it is working, I need to clean it up and style it. The jQuery Table DnD plugin I found works great – it does exactly what I need it to do.