As an organizer, I want to be able to input basic information about my event and its worklist, so that I can generate an invitation list.
As a WMF staff member, I want the organizer to put in the name of the event (if it has event registration associated with it), so that I can collect data that compares the invitation list to the registration list.
Acceptance Criteria:
- Given that an organizer has the Event Organizer right on the wiki,
- They should be able to access Special:GenerateInvitationList
- Special:GenerateInvitationList should have the following sections:
- Field label: "Invitation list name"
- Placeholder: My event invitation list
- Field label: "Event page"
- Placeholder: Event:My event
- Note: Validation of the proper input of event page will be handled in a separate ticket
- Section label: "Article list"
- Placeholder: Sun Moon House (separated by lines between each article name)
- Note: Validation of the proper input of articles, such as the limit of 300 articles, will be handled in a separate ticket
- Explanatory text, which reads:
- "Enter the names of up to 300 articles that cover the topics of your event. Each article should be on a new line."
- There should be a button: "Generate"
- Field label: "Invitation list name"
- Given that a user accesses a special page associated with Invitation Lists,
- And the wiki does not have Invitation Lists enabled,
- And the user is either logged in or logged out,
- They should see the following message: This wiki does not have invitation lists enabled.
- And the user is either logged in or logged out,
- And the wiki does not have Invitation Lists enabled,
- Given that a user accesses a special page associated with Invitation Lists,
- And the wiki has Invitation Lists enabled,
- And the user does not have the Event organizer right,
- They should see the following message: You are not allowed to use invitation lists.
- And the user does not have the Event organizer right,
- And the wiki has Invitation Lists enabled,
- Given that a user accesses a special page associated with Invitation Lists,
- And the wiki has Invitation Lists enabled,
- And the user is logged out,
- They should be redirected to login
- And the user is logged out,
- And the wiki has Invitation Lists enabled,
- Put a feature flag for the page
Additional notes:
- We want to ask for the event page name for a reasons. First, we need to know the event page name for Special:MyInvitationLists. Second, we may want to limit the organizer to creating one (or at least only a few) worklists per wiki per event in the future, in order to discourage spamming. Third, for logging purposes, we want to ask the organizer for the event page URL. This way, we can track which people in the invitation list registered for the event. In the future, if we provide invitation messaging support, we can track which people who were invited ended up registering for the event. Note that this is only really useful for those events that use event registration.
- For the worklist section, the organizer can add in a total of 300 articles for the MVP. We may expand it to more articles for later, but this covers most use cases and follows best practices for worklists, as shared by Alex. Note that we want to store the worklists indefinitely, since we may later want to do a worklist project.
- If an organizer has already generated an Invitation List for an event, and if they feel that the Invitation List is too short (so they would perhaps like to add more articles to the worklist or to change which articles are in the worklist), we should allow them to generate another Invitation List for the event. However, we may want to limit how many times they can do this, in order to discourage spamming, in the future.
- If the invitation list is not enabled in the wiki, we should show a notice message:
- This wiki does not have invitation list enabled.
- If the invitation list is enabled in the wiki, but the user does not have the organizer right we should show a notice message:
- You are not allowed to use invitation lists
Design
Design Specs