Henning Snater has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/123563

Change subject: Adjust statementview's edit toolbar definition to capture 
claimviews
......................................................................

Adjust statementview's edit toolbar definition to capture claimviews

The statementview edit toolbar definition is adjusted to apply
to claimviews as well. (bug 63070)

Change-Id: I5a766fcdef35555a3f7d80722abdf92c492537fd
---
M lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
M repo/resources/wikibase.ui.entityViewInit.js
2 files changed, 38 insertions(+), 32 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/63/123563/1

diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js 
b/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
index 9956665..29a1bef 100644
--- a/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
+++ b/lib/resources/jquery.wikibase/jquery.wikibase.claimlistview.js
@@ -444,26 +444,27 @@
 } );
 
 $.wikibase.toolbarcontroller.definition( 'edittoolbar', {
-       id: 'statementview',
+       id: 'claimview',
        selector: ':' + $.wikibase.claimlistview.prototype.namespace
                + '-' + $.wikibase.claimlistview.prototype.widgetName,
        events: {
-               statementviewcreate: function( event, toolbarcontroller ) {
-                       var $statementview = $( event.target ),
-                               statementview = $statementview.data( 
'statementview' );
+               'claimviewcreate statementviewcreate': function( event, 
toolbarcontroller ) {
+                       var viewType = event.type.replace( /create$/, '' ),
+                               $view = $( event.target ),
+                               view = $view.data( viewType );
 
-                       $statementview.edittoolbar( {
-                               interactionWidgetName: 
$.wikibase.statementview.prototype.widgetName,
+                       $view.edittoolbar( {
+                               interactionWidgetName: 
$.wikibase[viewType].prototype.widgetName,
                                parentWidgetFullName: 'wikibase.claimlistview',
-                               enableRemove: !!statementview.value()
+                               enableRemove: !!view.value()
                        } );
 
-                       $statementview.one( 'toolbareditgroupedit', function() {
+                       $view.one( 'toolbareditgroupedit', function() {
 
                                toolbarcontroller.registerEventHandler(
                                        event.data.toolbar.type,
                                        event.data.toolbar.id,
-                                       'statementviewdestroy',
+                                       viewType + 'destroy',
                                        function( event, toolbarController ) {
                                                
toolbarController.destroyToolbar( $( event.target ).data( 'editoolbar' ) );
                                        }
@@ -472,27 +473,27 @@
                                toolbarcontroller.registerEventHandler(
                                        event.data.toolbar.type,
                                        event.data.toolbar.id,
-                                       'statementviewchange',
+                                       viewType + 'change',
                                        function( event ) {
                                                var $target = $( event.target ),
-                                                       statementview = 
$target.data( 'statementview' ),
+                                                       view = $target.data( 
viewType ),
                                                        toolbar = $target.data( 
'edittoolbar' ).toolbar,
                                                        $btnSave = 
toolbar.editGroup.getButton( 'save' ),
                                                        btnSave = 
$btnSave.data( 'toolbarbutton' );
 
                                                /**
-                                                * Statementview's isValid() 
validates the qualifiers already. However, the
-                                                * information whether all 
qualifiers (grouped by property) have changed,
-                                                * needs to be gathered 
separately which, in addition, is done by this
-                                                * function.
+                                                * Claimview's/Statementview's 
isValid() validates the qualifiers already.
+                                                * However, the information 
whether all qualifiers (grouped by property)
+                                                * have changed, needs to be 
gathered separately which, in addition, is done
+                                                * by this function.
                                                 *
-                                                * @param 
{jquery.wikibase.statementview} statementview
+                                                * @param 
{jQuery.wikibase.claimview} claimview
                                                 * @return {boolean}
                                                 */
-                                               function 
shouldEnableSaveButton( statementview ) {
-                                                       var enable = 
statementview.isValid() && !statementview.isInitialValue(),
-                                                               snaklistviews = 
( statementview._qualifiers )
-                                                                       ? 
statementview._qualifiers.value()
+                                               function 
shouldEnableSaveButton( claimview ) {
+                                                       var enable = 
claimview.isValid() && !claimview.isInitialValue(),
+                                                               snaklistviews = 
( claimview._qualifiers )
+                                                                       ? 
claimview._qualifiers.value()
                                                                        : [],
                                                                
areInitialQualifiers = true;
 
@@ -504,10 +505,10 @@
                                                                }
                                                        }
 
-                                                       return enable && !( 
areInitialQualifiers && statementview.isInitialValue() );
+                                                       return enable && !( 
areInitialQualifiers && claimview.isInitialValue() );
                                                }
 
-                                               btnSave[shouldEnableSaveButton( 
statementview ) ? 'enable' : 'disable']();
+                                               btnSave[shouldEnableSaveButton( 
view ) ? 'enable' : 'disable']();
                                        }
                                );
 
diff --git a/repo/resources/wikibase.ui.entityViewInit.js 
b/repo/resources/wikibase.ui.entityViewInit.js
index e754f03..1b8984e 100644
--- a/repo/resources/wikibase.ui.entityViewInit.js
+++ b/repo/resources/wikibase.ui.entityViewInit.js
@@ -81,17 +81,22 @@
                        // The toolbars (defined per 
jquery.wikibase.toolbarcontroller.definition) that should
                        // be initialized:
                        var toolbarControllerConfig = {
-                               addtoolbar: ['claimgrouplistview', 
'claimlistview', 'claim-qualifiers-snak', 'references', 
'referenceview-snakview'],
-                               edittoolbar: ['statementview', 'referenceview'],
-                               removetoolbar: ['claim-qualifiers-snak', 
'referenceview-snakview-remove']
+                               addtoolbar: [
+                                       'claimgrouplistview',
+                                       'claimlistview',
+                                       'claim-qualifiers-snak',
+                                       'references',
+                                       'referenceview-snakview'
+                               ],
+                               edittoolbar: ['claimview', 'referenceview'],
+                               removetoolbar: ['claim-qualifiers-snak', 
'referenceview-snakview-remove'],
+                               movetoolbar: [
+                                       'claimlistview-claimview',
+                                       'claim-qualifiers-snak',
+                                       'statementview-referenceview',
+                                       'referenceview-snakview'
+                               ]
                        };
-
-                       toolbarControllerConfig.movetoolbar = [
-                               'claimlistview-claimview',
-                               'claim-qualifiers-snak',
-                               'statementview-referenceview',
-                               'referenceview-snakview'
-                       ];
 
                        // TODO: Initialize toolbarcontroller on entity node 
when initializing entityview on
                        // the entity node (see FIXME below).

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I5a766fcdef35555a3f7d80722abdf92c492537fd
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Henning Snater <[email protected]>

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

Reply via email to