Rules to handle sign-ups to bookable training courses
Hi Rules people and fans,
I'm looking for advice, ideas and pointers regarding the following scenario that I'm looking to "solve" using rules.
The website in question is for a training company who runs bookable public courses in a variety of different subjects. As an aside, the combination of Signup, Signup Status, UC Signup and UberCart provides some of the functionality that we're looking for, but not all. Here's what we want to do:
-
Allow people to "sign up" for a training event (don't have to use the Signup suite of modules for this if there is a better way),
-
Allow people to choose a payment method (cheque, invoice, PayPal) and, if choosing PayPal, whisk them off to get their payments,
-
Record how many people sign up and monitor their payment statuses,
-
Once 6 people have signed up, there are then enough to guarantee that the course will go ahead, so, at this point, emails should be fired off to the trainer, the other delegates and an arbitrary email address (the person who prints the manuals for the courses) and the venue to confirm the booking
-
If, a week before a course, less than 6 people have signed up, then the course is normally cancelled; a range of other things happen at this point, including notifying the trainer and the venue and rescheduling the course. Handling people who have already paid by manually booking them onto a rescheduled course is fine, unless there is an easy way to make this happen
There is no Rules integration for Signup, so I figured, either I need to write that or I need to find another way. I'd like to open this discussion as a sort of case study; I'll document our progress through this so people will be able to see how the scenario progressed.
Initially, I'd like some feedback and suggestions on how experienced Rules people think we should proceed.
Regards
Patrick

Need to pass variable to form during page redirect. Best way?
I've had no response to this post, but have progressed somewhat since my original post. I've also hit a snag so I'm still looking for help if anyone is willing?
Here's what I've done and how I've done it so far
From above...
1. I needed to "allow people to "sign up" for a training event"
A delegate comes along and signs up for a course by completing a node. Once the node is submitted, it:
a) Becomes un-editable (using Node Access module) by original author and un-viewable by anyone but the author and site admins
b) Emails the site admins to say that it has been completed
c) Emails the author (node contains an email field) to thank them for their booking
d) Loads the original node (which contains the course they signed up for)
e) Locates a field in that node called "No. of delegates" and, using Custom PHP increases it's current value by 1
f) Redirects the author to another page which contains a PayPal button
The bit I'm stuck with is that the PayPal button uses the standard PayPal forms and I want to pass data to it (name of and cost of the course) and embed these into the PayPal form. For example, at present in the form for Cost, I have:
<input type="hidden" name="amount" value="<?php print $cost_of_booked_course ?>">What I really could do with help with is figuring out how to pass in the PHP variable (which is just an Integer field in the original content type).
Any help would be greatly appreciated.
Regards
Patrick