jenkins-bot has submitted this change and it was merged.

Change subject: entitytermsview: Inject link to help page
......................................................................


entitytermsview: Inject link to help page

Bug: T86191
Change-Id: I15748ced5c0e82adfa887801ac6c53454eac1b15
---
M lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
M lib/resources/jquery.wikibase/resources.php
M 
lib/resources/jquery.wikibase/themes/default/jquery.wikibase.entitytermsview.css
M repo/i18n/en.json
M repo/i18n/qqq.json
5 files changed, 79 insertions(+), 2 deletions(-)

Approvals:
  Adrian Lang: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
index 5f2526d..bcba6ff 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.entitytermsview.js
@@ -87,6 +87,11 @@
        $entitytermsforlanguagelistviewToggler: null,
 
        /**
+        * @type {jQuery|null}
+        */
+       $entitytermsforlanguagelistviewHelp: null,
+
+       /**
         * @see jQuery.ui.TemplatedWidget._create
         */
        _create: function() {
@@ -167,6 +172,10 @@
                        this.$entitytermsforlanguagelistviewToggler.remove();
                }
 
+               if( this.$entitytermsforlanguagelistviewHelp ) {
+                       this.$entitytermsforlanguagelistviewHelp.remove();
+               }
+
                this.element.off( '.' + this.widgetName );
                this.element.removeClass( 'wikibase-entitytermsview' );
                PARENT.prototype.destroy.call( this );
@@ -223,7 +232,8 @@
         * @private
         */
        _createEntitytermsforlanguagelistviewToggler: function() {
-               var api = new mw.Api();
+               var self = this,
+                       api = new mw.Api();
 
                this.$entitytermsforlanguagelistviewToggler = $( '<div/>' )
                        .addClass( 
'wikibase-entitytermsview-entitytermsforlanguagelistview-toggler' )
@@ -251,11 +261,55 @@
                                                );
                                        } );
                                }
+
+                               // Show "help" link only if the toggler content 
is visible (decided by Product
+                               // Management):
+                               if( self.$entitytermsforlanguagelistviewHelp ) {
+                                       
self.$entitytermsforlanguagelistviewHelp.toggleClass(
+                                               
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure-hidden',
+                                               !params.visible
+                                       );
+                               }
                        } );
 
                this.$entitytermsforlanguagelistviewContainer.before(
                        this.$entitytermsforlanguagelistviewToggler
                );
