Merge "Special:Upload should not crash on failing previews"
[mediawiki.git] / includes / htmlform / fields / HTMLIntField.php
blob02af7de98bfbcacbbb3cf1b2303bbb7b7f5fbca0
1 <?php
3 /**
4 * A field that must contain a number
5 */
6 class HTMLIntField extends HTMLFloatField {
7 public function validate( $value, $alldata ) {
8 $p = parent::validate( $value, $alldata );
10 if ( $p !== true ) {
11 return $p;
14 # https://www.w3.org/TR/html5/infrastructure.html#signed-integers
15 # with the addition that a leading '+' sign is ok. Note that leading zeros
16 # are fine, and will be left in the input, which is useful for things like
17 # phone numbers when you know that they are integers (the HTML5 type=tel
18 # input does not require its value to be numeric). If you want a tidier
19 # value to, eg, save in the DB, clean it up with intval().
20 if ( !preg_match( '/^((\+|\-)?\d+)?$/', trim( $value ) ) ) {
21 return $this->msg( 'htmlform-int-invalid' );
24 return true;