theCrag / website

theCrag.com: Add your voice and help guide the development of the world's largest collaborative rock climbing & bouldering platform
https://www.thecrag.com/
110 stars 8 forks source link

Feature request: block user #4064

Open pmonks opened 2 years ago

pmonks commented 2 years ago

thecrag should provide a "block user" function. The way I'd envisage this working is that that blockee would not be able to see the blocker's non-index related content (comments, ascents, potentially photos though that may get tricky with topos and webcovers etc.), and vice-versa.

This is a pretty standard feature for systems that offer any kind of "social media" functions (e.g. forums, public & private messaging, etc.), and is important in allowing people to quickly respond to abusive users of the platform, without requiring (potentially slow) administrator involvement.

DaneEvans commented 1 year ago

How is this not present in any shape or form?

As far as I can tell, you can't even remove someone from your followers list.

l33cuj3s commented 1 year ago

Hi guys

I logged a support request on this issue and was asked to place it here instead. This is basically a +1 for the above request.

Is there a way to block my profile from a single user only?

I've blocked this person on all other forms of social media and they now use theCrag as their avenue to harass me.

This situation applies to a few friends also.

If not - can this be added as a feature request?

Kind Regards Lee Cujes

pmonks commented 10 months ago

Any updates on this? There are some absolute cretins on TheCrag, and being able to block them would go a long way towards improving the user experience.

DaneEvans commented 10 months ago

Pot. Kettle

On Sun, 19 Nov 2023, 5:06 am Peter Monks, @.***> wrote:

Any updates on this? There are some absolute cretins https://www.thecrag.com/climber/damianjovanovic on TheCrag, and being able to block them would go a long way towards improving the user experience.

— Reply to this email directly, view it on GitHub https://github.com/theCrag/website/issues/4064#issuecomment-1817585402, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFIRN4JRVDMZJWWZFDHHLBLYFD2IPAVCNFSM5WSTHUP2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOBRG42TQNJUGAZA . You are receiving this because you commented.Message ID: @.***>

pmonks commented 10 months ago

Thanks for helping to prove my point, @DaneEvans.

scd commented 10 months ago

Please keep this discussion constructive and respectful.

pmonks commented 10 months ago

@scd please provide an update on this important issue. This is table stakes functionality.

scd commented 10 months ago

No further work has been done. What do you mean about 'This is table stakes functionality'?

scd commented 10 months ago

Ok thanks for your feedback.

pmonks commented 10 months ago

@scd "table stakes" are features that are required in order to be considered to have delivered a minimally viable product. For platforms that provide "social" features (forums, chat, etc.), the ability for any user to unilaterally block any other user has long been considered a required feature, since it allows users to quickly deal with other abusive users (whether they also request administrator assistance or not).

theCrag provides some social features, therefore it should also provide a block user feature.

scd commented 10 months ago

Making your account private will achieve what you want. If your account is private then only the people you want to see your personal content will be able to see it.

If you contribute to public forums or add content to the index then this will never be blockable in the way you describe.

pmonks commented 10 months ago

Maybe we cannot support the social functions anymore.

@scd I'd have no problem with that, though others might disagree. These features enable all kinds of bad behaviour (the user I linked above is a great example of this), and they seem tangential to theCrag's primary purpose.

You'd have to consider how to avoid edit wars though - wikipedia might offer some good inspiration on that front as they've been wrestling with that problem for 2 decades.

pmonks commented 10 months ago

Making your account private will achieve what you want. If your account is private then only the people you want to see your personal content will be able to see it.

@scd my profile is already private, but I still have to put up with idiotic comments by other childish users. A block feature would prevent that - it works both directions.

If you contribute to public forums or add content to the index then this will never be blockable in the way you describe.

Why not? Plenty of other platforms with social features work this way.

scd commented 10 months ago

I don't disagree that we need to do more. Disruptive comments in a public forum should be resolved for everybody not just block for one person. There are probably a dozen features we need developing in this area.

You should be aware that we have currently got almost no capacity to do additional development. We are trying to finish off some work we started two years ago and have some very signficant infrastructure issues we are going through.

pmonks commented 10 months ago

I don't disagree that we need to do more. Disruptive comments in a public forum should be resolved for everybody not just block for one person. There are probably a dozen features we need developing in this area.

Absolutely but I think you're missing the time factor. A user being able to block abuse then and there means they don't have to wait around for an administrator to get involved.

You should be aware that we have currently got almost no capacity to do additional development. We are trying to finish off some work we started two years ago and have some very signficant infrastructure issues we are going through.

All the more reason to provide features to end users that reduce the workload of administrators (and yes, I appreciate that developing new features is itself work).

killakalle commented 10 months ago

@pmonks

In the short term you could use your own custom user script with, e.g. Tampermonkey.

image

Here's a sample script (generated with AI). You need to add in the usernames that you want to block:

// ==UserScript==
// @name         theCrag Comment Blocker
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Block comments from specific users on theCrag forum
// @author       Your Name
// @match        https://www.thecrag.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // List of usernames to block
    var blockedUsers = ['username1', 'username2', 'username3']; // Add usernames here

    // Function to remove comments from blocked users
    function removeBlockedComments() {
        var comments = document.querySelectorAll('.comment');
        comments.forEach(function(comment) {
            var usernameElement = comment.querySelector('.climber a');
            if (usernameElement) {
                var username = usernameElement.getAttribute('href').split('/').pop(); // Get the username from the href
                if (blockedUsers.includes(username)) {
                    comment.innerHTML = '<div class="comment-removed">Comment removed by user script</div>';
                }
            }
        });
    }

    // Check for new comments every second and remove them if necessary
    setInterval(removeBlockedComments, 1000);
})();
pmonks commented 10 months ago

@killakalle that's nice, but it only provides half the standard block functionality. Those users can still see my content.

scd commented 10 months ago

@pmonks you can control who sees your content as private account. Your ascents and photos are private and only the people who you follow can see it.

Note that we certainly don't view route and topo contributions as your content. And I disagree that individual comments should be hidden in public forums, I would rather that person be banned from forum contributions altogther.

I think you need to be clearer for us to work out what to do.

pmonks commented 10 months ago

@scd look at every consumer grade platform with social features out there. Heck even GitHub has a robust end-user block function you could draw inspiration from.

scd commented 10 months ago

@pmonks at this point we just need to understand what users are saying is the gap. I just want to clarify when you say 'my content' do you mean my contributions to a public discussion?

l33cuj3s commented 10 months ago

Hi team.

Just lending my support to Peter on this. There seems to be a lot of confusion as to why this feature is being requested, and a lack of understanding as to why it's required. Perhaps this is a good thing as it likely means you've never had occasion to need it on social media sites. However, as theCrag is now (whether intended or not) a social media site, it's time to understand the fundamental requirement for block user functionality. Read more here: https://www.prindleinstitute.org/2023/08/the-right-to-block-on-social-media/

Before it's mentioned again - No! - this is not the same as making an account private. This is not the "fix". The requirement is for an individual user to be able to block one or more individual users. Not a blanket block. Consider the analogy of a restraining order. This blocks one person, not everyone.

The way I envisage the functionality working is as follows:

If I block a user:

And on my side (as the blocker):

I hope this helps in further fleshing out this request.

Kind Regards Lee Cujes

scd commented 10 months ago

@l33cuj3s this is way more specific and helpful. Most of these are already effectively in a users control for private accounts.

I definitely agree that a user should be able to block another user from sending messages to a specific account.

Some of these only make sense if we make wider changes to the site. For example public discussions can be seen anonymously and you do not have to login to see content (eg route grade contributions). I cannot see the point in giving an anonymous user more permissions than a logged in user.

Information that is published in a guidebook should remain equally accessible online (eg first ascent attribution).

The purpose of our public forums is for community discussions. I am not sure what this means if different people see the discussion with different missing comments.

It is going to take a lot of discussion and a long time to get through all this.

I also believe there is a related but different issue of forum quality. There is a growing level of mean, or irrelevant posts which harms the community as a whole. Whilst we have a good process for spam from the non-climbing community we don't have such a good process for dealing with our own community of genuine climbers who are posting bad.

musoke commented 10 months ago

I don't think this has to be completely fleshed out before implementation starts. Just preventing blocked users from sending messages to the blocker would be a sensible start.

For example public discussions can be seen anonymously and you do not have to login to see content (eg route grade contributions). I cannot see the point in giving an anonymous user more permissions than a logged in user.

I see your point, but it is not without precedent. That's how reddit works. At the very least, the blocked user can't stumble upon posts while logged in.

I also believe there is a related but different issue of forum quality. There is a growing level of mean, or irrelevant posts which harms the community as a whole. Whilst we have a good process for spam from the non-climbing community we don't have such a good process for dealing with our own community of genuine climbers who are posting bad.

I would like to prevent notifications from users on a list I control. Then I won't see noise from said users who consistently make forum posts of no value.

scd commented 6 months ago

We have released trial functionality to block users, if somebody follows you that you do not want to. I realise that the block functionality needs to be expanded, but this is the first step. A blocked user means

l33cuj3s commented 6 months ago

Hi Simon

Thanks for releasing the block user functionality. I've just done a little testing.

I realise you mentioned the functionality needs expanding, just wanted to provide my input thus far.

Cheers! Lee

On Tue, 19 Mar 2024 at 08:05, Simon Dale @.***> wrote:

We have released trial functionality to block users, if somebody follows you that you do not want to. I realise that the block functionality needs to be expanded, but this is the first step. A blocked user means

  • The follow linkage loses permissions so you will not be able to see a blocked private users content
  • All queries for accounts that you are following exclude blocked accounts.
  • You cannot see the profile of a blocked account and vice versa

— Reply to this email directly, view it on GitHub https://github.com/theCrag/website/issues/4064#issuecomment-2004987762, or unsubscribe https://github.com/notifications/unsubscribe-auth/BCXZXS64OKY6K7Y2AP3GYCDYY5JJZAVCNFSM5WSTHUP2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBQGQ4TQNZXGYZA . You are receiving this because you were mentioned.Message ID: @.***>

l33cuj3s commented 4 months ago

Hi team

Further to my previous comments on the blocked user functionality, I've noticed that blocked user comments on ascents of climbers I follow are visible to me and display in my activity feed. Not desirable.

Cheers! Lee

On Wed, 27 Mar 2024 at 11:09, Lee Cujes @.***> wrote:

Hi Simon

Thanks for releasing the block user functionality. I've just done a little testing.

  • I notice I can still see the user I have blocked in searches. I can't click into their profile, but they still show up.
  • Let's say I've blocked a user. I climb a route and leave comments. If that blocked user accesses the route, my comments are there. They should be hidden from the blocked user. The blocked user can even leave a comment on my comment, and this displays on my dashboard. This is effectively the same as the blocked user messaging me directly, and is one of the key items this functionality should be addressing (public sledging)

I realise you mentioned the functionality needs expanding, just wanted to provide my input thus far.

Cheers! Lee

On Tue, 19 Mar 2024 at 08:05, Simon Dale @.***> wrote:

We have released trial functionality to block users, if somebody follows you that you do not want to. I realise that the block functionality needs to be expanded, but this is the first step. A blocked user means

  • The follow linkage loses permissions so you will not be able to see a blocked private users content
  • All queries for accounts that you are following exclude blocked accounts.
  • You cannot see the profile of a blocked account and vice versa

— Reply to this email directly, view it on GitHub https://github.com/theCrag/website/issues/4064#issuecomment-2004987762, or unsubscribe https://github.com/notifications/unsubscribe-auth/BCXZXS64OKY6K7Y2AP3GYCDYY5JJZAVCNFSM5WSTHUP2U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBQGQ4TQNZXGYZA . You are receiving this because you were mentioned.Message ID: @.***>