+
+               // Inject link to page providing help about how to configure 
languages:
+               // TODO: Remove as soon as soon as some user-friendly mechanism 
is implemented to define
+               // user languages.
+
+               if( mw.config.get( 'wbUserSpecifiedLanguages' ).length > 1 ) {
+                       // User applied custom configuration, no need to show 
link to help page.
+                       return;
+               }
+
+               var toggler = this.$entitytermsforlanguagelistviewToggler.data( 
'toggler' );
+
+               this.$entitytermsforlanguagelistviewHelp =
+                       $( '<span/>' )
+                       .addClass( 
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure' )
+                       .append(
+                               $( '<a/>' )
+                               .attr(
+                                       'href',
+                                       mw.msg(
+                                               
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link'
+                                       )
+                               )
+                               .text( mw.msg(
+                                       
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link-label'
+                               ) )
+                       )
+                       .insertAfter( 
this.$entitytermsforlanguagelistviewToggler );
+
+               if( !toggler.option( '$subject' ).is( ':visible' ) ) {
+                       this.$entitytermsforlanguagelistviewHelp
+                               .addClass(
+                                       
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure-hidden'
+                               );
+               }
        },
 
        /**
diff --git a/lib/resources/jquery.wikibase/resources.php 
b/lib/resources/jquery.wikibase/resources.php
index 2b1953f..bd87917 100644
--- a/lib/resources/jquery.wikibase/resources.php
+++ b/lib/resources/jquery.wikibase/resources.php
@@ -186,11 +186,14 @@
                                'jquery.ui.toggler',
                                
'jquery.wikibase.entitytermsforlanguagelistview',
                                'mediawiki.api',
+                               'mediawiki.Title',
                                'mediawiki.user',
                        ),
                        'messages' => array(
-                               'wikibase-description-empty',
+                               
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link',
+                               
'wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link-label',
                                
'wikibase-entitytermsview-entitytermsforlanguagelistview-toggler',
+                               'wikibase-description-empty',
                                'wikibase-label-empty',
                                'wikibase-terms',
                        ),
diff --git 
a/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.entitytermsview.css
 
b/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.entitytermsview.css
index 9075e89..994f872 100644
--- 
a/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.entitytermsview.css
+++ 
b/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.entitytermsview.css
@@ -54,6 +54,22 @@
 }
 
 
+.wikibase-entitytermsview 
.wikibase-entitytermsview-entitytermsforlanguagelistview-toggler {
+       display: inline-block;
+       margin-top: 0.5em;
+}
+
+.wikibase-entitytermsview 
.wikibase-entitytermsview-entitytermsforlanguagelistview-configure {
+       display: inline-block;
+       font-size: 0.7em;
+       margin-left: 0.4em;
+       vertical-align: super;
+}
+.wikibase-entitytermsview 
.wikibase-entitytermsview-entitytermsforlanguagelistview-configure-hidden {
+       display: none;
+}
+
+
 .wikibase-entitytermsview .wikibase-toolbar-container {
        width: auto;
 }
diff --git a/repo/i18n/en.json b/repo/i18n/en.json
index 8006601..a5fe18f 100644
--- a/repo/i18n/en.json
+++ b/repo/i18n/en.json
@@ -25,6 +25,8 @@
        "wikibase-save-inprogress": "Saving…",
        "wikibase-remove-inprogress": "Removing…",
        "wikibase-entitytermsview-entitytermsforlanguagelistview-toggler": "In 
more languages",
+       
"wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link": 
"https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Wikibase/Configuring_languages";,
+       
"wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link-label": 
"Configure",
        "wikibase-setting-entitytermsview-showEntitytermslistview": "Show 
labels, aliases and descriptions in all my languages on page load",
        "wikibase-setting-entitytermsview-showEntitytermslistview-help": 
"Personal languages additional to the user interface language may be set using 
the [[mw:Extension:Babel|Babel extension]] syntax on the user page.",
        "wikibase-entitytermsforlanguagelistview-aliases": "Also known as",
diff --git a/repo/i18n/qqq.json b/repo/i18n/qqq.json
index b47a5e0..c34927b 100644
--- a/repo/i18n/qqq.json
+++ b/repo/i18n/qqq.json
@@ -52,6 +52,8 @@
        "wikibase-save-inprogress": "[[File:Screenshot WikidataRepo 2012-05-25 
L.png|right|350px]]\n[[File:Screenshot WikidataRepo 2012-05-25 
J.png|right|350px]]\n[[File:Screenshot WikidataRepo 2012-05-25 
K.png|right|350px]]\nThis is a generic placeholder message used while a save is 
in progress, and replaces the save and cancel links.\n{{Identical|Saving}}",
        "wikibase-remove-inprogress": "[[File:Screenshot WikidataRepo 
2012-05-25 L.png|right|350px]]\n[[File:Screenshot WikidataRepo 2012-05-25 
M.png|right|350px]]\nThis is a generic placeholder message used while a remove 
is in progress, and replaces the edit and remove.",
        "wikibase-entitytermsview-entitytermsforlanguagelistview-toggler": 
"Link to show/hide the list of labels, aliases and descriptions in the user's 
languages. The list is part of an entity's user interface representation header 
and may be used to view and alter labels, aliases and descriptions in the 
languages configured by the user.",
+       
"wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link": "Link 
to (URL of) the help page providing information about how to configure the list 
of languages. The link is shown next to the link to show/hide the language list 
if the user has JavaScript enabled and not yet configured one or more 
[[mw:Extension:Babel|Babel boxes]] on his/her user page.",
+       
"wikibase-entitytermsview-entitytermsforlanguagelistview-configure-link-label": 
"Label of the link to the help page providing information about how to 
configure the list of languages. The link is shown next to the link to 
show/hide the language list if the user has JavaScript enabled and not yet 
configured one or more [[mw:Extension:Babel|Babel boxes]] on his/her user 
page.",
        "wikibase-setting-entitytermsview-showEntitytermslistview": "Label for 
the user setting that allows showing labels, aliases and descriptions in all of 
the user's languages on page load. The settings is available only if the 
[[mw:Extension:Babel|Babel extension]] is installed.",
        "wikibase-setting-entitytermsview-showEntitytermslistview-help": "Help 
message for the user setting that allows showing labels, aliases and 
descriptions in all of the user's languages on page load. The settings is 
available only if the [[mw:Extension:Babel|Babel extension]] is installed. 
Hence, the help message may contain advice on how to activate languages 
additional to the user interface language.",
        "wikibase-entitytermsforlanguagelistview-aliases": "List of labels, 
aliases and descriptions in one or more languages: Heading of the \"aliases\" 
column. (see [[d:Wikidata:Glossary]])",

-- 
To view, visit https://gerrit.wikimedia.org/r/184907
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I15748ced5c0e82adfa887801ac6c53454eac1b15
Gerrit-PatchSet: 16
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Henning Snater <[email protected]>
Gerrit-Reviewer: Adrian Lang <[email protected]>
Gerrit-Reviewer: Henning Snater <[email protected]>
Gerrit-Reviewer: Lydia Pintscher <[email protected]>
Gerrit-Reviewer: Nemo bis <[email protected]>
Gerrit-Reviewer: Siebrand <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to