mlaa / cbox-mla

GNU General Public License v2.0
2 stars 3 forks source link

Follow / Block Tech Specs #286

Closed terrainsvagues closed 8 years ago

terrainsvagues commented 9 years ago

Following is a filtering model based on already discoverable content. Filters into "People I'm Following" in Members page and on homepage. Blocking (including direct messages) is a critical component; can be aggressive & simple, but must be robust.

terrainsvagues commented 9 years ago

See #285 and #278

chriszarate commented 9 years ago

Over time, we've settled into Nicky's notion of "a filtering model based on already discoverable content" and have built 3.0 around it. Further, we've coalesced around allowing users to send messages to and @-message anyone, with simple limits—divorced completely from contact/follow relationships.

For iteration 1, I see two options. The first seeks to implement a fairly traditional model; the second seeks to solve privacy by aggressive reducing visibility into relationships.

Option 1. Traditional

  1. Following is a one-way relationship. The person being followed does not have to give approval, but receives notification of being followed (with a link if they would like to block the person).
  2. Following is a public relationship. Profile pages will show both who you are following and who is following you.
  3. A block button will appear next to each person on the list of people who follow you.

Option 2. Aggressive privacy

  1. Following is a one-way relationship. The person being followed does not have to give approval and does not receive notification of being followed.
  2. Following is a private relationship. No one besides you has visibility into who you are following. There is no visibility by anyone at all, including you, into who is following you.
  3. Blocking is still available to block messaging. Block buttons likely only appear in messaging contexts.

Let's discuss in Slack/meeting.

No matter which option we choose, JR can proceed with these immediate actions on dev:

modelm commented 8 years ago

bp-block-member (www.philopress.com/products/buddyblock/) and buddypress-followers (https://github.com/r-a-y/buddypress-followers) are installed and working. I added the follow/block buttons to the member directory. If we want to change specific parts of the functionality as we progress, let's handle that on a case-by-case basis rather than keeping this open.