Page MenuHomewrite.as

Disable collection's Public setting
Open, NormalPublic

Description

Overview

Allow admins to disable a collection's Public setting so that it doesn't show up on the Reader.

Background

Originally requested on the forum:

It would be useful from an anti-spam/moderation point of view to be able to disable certain users/blogs from appearing on the /read page.

Users

Admins

Implementation

On the admin page of individual users, perhaps on the "Visibility" row for each collection a user owns, add a button that performs this action. Example button text:

  • Mute
  • Disable Public setting
  • Block from Reader

When clicked, this should POST to a new admin endpoint like /admin/collections/mute, which will run two queries:

// Flag the collection as muted
_, err = t.Exec("INSERT INTO collectionattributes (collection_id, attribute, value) VALUES (?, ?, ?) ON DUPLICATE KEY UPDATE value = 1", id, "muted", "1")

// Change the collection's visibility setting to Unlisted
_, err = t.Exec("UPDATE collections SET private = 0 WHERE id = ?", id)

Next, the edit collection page should check for this collectionattribute and, if present, visibly disable the Public option. It should also check for this value when updating a collection and changing the visibility to Public, blocking the change if the value is present.

Related Objects

StatusAssignedTask
OpenNone
OpenNone
OpenNone

Event Timeline

matt created this task.May 13 2019, 1:12 AM
matt moved this task from Far Future to After Soon on the WriteFreely board.May 13 2019, 1:35 AM
matt edited parent tasks, added: T553: User management; removed: T538: Admin interface.
matt moved this task from After Soon to Next Release on the WriteFreely board.Jul 2 2019, 2:36 PM