Commit graph

35 commits

Author SHA1 Message Date
Alexandre Emsenhuber
3de2f5a64d Allow to set a salt for the edit token in HTMLForm
And set one in RevertAction.

Change-Id: I9f72c6203e8d9d0770009083263ddca98845f530
2014-07-08 22:45:14 +02:00
Alexandre Emsenhuber
f90b19bf03 Allow "size" attribute to HTMLSelectField
Pass this one to XmlSelect is provided.

Change-Id: I7ac345e1c219c8607895f9fc0fc2cef68c900ff8
2014-07-06 20:51:17 +02:00
Brad Jorsch
0188fe7d5e HTMLForm submission callback documentation updates
The possibilities for the submission callback return value were
documented in three different places, and none were entirely correct.
Related documentation could also use a cleanup.

Change-Id: Ib3621a0d5ba24c481f3117b547bca70d4ca50ba2
2014-07-03 11:21:55 -04:00
Reedy
9fc64bc659 chmod 644
Change-Id: I31dddeb4e6373f5817fdfaeba3ff95699aec86b6
2014-06-30 18:17:23 +01:00
umherirrender
7ffea90b5c HTMLSelectOtherFields: Have 'other' always as first element
The other field is in most case the default item selected in the drop
down box when a page is loaded. But when the last item is selected you
have to scroll to the top to select one of the first item, which are
often the common or most used items.

So adding the 'other' always as first item to the list.
For the HTMLSelectAndOtherField this was before
If4175332405d26c7ff2e8fbe100bcad61762ce6f, so that is fixing a
regression. In my opinion it should be the same for both types.

Follow-Up: If4175332405d26c7ff2e8fbe100bcad61762ce6f
Change-Id: I82f31e260d63bfaa6a4a94908e019feb9e0f2421
2014-06-29 11:50:52 +00:00
jenkins-bot
8187075a7f Merge "mediawiki.ui: Rename .mw-ui-vform-div → .mw-ui-vform-field" 2014-06-26 17:39:23 +00:00
Bartosz Dziewoński
a88f8a496b mediawiki.ui: Rename .mw-ui-vform-div → .mw-ui-vform-field
Require use of class instead of applying styling to all <div>s

This resolves a few FIXMEs and dramatically lowers the awkwardness
level of using mediawiki.ui.

'.mw-ui-vform-field' is a more descriptive name than '.mw-ui-vform-div'
and corresponds to the HTMLFormField PHP class in core which generates
<div>s with this CSS class.

We previously styled '.mw-ui-vform > div' the same way we styled
'.mw-ui-vform .mw-ui-vform-div', which was an annoying piece of magic
causing difficult to debug problems when one needed a different HTML
structure (like bug 63233). Explicitly using '.mw-ui-vform-field'
where applicable is a lot saner.

Change-Id: I6f0b8842f5fdf70b97decb165086d1a83428b259
2014-06-26 17:34:20 +00:00
umherirrender
b6ed42da0a Remove HTMLForm::addJS() (deprecated since 1.18)
Change-Id: Id174d37b69a2e8d76555c3d414fdb87c01222d66
2014-06-24 19:59:44 +02:00
Thiemo Mättig
f6cff5e392 Update documentation of what a "section" is
There are so many slightly different understandings of what a
"section" is or can be. I'm aware the documentation was improved
just a few weeks ago. I still find it incomplete and confusing.

1. I renamed it to $sectionId to make it more clear what it
really is.

2. Sections are usually numbers. 0, 1 and so on. There is no
reason to disallow the use of ints or even floats (this works
because the string representation of 0.0 is "0"). The code never
disallowed numbers.

3. 'T1' never was supported, as far as I can tell. 'T-1' is
supported. See Parser::extractSections().

4. null and false and '' all mean "the whole page" in
WikiPage::replaceSectionAtRev() but for some reason this meaning got
lost in WikitextContent::replaceSection(). I made it the same again.

Change-Id: Icc3997722d2ed742bf7703cd7c06d09199225720
2014-06-12 18:13:23 +02:00
Pcoombe
16b731dc57 HTMLForm: fix double escaping of checkbox labels in vform
mLabel has already been escaped if required. It isn't run through htmlspecialchars()
in other display formats, so doesn't need to be done in vform.

Change-Id: I0b0feec408687cdadf01da5f2078980015538bb7
2014-05-25 14:55:02 +00:00
Nemo bis
cb47ea303c Update html5 specs link in comment
Change-Id: I415d11f1dfff92e44d29637e8a3a5fd408994c9a
2014-05-05 17:34:31 +02:00
Brad Jorsch
e9d4d06276 HTMLForm: Add "cloner" type
SecurePoll is going to need the ability to have a form for stuff like
"one or more admin usernames" and "one or more poll questions, each with
one or more options".

This change implements a generic field container that simply displays as
a <ul> followed by an "add more" button, with each <li> containing
various fields including a "remove" button.

Since this is only going to show up in SecurePoll to people creating a
poll (not to general users), the current design is functional but not
necessarily beautiful. Those interested in beauty are welcome to do so
in a followup change.

Change-Id: I46fad3971739ddc961259fe32eb6e1cd265a1c06
2014-05-02 15:02:40 +00:00
Brad Jorsch
c310e7b40c HTMLForm: Add hide-if
SecurePoll will need a way to display a field only if another field has
a particular value.

We already have this for a limited case in HTMLSelectOrOtherField; this
makes it possible to specify that any particular field should be hidden
based on any other field.

Change-Id: I5d2e6fb1efba0ad97647ac140e2b9a9ac0aee06e
2014-05-02 14:57:34 +00:00
Siebrand Mazeland
f994817f6b Pass phpcs-strict on various files in includes/
These files have all had treatment before, and these occurrences have either
been missed or have been introduced after.

Change-Id: I06cdab4616b5bff47c85152df28f18c861730a23
2014-04-24 21:50:01 +02:00
umherirrender
23bb3d1cb4 Follow-Ups to "Fixed some @params documentation"
Fix of inline comments of the following patch sets:
Follow-Up: I0056b4a8df243cfc0c5f25378de48f7a35170aca
Follow-Up: I7f605aa9e117b5fd80d9b1440864fe526d2b14a5
Follow-Up: I3622f216a2ca8ac1b5e51892be9f98665f65bc36
Follow-Up: I6627ba0e76d3577c40bf2473e0f78a5ad7368634
Follow-Up: Id75b5ecf648ca50f955b3bde3307c82c4366b102
Follow-Up: I4ca5231119f33039d91da3b57a41cd40719a576b

