Active
Project:
GolfPal
Component:
Documentation
Priority:
Critical
Category:
Task
Assigned:
Reporter:
Created:
3 Apr 2008 at 19:16 UTC
Updated:
21 Mar 2011 at 14:17 UTC
Jump to comment: Most recent file
I need to solidify a data model that will be used by this module.
The first feature I would like to implement is score tracking. In order to achieve this I will need a "Hole" table and a "Course" table. The Hole table will have a many to one relationship to the Course table. Each record in the Hole table will represent a hole played for a given user on a given course. The Course table will serve as a growing database of courses played throughout the community.
I am open to any suggestions for the model. :)
| Comment | File | Size | Author |
|---|---|---|---|
| #11 | golftracker.zip | 17.08 KB | Dennis-1 |
| #11 | golftracker_tables_mysql_DB_.sql_.zip | 4.53 KB | Dennis-1 |
| #4 | GolfPalModel.zip | 719 bytes | nickgs |
| #2 | GolfPalModelv2.zip | 6.48 KB | nickgs |
| #1 | GolfPalModel.zip | 5.69 KB | nickgs |
Comments
Comment #1
nickgs commentedI put together an initial design using MySql workbench. (see attached) I am sure there is a lot missing from this model. I am not sure if I should store the hole information in a separate table OR keep it in the hole table which will also contain the individuals score.
By next week I would like solidify this model. Any idea's are welcome.
Comment #2
nickgs commentedOk, I have updated the model (see attached) and began implementing the module. I am learning alot about module development as I do this. A challenge I am currently pondering is how to handle adding hole information to a "Golf Course" node type. Using the form API without relying on javascript (which I may do) seems like it may result in a clunky interface. I will probably post my findings in a separate post.
Comment #3
oadaeh commentedCan you export that data in some other format? It's a Windows only program and I'm a Linux only person.
Has there been any progress on this since your last posting almost two months ago? Would you like help with it?
My initial thoughts on the database design (keeping in mind that I haven't seen your model, so this may mimic it) is that there would be a many to many relationship between each user and each hole of each course (not including the course/hole data, only the user's play data), and a many (9 or 18) to one relationship between each hole and it's respective course. (If you really wanted to get fancy, you would have a many to one relationship between each course and it's club, as some have more than one course.) There is probably more to it than that, but I'm just going off the comments you've made in this issue.
I don't know the mathematics for handicapping, so I'm at a loss there, but I could certainly help with the other stuff. I assume you're going to include handicapping.
Also, would you mind contributing what you have already developed to CVS so that I may peruse it?
Thank you.
Comment #4
nickgs commentedHello oadaeh.
My time has been spread thin, my free time has been spent mostly on the course lately... :)
Attached you will find my data model in SQL format. I do have a basic node module developed for storing golf courses which I believe is the first step in getting this module developed. I will check in some of this code today. I am glad to see that you are willing to help out. I can definitely use another developer to bounce idea's off of and develop with!
This model is far from perfect but should provide a basic framework to build upon.
Thanks.
Nick
Comment #5
oadaeh commentedAaaaah! That's better. Now I can read it. :^) I'll examine it later.
My time gets spread thinly as well, but not with playing golf. Having four sons who are interesting in the game has gotten me back into it, so I will probably be playing more in the future. :^)
I look forward to seeing the code to see what you've gotten done so far.
Are you planning on starting with a Drupal 5 compatible release, or Drupal 6?
Comment #6
nickgs commentedCool!
I have committed the code I have so far to CVS. I started targeting Drupal 5 due to the fact that I would like to use the existing calendar module although it looks like they have a beta version available now so I may want to target Drupal 6.
Once you get a chance let me know what you think.
Thanks.
Nick
Comment #7
Dennis-1 commentedI don't want to hijack this project or anything, but I have been working on a golf score tracking application myself. It's currently not 100% ready to use as there is still no reporting feature available (Kinda important). But I do have an interface ready which allows you to modify user preferences, enter new course information and entering scores. So it's almost there. I am totally new at module development so the module isn't ready to be distributed. If anyone would like to check it out it can be found at www.golfcourseoverviews.com. You must have an account to use it though so create one or you use trackerdemo/demotracker if you want to see it before creating an account.
If anyone would like to help me make this a viable release...let me know. As of know it is built for Drupal 6, but will start investigating what would be required to make it work in drupal 7 as well. Any and all help will be appreciated, from testing to developing!
Thanks,
DEnnis
www.golfcourseoverviews.com
Comment #8
nickgs commentedHi Dennis,
Very cool work! Much further then this project is. Unfortunately I have not spend any real time looking to get the GolfPal module off the ground. On a brighter note, I have been spending large amounts of time learning the ins and outs to many area's of Drupal. I think alot of this can be created using the CCK, Views, and some good theming. This looks like what you are working on at golfcourseoverviews.com. I would love to see this module evolve into a package that creates these content types, views, and templates by simply enabling it.
I have spoken to many people over the past year+ that are interested in using a module like this. Most of them did not have any module development experience.
I like the idea of golfcourseoverviews.com but it does need some work. If you would like to collaborate and contribute to this project I welcome you with open arms!
Thanks.
Nick
Comment #9
Dennis-1 commentedHey Nick,
Thanks for checking it out! I created the score keeping module using the forms API. It still needs a ton of work and would gladly share/collaborate. If you would like a copy of the module to see the actual code let me know. It is packaged up as a module, unfortunately it will not create the db tables as of yet, so they still would have to be created manually. Being completely new to module design for Drupal it's been a real learning experience. I just wish I had more time. With golf season around the corner I plan on devoting more time over the next month to try and get the reporting features working.
Anyway... where do we go from here! :)
Thanks,
Dennis
Comment #10
nickgs commentedCool. We can go in a few directions. I gave give you commiter access and you can start pushing code into the module. If you are not very familiar with GIT you can send me the module offline (or attach it to this discussion), I can do a little clean up and get it commited.
I am very familiar with module development and get can the .install files in order with the schema. This is perfect time being that I really want to use this for the upcoming golf season, it's gorgeous here in NY today... so we don't have much time!! Although I don't have a crazy amount of time to commit to this project if we can make some progress this would most definitely inspire me to push forward!
If you want to send me the module my email is nickgs1@gmail.com.
Look forward to getting this going!!
Thanks.
Nick
Comment #11
Dennis-1 commentedHey Nick... I don't mind joining the golf pal initiative. However, the module has been designed as golftracker. I wouldn't want to have to maintain 2 different versions of the same module as it's already (sorta) live on my prod site. Would it be possible to keep it as golftracker? May sound petty... and although the coding is primitive (I sometimes feel like I wrote it in crayon cause I'm so new at this) I'm still rather proud of it! I am still attaching the code... not really a deal breaker...just pride! lol
I've aIso extracted the 5 tables being used so you could import the sample data (theres a little junk data like incomplete courses and stuff but there's not alot anyway) if you would like to.
p.s. A HUGE thanks goes out to http://drupal.org/project/examples as it was used as a skeleton for the module.
Comment #12
Dennis-1 commentedTo anyone else who donwloads this module and wasn't following the discussion... it will install in Drupal 6 but will not create the tables in your db and this module is far from finished. It will let you modify user settings, input golf courses and enter scores using the data entered from the golf courses. It does not have any functional reporting though, so you can't view your scores and the only way you can see the course data is by choosing the course on the scorecard.
Comment #13
nickgs commentedAwesome, thanks Dennis! I will play around with the code this week. I have no problem changing the name of the project... :)