This task involves the work with introducing an upstream implementation to make edit notices available on mobile.
Making these edit notices available to volunteers will happen via two config changes that will happen in T316178 and T316177.
NOTE: thank you to @AlexisJazz and @Xaosflux for all the work they've been doing to write and deploy the [EditNoticesOnMobile](https://en.wikipedia.org/wiki/Wikipedia:EditNoticesOnMobile) which has informed the approach described below.
=== Deployment timing
Ideally, this patch will deployed via backport window on !!10 Oct 2023!! by way of {T316178}.
=== Stories
- As an experienced volunteer who feels responsible for the integrity of a particular page and the content contained within it, I need a way to make people who have taken an action to begin modifying said content on a mobile device aware of information they ought to consider, so that they do not unknowingly subject themselves, or the content they are modifying and/or contributing, to undesirable outcomes.
- As someone who is seeking to modify or create content using a mobile device, I want to know whether there is information I ought to consider before making the changes I have in mind so that I do not unknowingly subject myself, or the content I am modifying and/or contributing, to undesirable outcomes.
=== Requirements
- People need a way to revisit the edit notice(s) they dismissed without sacrificing the changes they have already started making
**Meta**
- Editing interfaces: **MobileFrontend's `source` and `visual` modes**
- Namespaces: **all**
- Platform(s): **Mobile**
- Skin(s): **[Minerva Neue](https://www.mediawiki.org/wiki/Skin:Minerva_Neue)**
- Project/Personal preferences: projects and individual people ought to be able to decide for themselves what implementation of mobile edit notices they see: **A)** the upstream implementation this ticket introduces, **B)** the [EditNoticesOnMobile.js](https://en.wikipedia.org/wiki/User:Alexis_Jazz/EditNoticesOnMobile.js) implementation, or **C)** other, yet-to-be-defined implementation(s)
**User Experience (Logged in + out)**
- Whenever people tap a section- or page-level {nav edit} affordance on a page that has an edit notice set/defined:
-- People who are //logged out// ought to see the full-screen `Warning: you are not logged in. Your IP address...` modal followed by a second modal that contains the page's edit notices
-- People who are //logged in// ought to see the edit notice modal that contains the page's edit notices
- Whenever people tap a section- or page-level {nav edit} affordance on a page that does NOT have an edit notice set/defined, they should not be impacted by any of the changes this ticket introduces
- The edit notice modal ought to be a fixed height and width. If the contents of the edit notice requires more space than the fixed dimensions of the modal allow, people ought to be able to scroll the modal to reveal the content that cannot be shown within one "frame"
-- //Note: the modal itself should remain in a fixed position regardless of whether people are scrolling the content within it.//
- The edit notice modal ought to contain a button that remains fixed to the bottom of it that reads {nav OK}
-- When people tap the {nav OK} button, the edit notice should disappear and people ought to see the editing interface ready for them to start making changes
- If/when people tap a section- or page-level {nav edit} affordance on a page that has an edit notice set/defined within !!TBD!! days of last seeing said notice, they should be taken directly to the editing interface and not see the mobile edit notice modal
-- //RE "TBD time window", see `===Open question` #2 below.//
=== QA
Because of the throttling of notices, you'll either need to find a new page with a notice to test each time you look at it, or you'll need to run localStorage.clear() in your browser console before loading the editor.
=== Open questions
- [x] 1. How – if at all – should we enable volunteers who create and maintain edit notices to decide whether an edit notice is: **A)** automatically shown to people upon entering an editing interface //or// **B)** only shown to people when they explicitly tap a button/link to reveal/show the edit notice?
-- We are going to waiting on introducing the ability for edit notice maintainers/authors to decide the above. Here is a ticket for that eventual work: T316416.
-- In the meantime, we'll seek to learn how/if people use this functionality within the [EditNoticesOnMobile.js](https://en.wikipedia.org/wiki/User:Alexis_Jazz/EditNoticesOnMobile.js) gadget.
-- //This question stems from the idea @AlexisJazz raised in T312299#8076305. Also see T312999.//
- [x] 2. For how long after seeing a mobile edit notice on a pager should people //NOT// see that same edit notice on that same page again?
-- //@ppelberg to talk with @AlexisJazz and @Xaosflux about what they recommend for this "suppression window//
-- Initially, people will see edit notices a maximum of one time per 24 hours. If/when we come to find projects would value this timing be adjusted, we'll do so.
- [x] 3. How – if at all – will people be able to cause the edit notice to //reappear// within an editing interface after already having dismissed it?
-- This initial implementation will NOT afford people to do the above. Instead, we'll consider implementing this functionality in a future iteration in T316417
=== Done
- [x] `===Approaches` are documented
- [x] `===Requirements` are documented
- [x] @ppelberg shares the `===Approaches` on en.wiki
- [ ] Requirements are implemented
- [ ] Announcement is made in Tech/News
---
=== Background
1. Volunteers depend on edit notices to help people who are modifying or creating content avoid making mistakes and causing conflicts.
-- //Note: at en.wiki, edit notices also deliver crucial information like discretionary sanctions information which indicate the policies applying to this page are different to other pages (e.g. you can be blocked for more minor conflicts.//
2. Edit notices are not visible to people editing on the mobile site
3. "2." means there is a growing population of volunteers who miss out on important instructions and information