Change-Id: Id9bbe84b2820e9db44af5783411e955f55f643d4
2014-04-23 13:39:49 +02:00
umherirrender
dcf6955e5c Fixed some @params documentation (includes/*)
Swapped some "$var type" to "type $var" or added missing types
before the $var. Changed some other types to match the more common
spelling. Makes beginning of some text in captial.

Change-Id: Ifbb1da2a6278b0bde2a6f6ce2e7bd383ee3fb28a
2014-04-20 23:33:05 +02:00
umherirrender
c41e97e84a Restore text for "Other" reason on Special:Block reason list
There was only a empty item for that at the end of the drop down:
<option value="other" selected=""></option>

Follow-Up: If4175332405d26c7ff2e8fbe100bcad61762ce6f
Change-Id: If808c51c62b5c25a58ec6188784da5a676f60993
2014-04-09 19:40:39 +00:00
umherirrender
23fab68274 Fix spacing after @param and friends in comments
Searched for:
\@(param|return|throws|since|deprecated|access|todo|var)[ \t]{2,}

Change-Id: Icce22ba9fe0635455691ca58d9872d618151f346
2014-04-05 20:02:29 +00:00
Ladsgroup
1ba0445c12 Changing URLs of mediawiki.org in scripts to the SSL-based website
http://www.mediawiki.org --> https://www.mediawiki.org

Part 2

Change-Id: I3be61fe3dfb502cc20180486eb1a8016eac151df
2014-03-12 23:24:03 +00:00
Brad Jorsch
4bd9a382b8 HTMLForm: Support 'url' type
SecurePoll will have a field that's a url, so we may as well use the
correct HTML5 input type for it.

Change-Id: Id3ddd8f2efdff08c8a188089d321d143ce5ef9c9
2014-03-12 15:04:51 -04:00
Brad Jorsch
5f57d5d657 HTMLForm: Clean up 0 handling
PHP, particularly with in_array, really has problems with integer 0
versus non-numeric strings. Let's clean that up by converting values to
strings more agressively and using the $strict option to in_array.

Oddly enough, the one place where strict in_array was being used already
broke when If4175332 stringified the values in one array but not the
other.

Bug: 62268
Change-Id: Id34e654eb8d0e70d093b11445273e542e491e265
2014-03-05 15:40:48 -05:00
jenkins-bot
78288c39a3 Merge "Fix number of parameters passed on recursive function call" 2014-02-28 16:30:34 +00:00
Marius Hoch
9e66a63af8 Use inContentLanguage for dropdown messages in HTMLFormField
to restore b/c for now.

Bug: 61942
Change-Id: I2741ef940d83eeb564e89e20378fb4004cfe5b83
2014-02-28 03:13:03 +01:00
Reedy
b0223bc648 Fix number of parameters passed on recursive function call
Error is from If4175332405d26c7ff2e8fbe100bcad61762ce6f

Change-Id: I2deabd42462e4009118ff5578e4da95cab51107a
2014-02-27 21:20:46 +00:00
Brad Jorsch
f88fcb7461 HTMLForm: Allow i18n of 'options'
One shortcoming in HTMLForm is that fields that use the 'options'
parameter (e.g. <select>) have no easy way for the individual labels to
be localized.

This change adds a new parameter type, 'options-messages', where the
keys are message keys rather than bare strings (similar to the
difference between 'label' and 'label-message'). It also abstracts out
the fetching of the various option parameters, and changes the necessary
field classes to use it.

Change-Id: If4175332405d26c7ff2e8fbe100bcad61762ce6f
2014-02-19 23:26:23 +00:00
Reedy
bec75cc99f Refactor out HTMLFormField class and type normalisation code
Also include fieldname when exceptioning over bad descriptor class

Change-Id: Ia612453625fdeb611875d5ffc724cef2abe4f776
2014-02-19 21:39:29 +00:00
jenkins-bot
f73c54a0a4 Merge "Fix HTML output arround HTMLForm's submit buttons when in vform" 2014-02-08 03:25:09 +00:00
Siebrand Mazeland
f077c4b1d6 Update formatting
Change-Id: I18aff576262479c9bb1c56eb8e1d1aaae200e4b1
2014-02-06 09:27:05 +01:00
Siebrand Mazeland
0cef781886 Fix CodeSniffer errors and warnings
Change-Id: Idc74e34634d88625773fb8f73315f61edfa67e28
2014-02-05 11:20:17 +01:00
S Page
d276ff5d06 Use new mw-ui-constructive Agora styles
The new Agora ("beveled bottom") version deprecates mw-ui-primary.
* Use mw-ui-constructive (green) for Login, Create account, and Reset
password.
* Use mw-ui-progressive (blue) for Join <wiki> and Search.

A separate change I90954ea will implement right-aligned and quieter button layout.

Bug: 60596
Change-Id: Ia1fe557e7ebeac011c5da7297e848c1bfee7910f
2014-01-30 01:17:00 +00:00
Alexandre Emsenhuber
cb9a9a7b47 Add support for "tabindex" in HTMLFormField subclasses
It is already set for some fields in Special:Block, but are
discarded by HTMLForm and its fields.

Some notes:
- fields with multiple inputs (radio, select and other, select
  or other) will have the same tabindex set on all elements
- Some items such as multi-select and check matrix are not yet
  implemented

Change-Id: I3e1ba7f16f3a3183f231afcf60dd392ce6d6eb6b
2014-01-25 04:31:01 +00:00
Matthew Flaschen
a0edc19f42 Add mediawiki.ui.button to places in core using mw.ui
All of these also use other mw.ui features (e.g. mw-ui-vform,
mw-ui-input, mw-ui-checkbox-label, etc.), so they can't only depend
on mediawiki.ui.button.

Change-Id: I6906533753185f7de42552cff38a86fb0171d1d8
2013-12-18 20:23:17 -05:00
Alexandre Emsenhuber
0311433ce5 Fix HTML output arround HTMLForm's submit buttons when in vform
$html in HTMLForm::getButtons() is vrapped in a <div></div> when in
vform mode but it contains a <span> tag without its closing
counterpart, thus making the HTML invalid.

And while I'm at it: put line breaks at better places.

Change-Id: I7ffa1bdd72d95188320c1b29d1c46a5f6f434cbe
2013-12-15 22:06:46 +01:00
addshore
8fa2314b2e Formatting fixes in includes/htmlform/*
Change-Id: Iee9e4f3fcf8491022ffe97c74312871f97f8ce9c
2013-12-09 14:23:05 +01:00
addshore
976276338a Split includes/HTMLForm
Change-Id: I6eabfdb064c0e35b69efe9d6142e94df4128b632
2013-12-08 23:13:56 +01:00