* @param string $name Id of the element, minus prefixes.
* @param string|null $options Null or the string 'withaccess' to add an access-
* key hint
+ * @param array $msgParams Parameters to pass to the message
+ *
* @return string Contents of the title attribute (which you must HTML-
* escape), or false for no title attribute
*/
- public static function titleAttrib( $name, $options = null ) {
-
- $message = wfMessage( "tooltip-$name" );
-
+ public static function titleAttrib( $name, $options = null, array $msgParams = array() ) {
+ $message = wfMessage( "tooltip-$name", $msgParams );
if ( !$message->exists() ) {
$tooltip = false;
} else {
/**
* Returns the attributes for the tooltip and access key.
+ *
* @param string $name
+ * @param array $msgParams Params for constructing the message
+ *
* @return array
*/
- public static function tooltipAndAccesskeyAttribs( $name ) {
+ public static function tooltipAndAccesskeyAttribs( $name, array $msgParams = array() ) {
# @todo FIXME: If Sanitizer::expandAttributes() treated "false" as "output
# no attribute" instead of "output '' as value for attribute", this
# would be three lines.
$attribs = array(
- 'title' => self::titleAttrib( $name, 'withaccess' ),
+ 'title' => self::titleAttrib( $name, 'withaccess', $msgParams ),
'accesskey' => self::accesskey( $name )
);
if ( $attribs['title'] === false ) {
if ( isset( $item['href'] ) || isset( $options['link-fallback'] ) ) {
$attrs = $item;
- foreach ( array( 'single-id', 'text', 'msg', 'tooltiponly', 'context', 'primary' ) as $k ) {
+ foreach ( array( 'single-id', 'text', 'msg', 'tooltiponly', 'context', 'primary',
+ 'tooltip-params' ) as $k ) {
unset( $attrs[$k] );
}
if ( isset( $item['id'] ) && !isset( $item['single-id'] ) ) {
$item['single-id'] = $item['id'];
}
+
+ $tooltipParams = array();
+ if ( isset( $item['tooltip-params'] ) ) {
+ $tooltipParams = $item['tooltip-params'];
+ }
+
if ( isset( $item['single-id'] ) ) {
if ( isset( $item['tooltiponly'] ) && $item['tooltiponly'] ) {
- $title = Linker::titleAttrib( $item['single-id'] );
+ $title = Linker::titleAttrib( $item['single-id'], null, $tooltipParams );
if ( $title !== false ) {
$attrs['title'] = $title;
}
} else {
- $tip = Linker::tooltipAndAccesskeyAttribs( $item['single-id'] );
+ $tip = Linker::tooltipAndAccesskeyAttribs( $item['single-id'], $tooltipParams );
if ( isset( $tip['title'] ) && $tip['title'] !== false ) {
$attrs['title'] = $tip['title'];
}
$nav_urls['contributions'] = array(
'text' => $this->msg( 'contributions', $rootUser )->text(),
- 'href' => self::makeSpecialUrlSubpage( 'Contributions', $rootUser )
+ 'href' => self::makeSpecialUrlSubpage( 'Contributions', $rootUser ),
+ 'tooltip-params' => array( $rootUser ),
);
$nav_urls['log'] = array(
if ( $this->showEmailUser( $user ) ) {
$nav_urls['emailuser'] = array(
- 'href' => self::makeSpecialUrlSubpage( 'Emailuser', $rootUser )
+ 'href' => self::makeSpecialUrlSubpage( 'Emailuser', $rootUser ),
+ 'tooltip-params' => array( $rootUser ),
);
}
"accesskey-import": "s",
"accesskey-watchlistedit-normal-submit": "s",
"accesskey-watchlistedit-raw-submit": "s",
- "tooltip-pt-userpage": "Your user page",
+ "tooltip-pt-userpage": "{{GENDER:|Your user}} page",
"tooltip-pt-anonuserpage": "The user page for the IP address you are editing as",
- "tooltip-pt-mytalk": "Your talk page",
+ "tooltip-pt-mytalk": "{{GENDER:|Your}} talk page",
"tooltip-pt-anontalk": "Discussion about edits from this IP address",
- "tooltip-pt-preferences": "Your preferences",
+ "tooltip-pt-preferences": "{{GENDER:|Your}} preferences",
"tooltip-pt-watchlist": "A list of pages you are monitoring for changes",
- "tooltip-pt-mycontris": "A list of your contributions",
+ "tooltip-pt-mycontris": "A list of {{GENDER:|your}} contributions",
"tooltip-pt-anoncontribs": "A list of edits made from this IP address",
"tooltip-pt-login": "You are encouraged to log in; however, it is not mandatory",
"tooltip-pt-logout": "Log out",
"tooltip-t-recentchangeslinked": "Recent changes in pages linked from this page",
"tooltip-feed-rss": "RSS feed for this page",
"tooltip-feed-atom": "Atom feed for this page",
- "tooltip-t-contributions": "A list of contributions by this user",
- "tooltip-t-emailuser": "Send an email to this user",
+ "tooltip-t-contributions": "A list of contributions by {{GENDER:$1|this user}}",
+ "tooltip-t-emailuser": "Send an email to {{GENDER:$1|this user}}",
"tooltip-t-info": "More information about this page",
"tooltip-t-upload": "Upload files",
"tooltip-t-specialpages": "A list of all special pages",
"tooltip-t-recentchangeslinked": "Used as tooltip for the link {{msg-mw|Recentchangeslinked}}.\n\nSee also:\n* {{msg-mw|Recentchangeslinked}}\n* {{msg-mw|Accesskey-t-recentchangeslinked}}\n* {{msg-mw|Tooltip-t-recentchangeslinked}}",
"tooltip-feed-rss": "Used as tooltip for RSS feed link.\n\nSee also:\n* {{msg-mw|Feed-rss}}\n* {{msg-mw|Accesskey-feed-rss}}\n* {{msg-mw|Tooltip-feed-rss}}",
"tooltip-feed-atom": "Used as tooltip for Atom feed link.\n\nSee also:\n* {{msg-mw|Feed-atom}}\n* {{msg-mw|Accesskey-feed-atom}}\n* {{msg-mw|Tooltip-feed-atom}}",
- "tooltip-t-contributions": "Tooltip shown when hovering over {{msg-mw|Contributions}} in the toolbox.\n\nSee also:\n* {{msg-mw|Contributions}}\n* {{msg-mw|Accesskey-t-contributions}}\n* {{msg-mw|Tooltip-t-contributions}}",
- "tooltip-t-emailuser": "Tooltip shown when hovering over the {{msg-mw|Emailuser}} link in the toolbox (sidebar, below).\n\nSee also:\n* {{msg-mw|Emailuser}}\n* {{msg-mw|Accesskey-t-emailuser}}\n* {{msg-mw|Tooltip-t-emailuser}}",
+ "tooltip-t-contributions": "Tooltip shown when hovering over {{msg-mw|Contributions}} in the toolbox.\n\nParameters:\n* $1 - Name of the user\n\nSee also:\n* {{msg-mw|Contributions}}\n* {{msg-mw|Accesskey-t-contributions}}\n* {{msg-mw|Tooltip-t-contributions}}",
+ "tooltip-t-emailuser": "Tooltip shown when hovering over the {{msg-mw|Emailuser}} link in the toolbox (sidebar, below).\n\nParameters:\n* $1 - Name of the user\n\nSee also:\n* {{msg-mw|Emailuser}}\n* {{msg-mw|Accesskey-t-emailuser}}\n* {{msg-mw|Tooltip-t-emailuser}}",
"tooltip-t-info": "Tooltip shown when hovering over the {{msg-mw|pageinfo-toolboxlink}} link in the toolbox (sidebar, below).",
"tooltip-t-upload": "Tooltip shown when hovering over the link to upload files shown in the side bar menu on all pages.\n\nSee also:\n* {{msg-mw|Upload}}\n* {{msg-mw|Accesskey-t-upload}}\n* {{msg-mw|Tooltip-t-upload}}\n{{Identical|Upload file}}",
"tooltip-t-specialpages": "The tooltip when hovering over the link {{msg-mw|Specialpages}} going to a list of all special pages available in the wiki.\n\nSee also:\n* {{msg-mw|Specialpages}}\n* {{msg-mw|Accesskey-t-specialpages}}\n* {{msg-mw|Tooltip-t-specialpages}}",