Revision: 46246
Author: nikerabbit
Date: 2009-01-26 09:41:52 +0000 (Mon, 26 Jan 2009)
Log Message:
-----------
* (bug 13040) Gender switch in user preferences
Modified Paths:
--------------
trunk/phase3/RELEASE-NOTES
trunk/phase3/includes/specials/SpecialPreferences.php
trunk/phase3/languages/messages/MessagesEn.php
Modified: trunk/phase3/RELEASE-NOTES
===================================================================
--- trunk/phase3/RELEASE-NOTES 2009-01-26 07:06:17 UTC (rev 46245)
+++ trunk/phase3/RELEASE-NOTES 2009-01-26 09:41:52 UTC (rev 46246)
@@ -62,6 +62,7 @@
* More helpful error message on raw page access if PHP_SELF isn't set
* (bug 17145) Specific categories can be excluded from Special:UnusedCategories
with __IGNOREUNUSED__
+* (bug 13040) Gender switch in user preferences
=== Bug fixes in 1.15 ===
* (bug 16968) Special:Upload no longer throws useless warnings.
Modified: trunk/phase3/includes/specials/SpecialPreferences.php
===================================================================
--- trunk/phase3/includes/specials/SpecialPreferences.php 2009-01-26
07:06:17 UTC (rev 46245)
+++ trunk/phase3/includes/specials/SpecialPreferences.php 2009-01-26
09:41:52 UTC (rev 46246)
@@ -26,7 +26,7 @@
var $mUserLanguage, $mUserVariant;
var $mSearch, $mRecent, $mRecentDays, $mTimeZone, $mHourDiff,
$mSearchLines, $mSearchChars, $mAction;
var $mReset, $mPosted, $mToggles, $mSearchNs, $mRealName, $mImageSize;
- var $mUnderline, $mWatchlistEdits;
+ var $mUnderline, $mWatchlistEdits, $mGender;
/**
* Constructor
@@ -66,6 +66,7 @@
$this->mWatchlistDays = $request->getVal( 'wpWatchlistDays' );
$this->mWatchlistEdits = $request->getVal( 'wpWatchlistEdits' );
$this->mDisableMWSuggest = $request->getCheck(
'wpDisableMWSuggest' );
+ $this->mGender = $request->getVal( 'wpGender' );
$this->mSaveprefs = $request->getCheck( 'wpSaveprefs' ) &&
$this->mPosted &&
@@ -207,6 +208,15 @@
}
}
+ function validateGender( $val ) {
+ $valid = array( 'male', 'female', 'unknown' );
+ if ( in_array($val, $valid) ) {
+ return $val;
+ } else {
+ return User::getDefaultOption( 'gender' );
+ }
+ }
+
/**
* @access private
*/
@@ -272,6 +282,7 @@
$wgUser->setOption( 'underline',
$this->validateInt($this->mUnderline, 0, 2) );
$wgUser->setOption( 'watchlistdays', $this->validateFloat(
$this->mWatchlistDays, 0, 7 ) );
$wgUser->setOption( 'disablesuggest', $this->mDisableMWSuggest
);
+ $wgUser->setOption( 'gender', $this->validateGender(
$this->mGender ) );
# Set search namespace options
foreach( $this->mSearchNs as $i => $value ) {
@@ -423,6 +434,7 @@
$this->mUnderline = $wgUser->getOption( 'underline' );
$this->mWatchlistDays = $wgUser->getOption( 'watchlistdays' );
$this->mDisableMWSuggest = $wgUser->getBoolOption(
'disablesuggest' );
+ $this->mGender = $wgUser->getOption( 'gender' );
$togs = User::getToggles();
foreach ( $togs as $tname ) {
@@ -735,8 +747,20 @@
$this->tableRow( ' ', $this->getToggle( 'fancysig'
) )
);
- list( $lsLabel, $lsSelect) = Xml::languageSelector(
$this->mUserLanguage );
+ $gender = new XMLSelect( 'wpGender', 'wpGender', $this->mGender
);
+ $gender->addOption( wfMsg( 'gender-unknown' ), 'unknown' );
+ $gender->addOption( wfMsg( 'gender-male' ), 'male' );
+ $gender->addOption( wfMsg( 'gender-female' ), 'female' );
+
$wgOut->addHTML(
+ $this->tableRow(
+ Xml::label( wfMsg( 'yourgender' ), 'wpGender' ),
+ $gender->getHTML()
+ )
+ );
+
+ list( $lsLabel, $lsSelect) = Xml::languageSelector(
$this->mUserLanguage, false );
+ $wgOut->addHTML(
$this->tableRow( $lsLabel, $lsSelect )
);
Modified: trunk/phase3/languages/messages/MessagesEn.php
===================================================================
--- trunk/phase3/languages/messages/MessagesEn.php 2009-01-26 07:06:17 UTC
(rev 46245)
+++ trunk/phase3/languages/messages/MessagesEn.php 2009-01-26 09:41:52 UTC
(rev 46246)
@@ -286,6 +286,7 @@
'servername' => array( 0, 'SERVERNAME' ),
'scriptpath' => array( 0, 'SCRIPTPATH' ),
'grammar' => array( 0, 'GRAMMAR:' ),
+ 'gender' => array( 0, 'GENDER:' ),
'notitleconvert' => array( 0, '__NOTITLECONVERT__',
'__NOTC__'),
'nocontentconvert' => array( 0, '__NOCONTENTCONVERT__',
'__NOCC__'),
'currentweek' => array( 1, 'CURRENTWEEK' ),
@@ -908,6 +909,10 @@
Check HTML tags.',
'badsiglength' => 'The signature is too long.
It must be under $1 {{PLURAL:$1|character|characters}}.',
+'yourgender' => 'Gender:',
+'gender-unknown' => 'Unspecified',
+'gender-male' => 'Male',
+'gender-female' => 'Female',
'email' => 'E-mail',
'prefs-help-realname' => 'Real name is optional.
If you choose to provide it, this will be used for giving you attribution for
your work.',
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs