From: Tim Starling Date: Thu, 10 Aug 2006 08:00:53 +0000 (+0000) Subject: Fixed PreferencesForm::validateDate(). X-Git-Tag: 1.31.0-rc.0~56030 X-Git-Url: http://git.cyclocoop.org/%40spipnet%40?a=commitdiff_plain;h=644131fbc6286a1497dc6d54385ccae45d5118ee;p=lhc%2Fweb%2Fwiklou.git Fixed PreferencesForm::validateDate(). --- diff --git a/includes/SpecialPreferences.php b/includes/SpecialPreferences.php index c0177f3946..ba93e8768c 100644 --- a/includes/SpecialPreferences.php +++ b/includes/SpecialPreferences.php @@ -156,11 +156,16 @@ class PreferencesForm { /** * @access private */ - function validateDate( &$val, $min = 0, $max=0x7fffffff ) { - if ( ( sprintf('%d', $val) === $val && $val >= $min && $val <= $max ) || $val == 'ISO 8601' ) + function validateDate( $val ) { + global $wgLang, $wgContLang; + if ( $val !== false && ( + in_array( $val, (array)$wgLang->getDatePreferences() ) || + in_array( $val, (array)$wgContLang->getDatePreferences() ) ) ) + { return $val; - else - return 0; + } else { + return $wgLang->getDefaultDateFormat(); + } } /** @@ -257,7 +262,7 @@ class PreferencesForm { if( $wgUseTeX ) { $wgUser->setOption( 'math', $this->mMath ); } - $wgUser->setOption( 'date', $this->validateDate( $this->mDate, 0, 20 ) ); + $wgUser->setOption( 'date', $this->validateDate( $this->mDate ) ); $wgUser->setOption( 'searchlimit', $this->validateIntOrNull( $this->mSearch ) ); $wgUser->setOption( 'contextlines', $this->validateIntOrNull( $this->mSearchLines ) ); $wgUser->setOption( 'contextchars', $this->validateIntOrNull( $this->mSearchChars ) ); diff --git a/languages/Language.php b/languages/Language.php index 49a3bff56e..2644e5847e 100644 --- a/languages/Language.php +++ b/languages/Language.php @@ -276,6 +276,11 @@ class Language { return $this->dateFormats; } + function getDefaultDateFormat() { + $this->load(); + return $this->defaultDateFormat; + } + function getDatePreferenceMigrationMap() { $this->load(); return $this->datePreferenceMigrationMap;