Over at #325237-2: Allow users (even anonymous) to cancel signup via secure URL, Sid_M raises the point about saving canceled signups into another table. I could use that functionality myself. So, either signup should do this itself, or at least it should provide a hook for other modules to do so.
Maybe it's just a question of changing the order of operations in signup_cancel_signup(). Currently, we delete the record first, then invoke hook_signup_cancel(). Arguably, we should invoke the hook first to give other modules a chance to do whatever they want with the {signup_log} record, and then actually remove it. I'd like more input on this before adding Yet another hook (hook_signup_pre_cancel()?).
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | 346810_hook_signup_cancel.2.6--1.patch | 1.27 KB | dww |
| #3 | 346810_hook_signup_cancel.2.head_.patch | 1.27 KB | dww |
| #2 | 346810_signup_cancel_invocation.patch | 1001 bytes | stborchert |
Comments
Comment #1
dwwAfter a brief discussion in IRC, it seems we all (myself, add1sun, and EclipseGc) agree that this is basically a bug in the invocation of hook_signup_cancel(). We should just flip the order of operations in signup_cancel_signup() so that we invoke the hook first, then destroy the data.
Comment #2
stborchertHey.
Should it be that simple?
Comment #3
dwwPatches for HEAD and DRUPAL-6--1. The 6--1 patch applies with an offset (and works) in DRUPAL-5--2, too.
Comment #4
dwwCommitted to HEAD, DRUPAL-6--1, and DRUPAL-5--2.