As per this thread: https://drupal.org/node/226678, we need a 'report spam' link for forum posts. I have created a patch that I will attach to the first comment. This patch is very simple. It adds a new permission 'report posts' and adds a link to the 'edit' and 'reply' links on comments using hook_comment_view_alter(). The link itself points to the webmaster's queue, passing some default values in the URL, so that the user can simply click 'submit' to report the post if they want. Or they have the option to edit the values before submitting.

There is also a new permission, 'report comments' required for users to be able to access the link.

Comments

jaypan’s picture

jaypan’s picture

Status: Active » Needs review
StatusFileSize
new1.15 KB

Setting Status to 'needs review', which hopefully will run tests on the patch.

dww’s picture

Status: Needs review » Needs work

There are no automated tests for the drupalorg module, see #1974400: Add some simpletests and enable patch testing for the drupalorg queue for more on that. But setting to 'needs review' is still a good idea to get the maintainers to look at it. ;)

At this point, we're mostly focused on the D7 upgrade of Drupal.org, but small useful changes like this might still be deployable.

Some issues with the patch:

A) The default body of the issue says "Reporting the following comment as spam: " but the link is just to the node itself. It'd be much better if the auto-generated link brought you straight to the spam comment in question.

B) Typo in the PHPDoc: "Implements_hook_permission()" -- you don't want the first underscore there. ;)

C) It'd be nice to have a PHPDoc comment for drupalorg_comment_view_alter().

D) If you're interested in seeing this deployed "soon", it'd be great to provide both D7 and D6 versions of the patch.

Thanks!
-Derek

jaypan’s picture

Status: Needs work » Needs review
StatusFileSize
new1.58 KB
new1.52 KB

A) The default body of the issue says "Reporting the following comment as spam: " but the link is just to the node itself. It'd be much better if the auto-generated link brought you straight to the spam comment in question.

Done. Added fragment linking to the comment in question.

B) Typo in the PHPDoc: "Implements_hook_permission()" -- you don't want the first underscore there. ;)

Fixed.

C) It'd be nice to have a PHPDoc comment for drupalorg_comment_view_alter().

Added.

D) If you're interested in seeing this deployed "soon", it'd be great to provide both D7 and D6 versions of the patch.

Provided.

jaypan’s picture

Component: Drupal 7 upgrade » User interface
jaypan’s picture

Removing some forgotten debugging code in D6 patch. Patch from #4 should be ignored.

jaypan’s picture

Sorry, I'm re-rolling both those patches with some cleaned-up code.

jaypan’s picture

Bumpity

jaypan’s picture

Bump.

jaypan’s picture

Component: User interface » Drupal 7 upgrade
jaypan’s picture

Bump

jaypan’s picture

Bump

jaypan’s picture

Bump

drumm’s picture

Please only post useful issue followups.

jaypan’s picture

I'll not bump more than once a day.

If the patches were commited, I wouldn't even need to do that.

jaypan’s picture

Bump

dww’s picture

@Jaypan: Seriously, please stop. This isn't helping, and if anything is just making those of us who might want to work on this resentful and unlikely to go out of our way to scratch your itch.

