Extension:MassMessage/Design

Design notes.


 * http://legoktm.instance-proxy.wmflabs.org/wiki/Special:MassMessage
 * https://gerrit.wikimedia.org/r/#/q/project:mediawiki/extensions/MassMessage,n,z

Bugs

 * Need a way to create an account on each target site, can this be done via update.php? - 74938 ❌
 * Now we don't, we can just create it on demand. --Lego
 * Ability to restart a job that failed for whatever reason
 * localized messages need work
 * post-form submission shouldn't say message was sent; should say message is queued - 75293 ✅
 * page-list is a hyphen abomination
 * Any suggestions?
 * form is ugly
 * message preview collides a bit with form
 * Note that right now it's just a  there. --Leg
 * intro message collides a bit with form
 * Looking at something like Special:Block, there's a distinct border around the form. I'll look to see how this is generated. --Lego
 * It's called a legend apparently, and is a simple-ish fix. Screenshot . --Lego (✅ in 75550)
 * grayed out "send" button is annoying; just don't output it if it can't be used - ✅ in PS7 of 75550
 * use &section=new - 75299
 * This involves using EditPage (see how the API does it ), and it looks much more complicated than the way it currently gets done. Might be worth faking the edit summary. --Lego
 * Fake edit summary in 75276 - ❌
 * on confirmation screen, show spam list targets (or summary of targets or truncated list of targets)
 * on confirmation screen, flag/warn about unclosed tags, unclosed HTML comment, etc.
 * should be a large, scary warning
 * 

Enhancements

 * Ability for user to provide a page that is translated, and automatically send the message in the wiki's default language.
 * Hrmmmmmm.
 * Some wikis (enwikinews) will try to block the bot since it doesn't respect
 * actual enhancement request here is: provide means of opting out of deliveries
 * (hidden) category is probably sanest implementation -- 78344 depends on core 78343
 * title suggestions for page input list (similar to search field, yay autocomplete)
 * don't require a separate screen to check whether invalid page list was entered (ajax y'all)
 * Do we need a checkbox for global delivery? Just use whatever the input list is and check user-rights 78047