This is going to be a bit trickier that I thought. I think the link in the
email needs to deliver the uuid/token to a custom registration form.
This hack might work. In your user() function in default.py, add this line:
if request.args(0): form.vars.token = request.args(0)
Then the onvalidation script looks like this:
def my_auth_processing(form):
if db(db.invitation.token==form.vars.token):
return True
else :
return False
auth.settings.register_onvalidation.append(lambda form: my_auth_processing
(form))