Bigger picture: we're desperately trying to get Drupal.org upgraded to D7. It's over a year late (for reasons I don't have time or desire to enumerate). The Drupal.org Team (such as it is) is *incredibly* busy. Small feature requests like this are *not* the top priority. If everyone who wanted to do anything around here was bumping issues like this every (few) day(s), the volunteers (and occasionally paid staff) would run away screaming from this horrible situation.

Also, because this is such a large, high-profile site with a huge and active user-base, even relatively "small" changes require lots of care and work to ensure they're not breaking anything. It's not just that we have to re-review your patch, commit it, and hope for the best. We have a duty to the entire Drupal community to be extremely diligent with any changes we roll out.

Please understand that your patches here are not the only thing (literally) screaming for our attention.

Thanks,
-Derek

jaypan’s picture

This isn't helping, and if anything is just making those of us who might want to work on this resentful and unlikely to go out of our way to scratch your itch.

It's making me resentful that no one can be bothered to even acknowledge the effort I put in, much less take the time to commit it. If anyone even looked, these are very lightweight patches that can be tested very easily. I chose an unobtrusive method, to ensure that we wouldn't have to worry about breaking other functionality.

This has been an issue for five years. I finally put together a solution. When you made your initial comments in this thread, I took my own time - which I add I charge a fairly high premium for - to put together a D6 patch as well so that it could, in your words 'be deployed soon'. Now you comments make it appear that you can't be bothered to look at this patch until the D7 upgrade is done - which means I will have wasted my time putting together the D6 patch for the matter.

In all honesty, I had considered voluteering more time for Drupal.org upgrades. I know the insides of Drupal as well as most people out there, and I think I have the ability to put together more upgrades that this over time.

But this whole experience has turned me right off, particularly when other people's resentfulness seems to have more weight than my own. I guess there are different levels of people in the Drupal community, and I've realized that I'm just one of the peons.

I'll stick to helping in the forums from here on out.

jaypan’s picture

I should add, the rules are clear that posts should not be bumped more than once a day. I have stuck to that rule, and was still berated for it. Not cool at all.

Drupal = awesome. But I'm turned right off of the community right now, that's for sure.

jaypan’s picture

Priority: Normal » Minor
Status: Needs review » Closed (won't fix)

Anyways, I'm at the point where I would prefer these patches not even be committed now. I don't want to see my time go into a project where I'm berated when staying within the rules, for trying to solve a problem that has been around for five years. I'm closing this issue. If someone ever wants a report link in the future, they can write a new one as far as I'm concerned. I'd remove the patches altogether, but unfortunately that option is not available to me.

cweagans’s picture

Priority: Minor » Normal
Status: Closed (won't fix) » Active

People are busy. This is a volunteer operation. The paid staff at the DA are focusing on a 1:1 upgrade of the D6 site. This issue will be looked at when there's time available to spend on it. This is not a forum post, therefore the forum "bump" guideline does not apply. You were not berated. dww explained quite clearly what was causing the delay. Your time is no different than many of the other people that volunteer every day to help keep Drupal.org running, not to mention the countless hours that are spent on core and contrib work. Sorry you're frustrated, but you need to chill.

Reopening, since this is still a valid feature request.

jaypan’s picture

Status: Active » Closed (won't fix)
cweagans’s picture

Status: Closed (won't fix) » Active

Sigh.

jaypan’s picture

Yes I agree. Using my patch without my blessing makes me sigh. I've made my point and will not keep closing this thread, but someone else should use their own time and expertise to create this functionality, as I don't approve of my patch being used here against my wishes.

dww’s picture

For clarity:

- I didn't berate you.

- In #3 said:

At this point, we're mostly focused on the D7 upgrade of Drupal.org, but small useful changes like this might still be deployable.

Sorry I didn't put "might" in italics or bold.

- Also in #3 I said:

D) If you're interested in seeing this deployed "soon", it'd be great to provide both D7 and D6 versions of the patch.

I intentionally put "soon" in quotes since I wasn't making any promises. Sorry if the subtlety of what I was trying to say was lost there. I was both reviewing your patch and giving you feedback, and trying to set your expectations.

Meanwhile, almost all of June and much of July were spent dealing with the fallout from https://drupal.org/news/130529SecurityUpdate -- which ate into our (limited) time, set the D7 upgrade back even further, and also made us even more hesitant about deploying changes on Drupal.org.

I appreciate that you worked on a solution. I can relate to being frustrated by putting work into something and then not having it see the light of day. It happens a lot, especially in Open Source. I'm just asking you to have some empathy for the other people in the situation and attempt to see things from their perspective, too.

Thanks,
-Derek

p.s. Wow, just saw the last few updates -- you posted a patch for some GPL code to a public issue tracker, and now you're trying to prevent people from using "your" code since they don't have your "blessing"? That's amazing. Maybe I should berate you. ;) But I won't. Meanwhile, please reconsider if lashing out in frustration is your best course of action here. Cheers.

jaypan’s picture

I have most definitely reconsidered. I will not be making any future contributions to the Drupal.org project. You people have handled this poorly.

cweagans’s picture

Yeah. We handled it poorly.

lol.

jaypan’s picture

Insofar as you have alienated a potential contributor, yes, you have.

cweagans’s picture

We explained to you multiple time what the delays were from. You, however, decided to ignore those explanations and bump this thread continually and blame everyone else because they didn't have time to come look at your patch (despite prior explanation about how everyone is busy). You've also been consistently hostile toward everyone telling you that things are busy and it's probably going to take a while.

Tell me again how we handled this poorly?

jaypan’s picture

We explained to you multiple time what the delays were from. You, however, decided to ignore those explanations and bump this thread continually and blame everyone else because they didn't have time to come look at your patch

What? Let's review that timeline

June 5: final patch posted
June 14 - August 9: Bumped within DO guidelines
August 9: Told not to bump, with no explanation whatsoever
August 13: Bumped again
August 13: Berated for bumping again

You claim 'ignored the explanations and bumped continually'. Really? How did I do that, when the explanations came after I bumped the the thread. In fact, there wasn't even a single bump after the explanations.

Let me tell you how it really happened, which is verifiable on this very page:
* I posted a patch
* I was recommended to include a D6 patch which I did the next day in order to get the patch through sooner
* My patch received zero feedback. No response, no explanation of a reason for no response. No acknowledgement of existence. In the meantime, I've seen multiple spams go through the site.
* I bumped the thread under DO guidelines
* Two months later, I was berated for said bumping, and finally given an explanation.

If you people really think this is an appropriate way to deal with volunteer submissions, you are kidding yourselves.

drumm’s picture

Jaypan – I certainly appreciate your patches here.

For code review, I think we do not need a separate permission for this. I think the permission check can be something like node_access('create', 'project_issue').

Re https://drupal.org/forum-posting#bump – the conventions in the issue queue are different. Bumping of any kind is discouraged as far as I'm aware. https://drupal.org/node/73178 does not mention it positively or negatively. Many active projects on Drupal.org have good patches that wait days or weeks.

jaypan’s picture

For code review, I think we do not need a separate permission for this. I think the permission check can be something like node_access('create', 'project_issue').

Then hopefully someone will implement it someday. It's five and a half years, maybe someone will get to it in a few more.

Edit: but thank you for at least trying to be the voice of reason.

dww’s picture

Clearly you think I'm a villain in this thread, and it seems like my attempts to communicate aren't being heard. So this might be a waste of time. But I want to try once more since I hope you'll reconsider your decision to stop contributing and your understanding of what happened here.

- For most of June I was involved in a major project, unrelated to Drupal.org. What little time for Drupal.org I had was mostly for fallout from the security breach.

- I was totally offline for all of July (in my "other life" I'm a professional musician).

- I came back to many pages of my tracker with literally 100s of issues that had been updated while I was gone. I had to spend a lot of time reading through it all, prioritizing what to work on, etc.

- I saw this thread, saw drumm's comment asking you to "Please only post useful issue followups" (which was not berating you) and your reply appeared to be threatening to bump this thread every day until we committed your patches. I was initially outraged, but instead of doing something unproductive (like berating you), I decided to just focus on other things and come back to this with a clear head.

- When I finally replied, I also did not berate you. I said, "Seriously, please stop" and tried to give you some insight into the other side of the situation. Frustrated by not having your patches committed yet, you interpreted my attempt to communicate as angry and extended scolding (what "berate" means). Further attempts to communicate were met by more hostility.

- I'm not billing the Drupal Association (or anyone else) for the effort I've spent on this thread. I'm just another volunteer, with limited time and far too many responsibilities and things people expect me to be able to solve.

- Yes, contributing to Drupal.org can be hard and at times frustrating. If my full-time job was to facilitate volunteers to contribute to Drupal.org, things would be different. If 5 people had that full time job, it'd be different still. But sadly, that's not the reality. This is almost entirely a volunteer operation, we all have other lives, and we all normally get paid well for our labor. So, often things don't move as fast as everyone would want them to. But, generally, it's worth it, even if we're not getting paid. However, threads like this are discouraging. I try very hard to be empathetic and compassionate when I communicate, and I'm still painted as an unreasonable jerk. I try hard to be supportive and grateful, and you accuse me of alienating you and discouraging your contributions. Even when you're lashing out at me, I'm trying to encourage you to keep contributing instead of storming off, and you're still angry and saying "[y]ou people have handled this poorly." Am I saint? Definitely not. Do I get frustrated interacting with people in the Drupal.org-related issue queues? Sometimes. Do I always handle every communication in the best possible way? No. But am I trying? Yes.

If I had no empathy for the frustration you feel about not having your patches committed, I would have written you off as a troll. But I know you're upset and I understand why, so I'm trying help you to understand the other people you're interacting with. I'd like you to see an alternate explanation than (to paraphrase): "you people don't care about other contributors, and after I spent my valuable time to fix an old but important problem, you simply ignored me until you started berating me for trying to help."

- Please don't lump everything anyone says into "you people" -- we're not coordinating our replies, and I don't agree with everything cweagans has written here, either.

- Meanwhile, check this out:

https://drupal.org/project/issues/search?assigned=dww&status%5B%5D=8&sta...

Those are some of the issues where I've submitted patches that still haven't been committed, in many cases, not even reviewed. (Doesn't include the ones that "need work" for minor nitpicks, nor where I submitted a patch but the issue is assigned to someone else). Some are over 5 years old. ;) Cool huh? Not really. Honestly, it kind of sucks. But I understand why it happens, so I'm not getting bent out of shape about it and shortening my lifespan by being angry and stressed out, and I'm definitely not lashing out at those maintainers and insulting them because of it. And yes, I keep contributing patches, even when I know there's a chance they'll never get committed.

- Meta: I've probably spent more time trying to be empathetic and communicate with you than it might have taken to review your patches. That's too bad. But please consider the role that your angry replies have played in that reality. Given that this escalated into a threat to stop contributing entirely and accusations about how poorly we handle contributions, I've felt the need to reply to your concerns instead of "being the voice of reason" and just looking at your code. We're humans, not robots, and we all have feelings. Mine are hurt when people are this upset at what they perceive as my wrong-doing, especially when I don't believe I've really done anything wrong.

Hoping you might be able to have some understanding for your fellow contributors, and that you'll keep contributing.

Thanks,
-Derek

p.s. One major difference between forum posts and issues is that many people, especially maintainers, subscribe to their issue queues via email. So "bumping" doesn't just bump it to the top of a listing on the website (either the project's queue or a person's tracker pages), it's also generating a lot of noise in potentially 100s of people's inboxes.

jaypan’s picture

The major issue I have here is that this isn't a patch to the Drupal project, it's a patch for Drupal.org, to supply a feature that is not only missing, but has been discussed for over five years without implementation. This feature will add functionality to this website and this website only. This feature itself will never benefit me directly, I simply wanted it so that I can report spam - again to benefit this website and this website only, all because I would like to be able to report spam to make the users' experience better.

I have every intention to contributing patches to the Drupal project in the future, but that is separate from contributing patches for DO. Contributing patches to Drupal benefits everyone, and in particular since any patches I would contribute for Drupal would be for issues that directly affect sites I am working on, they also directly benefit me. Contributing patches to drupal.org is something I wanted to do out of the goodness of my heart to contribute to the community in a selfless manner, that would benefit everyone, but not directly benefit myself.

So I took a half-day to put together these patches. I'm in the middle of a project that I've been working on for my primary client for the past 14 months, at the expense of most of my other projects and the rest of my life for that matter. I've had to put our in-house projects on hold while doing this project, and I'm working 6-7 days a week, so a half-day of my time isn't just valuable in a financial sense (for which we are still looking at a few hundred dollars worth of my time), but also in the sense that I'm just really, really busy and that half-day I spent is one I didn't spend with my son.

Your comments and reasoning behind what happened are valid. But I've never had any issue with the reasons I've been given for the delay. The primary issue I have is that after being asked to give a D6 patch in order to get things to move along "soon", and providing that patch within 24 hours, I received zero response at all. And lets not forget, there are paid people on DO, not just volunteers. So I bumped. Nothing. So I bumped again. Nothing. Then I started responding to spam comments with a link to this thread. Still nothing. A week went by. Three weeks went by. A month went by. Two months went by. Finally the only comment I got was 'stop bumping', with no explanation or acknowledgment whatsoever. To which I pointed out the only information I had regarding bumping, which seems to indicate that its ok to bump after 24 hours. No explanation of why I shouldn't bump. No acknowledgement of the work I had put in. And most importantly, not even a comment on the patch itself.

So I bumped again - and what is the first comment I receive? "@Jaypan: Seriously, please stop. This isn't helping, and if anything is just making those of us who might want to work on this resentful and unlikely to go out of our way to scratch your itch." Now maybe you don't consider that berating, but after the frustration I had already felt, it did feel like it was berating, and on in all honesty, it still does reading it now after I have calmed down. And 'my itch'? Sorry, but this should be Drupal.org's itch. If this site never sees a report spam button the impact on my life will be somewhere between almost none, and absolutely none.

So my issue isn't with your reasons behind why it took so long. That's essentially a moot point, since my frustration was already felt well before that explanation had ever come, and the explanations felt to me like justifications after the fact.

If somewhere along the line, someone had come in and said something along the lines of "thank you for your contributions. We are extremely busy at the moment with the upgrade, and while we would like to look at this right away, its not likely to happen for a week/a month because of A, B and C", that would have gone a long way to staving off this problem. If some of the very valid reasons I've been given had been explained to me, it would have gone a long way to staving off this problem. I've never contributed to DO before, I don't know your guys' inner issues, and I don't know the backlog you face. So I was left in the dark wondering why I was the only one who cared about this rather simple issue that has been up in the air for five and a half years, getting more frustrated as the months went by.

When I say 'you people', I am referring to the group responsible behind Drupal.org. Not the Drupal project, but the infrastructure team behind this website. As I understand from this thread, there are paid employees, as well as unpaid volunteers, and if people are willing to commit their own time free of charge to improving this website then I feel they should be treated a little better than I was. Now of course, there is no obligation for that, but look at what the end result is - a potential contributor who feels alienated by the whole process, with no interest in contributing any more in the future.

Summary - your reasons are valid. I'm not criticizing the intent. It's the actual process as it occurred that I take issue with. I'm criticizing the execution.

drumm’s picture

Sorry my reply in #14 was too terse. As mentioned in #31, this patch is appreciated and I think almost ready to be committed to 7.x. The D7 launch is currently looking like it will happen in about 2 months, so 6.x is a possibility in the meantime.

I posted a note about this to #966964: Create standards for tone and tenor in the issue queues so we can do a better job in Drupal.org-related, and other, issue queues.

kattekrab’s picture

Hi @jaypan - I'm on the board of the DA, and I chair the community working group (cwg). I'd love to find a shared time to chat with you. Find me on IRC as kattekrab too, generally in #drupal-association. I'm a volunteer too :-)

@drumm - thanks for bringing this to our attention.

Let's return this issue to one about fighting spam...

and tackle the issue queue process and failues in the new issue that @drumm has created in the cwg queue #966964: Create standards for tone and tenor in the issue queues

@dww and @cweagans - thanks also to you for your time and effort, and for explaining the D.O situation.

and FWIW it's totally a +1 from me for a spam fighting feature!

jaypan’s picture

Re-rolling the code with removal of hook_perm() [D6] and hook_permission() [D7] and changing call from user_access() to node_access() as recommended by Drumm in #31

Thank you for all who have taken the time to comment and straighten this out.

jaypan’s picture

Status: Active » Needs review
dww’s picture

Thanks!

Here's a pair of untested re-rolls. Instead of manually constructing the query string, I find the code is more readable like this (and the url() function will handle the urlencode() for us). I also fixed a few minor issues with the code comments to better comply with our coding standards.

I'm about to leave again for a few weeks, so I can't commit and deploy this with a clear conscience (we have an unofficial policy *not* to deploy any changes if you can't be around to make sure they didn't break anything and resolve problems that might arise), but hopefully drumm can get to it reasonably soon. If not, I'll try to make time to test and deploy sometime in the first two weeks of September. Again, the D7 launch is our top priority, so this might lag, but it's not because we don't care -- we just have to ruthlessly prioritize sometimes.

Thanks again, and sorry this issue got so derailed into meta...

Cheers,
-Derek

jaypan’s picture

Thanks. Actually, I've realized that I missed an important thing - this will render the report link on comments, I don't think it will render the report link on original node itself. I'll test and alter accordingly tomorrow.

Thank you for letting me know why you will not be able to commit it soon. I'll not bump accordingly. I guess we are all learning :)

dww’s picture

Status: Needs review » Needs work

Indeed, this is only for comments. Good point.

Yup, we're all learning. :) I need to remember that not everyone has all the same context I do, and it helps to communicate that context to avoid misunderstandings.

Cheers,
-Derek

jaypan’s picture

Re-rolling patches with links for nodes as well as comments. Also had to alter the link code provided by dww, as it was setting the query in options, but in the links it actually needs to be directly set as query, and not a part of options (inconsistency between theme_link() and the format for action links).

jaypan’s picture

Re-rolling D6 patch. I had to remove a dependency for the material_views module, as there isn't a D6 version of it, so the drupalorg module couldn't be installed with this dependency. This removal got picked up in my patch, so I reset the .info file and re-rolled the patch. Also removed some whitespace.

jaypan’s picture

And re-rolling D6 patch again, removing 'html' attribute of links, as there is no HTML in the link title.

dww’s picture

Status: Needs work » Needs review

Sweet, thanks! Yeah, as I said, my patches were totally untested. ;) Thanks for fixing the bug with the inconsistency.

Looks like this needs review again, so setting status accordingly. Very quick skim looks great, but I don't have time to properly test now. I desperately need to pack. ;)

Thanks for coming back to this and doing a great job with it!

Cheers,
-Derek

drumm’s picture

Version: 7.x-3.x-dev » 6.x-3.x-dev
Component: Drupal 7 upgrade » User interface

Committed to 7.x: http://drupalcode.org/project/drupalorg.git/commit/2773eee

I went ahead and committed a followup: http://drupalcode.org/project/drupalorg.git/commit/fb8d72d

  • Not all node types on Drupal.org have links, or are necessarily prone to spam. For now, I limited it to only forum nodes. We can always expand it later.
  • The "Report spam" link was showing before "Add new comment." I made a module-specific link group for drupalorg instead of piling into node; I think that may be more technically correct too, not that it matters a lot in our site-specific module.
jaypan’s picture

Thank you. Has it also been committed to 6.x?

tvn’s picture

drumm, I don't think your follow up commit fully worked, right now on git7site 'report spam' link is on comments everywhere: issue pages, doc pages, case studies.

Jaypan, during D7 upgrade QA we got a report about accessibility problems with the link, here is related issue if you want to take a look #2095983: Accessibility problem with 'report spam' link - it needs more context.
As for 6.x, afaik it hasn't been committed there yet, D7 launch is so close at this point that it might make sense to just wait for it.

jaypan’s picture

How do you guys do drupalorg development? Is there an installation profile or something?

tvn’s picture

We provide development sites, which are a copy of Drupal.org with sanitized database. Here is more info: https://drupal.org/node/1018084

tvn’s picture

drumm’s picture

drumm, I don't think your follow up commit fully worked, right now on git7site 'report spam' link is on comments everywhere: issue pages, doc pages, case studies.

Looks like they are showing on comments everywhere, but not the nodes themselves. I think this is okay since comments are always prone to spam.

tvn’s picture

Oh, I thought you removed from comments, not nodes itself. Agree, it's ok.

jaypan’s picture

Issue summary: View changes
Status: Needs review » Fixed

This has been added to DO in D7.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.

  • Commit 2773eee on 7.x-3.x, 7.x-3.x-dev authored by Jaypan, committed by drumm:
    [#2011334] Adding report spam link to comments in forums
    
  • Commit fb8d72d on 7.x-3.x, 7.x-3.x-dev by drumm:
    [#2011334] Only show Report spam on forum nodes and do not show it...