Page MenuHomePhabricator

👩‍👧 MVP for partial blocks (block a user from pages only)
Closed, ResolvedPublic

Description

Story 1: Admin can prevent a user or IP from editing one or more specific pages

  • On Special:Block, add a section under the username/IP input box for Type
  • The options should be two radio buttons with labels and help description text.
  • The top radio button, which should be selected by default' should read Site-wide block. When a block is saved with this selected, the block should behave exactly as it does today.
  • The second radio button should read Partial block. When selected, a TagMultiselectWidget OOUI element should allow for admins to type up to 10 pages from which the user should be blocked from editing.
    • Page blocks can only be set for existing pages.
      • Validation should occur in the input field or via error message when the "block this user" button is pushed — whichever is simpler
    • Pages can be from any namespace, the user must type in the namespace and colon (e.g. Template:Foobar)
    • If a page is moved, the user should still be blocked from editing (e.g. block by page ID, not page name)
      • Only one block per user (like it is today) — to update the block, admins will need to modify the block.

Story 2: The block is logged and visible on wiki

  • Block logs
    • Should display everywhere the current block displays: user page, Special:Contributions, Special:Block, and Special:Log
    • Log should include TIMESTAMP Admin-who-blocked (t|c|b) blocked BadApples (t|c) from editing the page(s) Foobar with an expiration time of N (reason) (unblock | change block)

Story 3: When the user attempts to edit the page, they should be notified.

  • When a user attempts to edit an applicable page, they should see a new type of block warning message which include information on their block
    • reason
    • expiration
    • blocking admin
    • Modeled off of MediaWiki:Blockedtext, information that they are only blocked from that page, but can edit the rest of the wiki. (copy tbd)
  • Should appear:
    • For all supported editors on desktop web
    • For all supported editors on mobile web
    • API edits should also return an appropriate error message
Wireframe

block-user.jpg (1×1 px, 175 KB)

Related Objects

Event Timeline

TBolliger created this task.
TBolliger renamed this task from MVP for granular blocks (block a user from pages only) to MVP for partial blocks (block a user from pages only).Jun 12 2018, 10:31 PM
Vvjjkkii renamed this task from MVP for partial blocks (block a user from pages only) to tibaaaaaaa.Jul 1 2018, 1:05 AM
Vvjjkkii raised the priority of this task from Medium to High.
Vvjjkkii updated the task description. (Show Details)
Vvjjkkii removed a subscriber: Aklapper.
Vachovec1 renamed this task from tibaaaaaaa to MVP for partial blocks (block a user from pages only) .Jul 1 2018, 5:50 PM
Vachovec1 lowered the priority of this task from High to Medium.
Vachovec1 updated the task description. (Show Details)
Vachovec1 added a subscriber: Aklapper.
TBolliger renamed this task from MVP for partial blocks (block a user from pages only) to Sub-epic: ⚡️ MVP for partial blocks (block a user from pages only) .Aug 28 2018, 6:42 PM
TBolliger moved this task from AHT Sprint 27 to AHT Sprint 28 on the Anti-Harassment board.
TBolliger renamed this task from Sub-epic: ⚡️ MVP for partial blocks (block a user from pages only) to 👩‍👧 MVP for partial blocks (block a user from pages only) .Sep 21 2018, 7:18 PM

The 👩‍👧emoji indicates that this is a parent task.

TBolliger claimed this task.
TBolliger moved this task from Ready to Done on the Anti-Harassment (AHT Sprint 33) board.