Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Transfer Ownership Feature #46

Open
dustball opened this Issue Dec 2, 2011 · 0 comments

Comments

Projects
None yet
1 participant
Contributor

dustball commented Dec 2, 2011

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.
  8. Code will be written that will force the event to need re-approval, but this code will be commented out for now.

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

Note this feature can be used any time -- before OR even during an event. The latter is useful when you want to officially "pass the buck".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment