[CompInaBox-discuss] CIB mid-summer update...
Brought to you by:
ericnielsen
From: Eric D N. <nie...@MI...> - 2006-08-01 14:03:48
|
So I've been pushing ahead with the Ruby on Rails rewrite/redesign of CompInaBox. I have rudimentary functionality for competition setup (levels, styles, events, dates, contact personal, etc) and I'm working into the registration process. I've been getting a little bogged down with some of the issues involved with merging the per-competition databases with the central database, but hope to have that resolved soon. (More details on the current issues below, near the end.) I am planning to extend CIB to NDCA competitions over the fall (once I get the collegiate needs taken care of). I have a committment for a Feb 2008 competition. I'll be attending a Ruby On Rails training course next week, I hope that will help me be even more productive. Current design issues: 1. Because I've merged all the satellite DB's into the central DB under the new design, a few of my "solutions" from before don't port very well. I'm currently fighting the most with couple management. A. Instead of a couples (id, leader_id, follower_id, ...) table, I'm moving towards a "registrant_entry" table (id) coupled with a "registrant_entry_membership" (id, registrant_entry_id, person_id, role). Thus couples, team matches, formation teams, and solo exhibitions can all be "registrant_entries" for use in the event_registration table. This makes some queries easier and some harder, but on the whole I like where its going. B. However, at present there is NO non-surrogate key information in the registrant_entry table (ie its only column is the PGSQL SERIAL/MYSQL auto-generate) key. This does make some of the logic needed to create a couple/check for duplicates a little complicated, but it developing. C. The problem, at this point a "registrant_entry" is NOT associated with a competition. In the past, even in the per-competition DB, this was true as well -- a couple without events wasn't considered registered. However, my currently planned "single-user" UI (non-team/studio) has split the "add-partner" step from the "add events to couple" step. Thus "event-less" couples will need to be listed as options for receiving events. This list could start to get long, in the collegiate world with lots of partner swapping. i) Option 1: Add a "competition_registrant_entries" table to hold the active, but possible non-registered couples for a given competition. "New partner" adds to this list for this competition, along with some sort of "Previous partner" select box. ii) Option 2: Add a way to flag "retired_partnerships" have all non-retired partnerships show as non-registered, but registerable couples. iii) Option 3: Some other idea.... Eric |