building a calendar of events - not trivial

I wanted to build a calendar of events, record when they happen and where and cost and some details, and publish for people to see. I also wanted to allow a small group to login and confirm their attendance, and later on report on a short 5 lines on the event.

I thought it was trivial as I can make a table of events, a table of people, and I can make a HBTM relationship, or even Has many through. What is the issue now is that the event are only a few (20) that repeat each month, at regular interval (like first thursday of the month) with occasionally a shift date if there is a holiday.

suddenly, I don't have a list of event, but conditions for an event to happen on a given day, and I don't know how to make a system for people to confirm their participation, or even display the list. The date is now part of the logic.

I thought maybe I should first use a system to create the next 20 days of events by populating a list with the logic, and then get the people to confirm their participation, not sure I am on the right track

anyone did this before? There is probably a simple answer but I can see it...

thanks oz