Jump to content

Calendar system question


kobryan

Recommended Posts

I know this is going to be a long project but it's something I've wanted to try. I know I want to make a larger project than most new PHP programmers would try and take on. I'm looking for some suggestions on how to accomplish the following, the best possible way. Do I need to look into using some type of framework like cakePHP or something similar? I do have a bit of knowledge and have followed some tutorials for making login systems, user registration, profile's with user being able to edit pages, profile comments, form submission with emails and database submissions.

 

What I would like to do is create a place on my site where users can create family profiles to book appointments with my business. There are often times multiple family members are setting up appointments for the same time since I allow multiple people for each time slot so I need to allow each family to be able to setup multiple family members all to be able to be controlled by a single user. Example.. User 1 creates profile and adds family member's John Doe and Jane Doe to his profile so he can book appointments for both members of the family from 1 user account. 

 

The admin section would allow me to create a appointments for any person any time for any family member, edit existing appointments, add, remove, edit users, message system, emails, SMS reminders. It will also allow me to see the master schedule of all appointments and edit, remove, add what times are available for appointments. The way the appointments work some pay per appointment and some pay for a bunch at a time. For those that pay for a bunch at a time, I would like it to track how many they have used and show it on the calendar. If they are pay per appointment then it could just say something like PPA on the calendar. 

 

The user page will allow them to see what appointments are available, to book. Add and edit family members to your account. Send/receive messages to me, possibly to other member but unlikely. Reminders will show up the day of appointments, and you can be setup for SMS or email reminders. SMS and Email reminders can be delivered to each family member or whichever is setup for their appointment. Users will need to be able to see how many appointments they have left before they need to purchase more appointments. If the user pays for appointments in bulk they will also show on the calendar how many they have left for each family member so they can track their lessons available. 

 

Non user page, or when you're not logged in will just show available appointments and a place to register, login or email me.

 

I may have missed some things but i think you get the point of what I'm trying to do and you don't really need to know 100% of what i'm doing to give me advise.

 

I know this is going to be a large project with a lot of hiccups along the way so I wanted to ask for some guidance and direction because I don't have a problem trying to work out the code and take the time figuring out how to make it work. I just wanted to make sure that I wasn't so far into this and realize that I should have gone another route when I get stuck and ask for help.

 

Thanks for any help and for reading my long message.

Link to comment
Share on other sites

These are broadly the steps I take when embarking on a project

- Define all the processes that will be required for now and also the longer term (wish list).
- Define all the data that will be required to support those processes.
- Construct a relational data model.
- Design the processes and validate that the model is viable for the processes (ie required data is there and accessible)
- Then start coding with confidence that you won't need considerable rewriting.

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.