https://bugzilla.wikimedia.org/show_bug.cgi?id=51958

--- Comment #11 from Bartosz Dziewoński <matma....@gmail.com> ---
Works and I like it :)


If we wanted to make this a core feature, I think we should just make
it hook to the "N changes" / "cur | prev" links instead of adding more
(as the watchlist interface is already rather cluttered and
intimidating).

When we do that, we should make viewing the diff inline update the
"page visitedness" status (whether the pages on Watchlist are bolded;
I think there's some default gadget at en.wp which disables this
incredibly useful feature :(, so you'd have to disable it to see the
result there).


If we were to merge your script into core MediaWiki, we'd have to make
it adhere to our coding conventions (see [[mw:CC]] and [[mw:CC/JS]])
and you'd have to agree to a relicense it under GNU GPL or a
compatible license (e.g. MIT) – unfortunately CC BY-SA (under which
you implicitly released it by putting it in a Wikipedia page) is
apparently not compatible, but things can easily have multiple
different licenses.


As for general review of the code, if you're interested :)
* After you click the [inspect diff] link, there's a period of time
  when nothing is happening (while the API request is loading) – there
  needs to be some indicator that the script is not stuck.
  I pastebinned a simple solution here: http://pastebin.com/cb7W2U9i ,
  feel free to use it.
* Why are you allowing only one API request to be active at a time?
* Selectors like ":contains" are rather slow and should not be used
  unless absolutely necessary; not sure if this is the cause, but the
  script can take a few seconds to set up the buttons on large pages
* Changing the 'type' of <input>s and <button>s after they are created
  will throw an exception on IE<=8; it's better to use something like
  $('<input type=button>')[0] to create them
* Using Object.keys will likewise throw an exception on some older
  browsers, I think.
* We have a few fancy libraries you could use instead of
  reimplementing some logic, like mediawiki.api or mediawiki.Uri, or
  the aforementioned jquery.spinner. They all are (or should be)
  documented at https://doc.wikimedia.org/mediawiki-core/master/js/
  and can be loaded using mw.loader.using([dependencies], callback)
  like in my pastebin above.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to