Page MenuHomePhabricator

Patch for an adaptive rating form for better usability
Closed, ResolvedPublic

Description

Author: arnomane

Description:
first version of adaptive rating form

The current drop down list rating form of FlaggedRevs is very clumsy in case you have only few available options you can choose from. Especially the anticipated simple setup of de.wikipedia is affected by this. Thus several people have asked for an rating form which adapts automatically to the available options via using radio buttons and check boxes and thus would reduce needed mouse clicks for rating (few mouse clicks is very important for user acceptance).

Below I have attached a patch for FlaggedRevs that provides this.

Notes:

  • The patch fixes as well some usability (see css) and logic glichtes (see e.g. handling of $wgFlagRestrictions review -1 and 0).
  • The javascript wasn't patched accordingly and currently thus won't work correctly in case there are radio buttons and/or checkboxes shown. I will do this later (but would like to get this patch applied before).
  • In case one option can't be set the entire rating form should be disabled (grey), without needing Javascript. This will fixed done later but is anyways currently the same behaviour as in HEAD, so no merge stopper.

Version: unspecified
Severity: enhancement

attachment flaggedrevs.patch ignored as obsolete

Details

Reference
bz13744

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 10:06 PM
bzimport set Reference to bz13744.
bzimport added a subscriber: Unknown Object (MLST).

arnomane wrote:

I will fix at first the mentioned problems (in current code and my patch) previous to the javascript in order to be sure that every element is well defined (as the javascript depends from that). Then I will fix the JS file as well afterwards and will upload here a new improved patch the next days.

OK, largely patched in for the most part. Not sure about the comment about flaggedrevspage.php needing to be patched.

arnomane wrote:

New version of my patch:

  • The Javascript is also fixed and now works in all cases (FlaggedRevs.php needed to be patched for this as well).
  • In case one flag can't be set the entire form and descriptive texts (see also css file) are disabled entirely without any Javascript (as you can't set any flag anyways). This makes the disabled form more visible and less confusing.
  • I have reintroduced my spacing as I think it is better and more flexible (spacing by multiple nbsp isn't that good for own/other/new skins IMHO).
  • As well the code was somewhat shortened and some other small cleanups I stumbled at.

One anticipated case is still missing in the adaptive form (the click through link, like on revert) but this depends from a proper fix for #13682 (yet another serverside config variable is needed). I will do this later, as I also need to patch some other parts as well for this (the plugin needs to accept parameters via GET without a further form page on submit).

arnomane wrote:

second improved version of my patch

Attached:

arnomane wrote:

I meant something like in this old mockup of mine: http://commons.wikimedia.org/wiki/Image:Mockup-sighted-version-diff.png, the "Unterschied als gesichtet markieren" link.

In case a user can just flag a version as "sighted"/"basic check" and nothing more and no further comment is needed (as suggested for basic flags in [[bug:13682]]) one single link "tag this version with basic check" in case no flag is on this version and in the other case a link "tag this version as unapproved".

OK, but this can still be made as a button. So I don't see a need for modifying it to take GET requests.

At any rate, nice work! It takes a lot less clicks when there is one level and such. Are there any other usability ideas, aside from the one click submit?

At any rate, done in r33524. Any other ideas should go in a new patch, if any.