A term you sell and the nights it runs on are one thing, not two. The class page now reads that way: a single timetable, with each date sitting under the run it came from.
- One timetable, grouped by the run. Every date a class runs, under the term it belongs to, with genuine one-offs trailing behind. The calendar lives on the Schedule, where every other kind of booking already is.
- A first date and a cadence, not a list of dates. Setting up a class asks for one date and "repeats weekly until", and you have a run you can sell.
- A run can be any set of dates. Three Saturdays and a Sunday is a run. Add a date and everyone enrolled comes with it at no extra charge, because they bought the term. Remove one and their bookings for it are cancelled, while a drop-in who paid for that night blocks it.
- Say who can teach it. A class nominates its instructors. Un-nominating someone leaves the dates they are already teaching alone.
- Book someone in over the counter. New Booking asks for a date or the whole run, how many seats, and who is attending, which can be someone other than the person paying. No address, no resources, no schedule to fill in, because a seat in a class needs none of them. It reads Booked, Attended, Done.
- A class has its own workspace. Tabbed, with prev and next between your classes, and adding a teacher or a date where the app keeps its actions everywhere else.
