hackerdojo/hd-events — Issue #46: Transfer Ownership Feature
Author: dustball
Created: 2011-12-02 20:52:50+00:00
State: open
Labels: Feature

The purpose of this feature is to let one member transfer ownership of an event to another member. Currently, if a member would like another member to "take over" an event, the first member has to cancel/delete their event from the schedule, and the other member must fill out a new event application. This is extremely cumbersome for multiple reasons (must time operations correctly, the new event must be approved again, etc.)

Proposed:

1. A button "Transfer to another member" appears on the Event Page -- only if you are looking at your own event, or, are event staff
2. Clicking the button asks you to enter another member's username
3. If the member doesn't exist (verify from http://domain.hackerdojo.com/users) give an appropriate error message
4. If the member DOES exist, tell the user "An e-mail has been sent to [username] asking them to accept the transfer. Please remember you still have responsibility to host the event (or cancel it) until the other member accepts the transfer."
5. An e-mail gets sent to [username] explaining the situation, and provides two links: accept, decline
6. 'Decline' will send an e-mail to the original event owner explaining the event has been denied
7. 'Accept' will update the event to the new owner. The original owner will be notified. The event will not need re-approval.

Implementation:

* No extra storage required for this, no extra fields
* The e-mail with 'accept' and 'decline' links have the event ID embedded in it, as well as a hash of the {event id + secret + 'accept' or 'decline'} and the "transfer-to" username
* This way the event system doesn't need to keep track of Transfer requests -- it sends them out blindly, and "trusts" (but validates!) the input when people click the links