Page MenuHomePhabricator

$1 displayed for Thanks error (upon trying to thank self)
Closed, ResolvedPublic

Description

Manually copying and pasting a diff id into the subpage argument for Special:Thanks (e.g. if I edited my user page with a revid of 987654321, navigating to Special:Thanks/987654321) and clicking the button gives me this informative error message:

Thank action failed (error code: $1). Please try again.

There are a number of things wrong here:

  • If it's possible to disable the confirmation button client-side, we should be doing that (with an appropriate error message)
  • "$1" is a pretty bad error code, and probably indicates a string substitution issue
  • "Thank action failed" is a pretty bad error message, and probably indicates that someone didn't think of this particular edge case
  • "Please try again" probably isn't the best thing to be advising users. For that matter, is it even a good idea to be asking users to try again in every case, given that the relatively lightweight nature of the thanking system means that an error that makes the thank action fail might *not* be solvable by trying again? (On this point, I'm probably wrong, but clarification would be welcome.)

Admittedly, it's an edge case, but fixing that "$1" might be useful in error display in general for the Thanks system, not just this case.

Event Timeline

Why would one be thanking themselves?

@Peachey88, I was messing around with some improvements I recently made to the Navigation Popups gadget on ENWP, and decided to thank myself for something to see how far I could get before the software blocked me.

Aklapper triaged this task as Lowest priority.Apr 19 2016, 6:47 AM

If it's possible to disable the confirmation button client-side, we should be doing that (with an appropriate error message)

Given that Special:Thanks is a no-JS fallback, this doesn't make sense.

Mattflaschen-WMF renamed this task from Better workflow for thanking yourself to $1 displayed for Thanks error (upon trying to thank self).Apr 19 2016, 5:27 PM

I tried to replicate this bug on enwiki, attempting to thank myself for a revision on my user page, and it gave me the following error message:

You cannot thank yourself

I take it that means the issue is resolved.

matmarex assigned this task to Anomie.
matmarex subscribed.

It seems this was fixed by rETHAa9cbd9471ba9: Update for API error i18n. Special:Thanks calls the API internally, and prior to that patch it a) wasn't handling all of the possible errors and b) wasn't passing the $1 parameter in the fallback error message.