Goals
- To provide a single, flexible, and efficient data model and related API which can be leveraged by any sports/league related modules
- To consolidate the functionality of existing D6 league-related modules into a single D7 collection, thus reducing duplication and increasing interoperability of league related modules
- To build a strong foundation of both new and existing league-related module maintainers, building a strong pool of experience to support future enhancements, plugins, features, and support of sport/league related Drupal modules.
Features and Flexibility
The API and data model should be flexible enough to support each of the following: (Please edit the page and add your own generic feature requirements!)
- Multiple sports (Even within the same site)
- League/Conference/Division seperations (and inter-division/conference games if desired)
- Facilities tracking/assignment
- Maintaining 'Team' objects across seasons
- Flexible 'Roster' tracking, and per-game lineups
- both the 'players as users' model used in ULT, as well as the 'players as objects' model used in LeagueSite
- Tracking of team 'admin' in addition to players (and flexibility to support 'player-coaches')
- Per-sport 'positions'
- Both single game and game/set/match structures
- Tracking of both 'exhibition' and 'league' games/results
- Scoring summaries by sport
- Player Statistics by sport
- Amateur/Professional/Fantasy league setups
- Per-league administration and permissions
OneLeague Approach
The following is a suggested breakdown of the development cycle for the One League API initiative. The Phases listed below are not necessarily sequential (though there may be some dependencies) ... please feel free to jump in and contribute to any phase/discussion at any time!
- Phase 1: Define various sport components (Sport, League, Team, Player, etc)
- Phase 2: Define data model and structure supporting the identified components (Determine database tables; entities vs. nodes vs. fields)
- Phase 3: Define API requirements and functions for each of the identified components (i.e. "Add Player to Team" type of functions)
- Phase 4: Develop and implement modules providing the base components
- Phase 5: Define basic Match/Scoring/Results/Standings functionality
- Phase 6: Develop and implement modules providing the base 'match' components
- Phase 7: Define supporting functionality (i.e. Registration, Team Profiles, etc.)
- Phase 8: Develop and implement modules to provide supporting functionality
Comments
Mutliple Sport Site
Can this module be developed in such as way to enable one site to host multiple leagues for different sports and not just a singular sport?
Probably
At this stage, I don't see why not ... Requirement Added.
Drupal 7 and Rugby
I would like to find out if any of the developers on this project would like to make a working module for drupal 7.
I would like to use the gotham girls roller derby league site as a model:
http://www.gothamgirlsrollerderby.com/
and here is the team I want to make the site for:
http://utahrugby.org
I am very interested in finding someone to help with this, so please contact me.
Thanks!
Jan
Module adjustments for single team management
Jan,
I'm not sure what your time frame is, but I'm trying to working out how to adjust the module to accommodate a single team (actually, a rugby team) right now. I'm working with the D6 version at the moment and with CiviCRM on the backend for membership management functions. My goal, however, is to migrate to D7 once all of the modules are ready, including a CRM system more tightly integrated with core. Just send me a message directly if you want to discuss it more.
David
Timelines
While there isn't any code yet, I do have a strong start on the architecture and plans for a league module.
My intent is to start coding the base entities within the next couple of weeks ... I've actually sat down with the intent to start coding at least twice now, but support issues keep getting in the way.