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

Change subject: Fix references counter when saving whole statement
......................................................................


Fix references counter when saving whole statement

The change in `jquery.ui.EditableTemplatedWidget` conflicted with bad unit test
fixtures, so I removed them.

Bug: T117668
Change-Id: Id7d239b50904d39d0494594ddc40c153207db9d0
---
M view/resources/jquery/ui/jquery.ui.EditableTemplatedWidget.js
M view/resources/jquery/wikibase/jquery.wikibase.statementview.js
M 
view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
M view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js
4 files changed, 8 insertions(+), 25 deletions(-)

Approvals:
  Jonas Kress (WMDE): Looks good to me, approved
  Thiemo Mättig (WMDE): Looks good to me, approved
  jenkins-bot: Verified



diff --git a/view/resources/jquery/ui/jquery.ui.EditableTemplatedWidget.js 
b/view/resources/jquery/ui/jquery.ui.EditableTemplatedWidget.js
index d84bb50..5ed7278 100644
--- a/view/resources/jquery/ui/jquery.ui.EditableTemplatedWidget.js
+++ b/view/resources/jquery/ui/jquery.ui.EditableTemplatedWidget.js
@@ -132,8 +132,8 @@
                        return this._afterStopEditing( dropValue );
                } else {
                        this._save()
-                       .done( function() {
-                               self.options.value = self.value();
+                       .done( function( savedValue ) {
+                               self.options.value = savedValue || self.value();
                                self._afterStopEditing( dropValue )
                                .done( function() {
                                        deferred.resolve( dropValue );
diff --git a/view/resources/jquery/wikibase/jquery.wikibase.statementview.js 
b/view/resources/jquery/wikibase/jquery.wikibase.statementview.js
index bfe7548..82b1e39 100644
--- a/view/resources/jquery/wikibase/jquery.wikibase.statementview.js
+++ b/view/resources/jquery/wikibase/jquery.wikibase.statementview.js
@@ -687,12 +687,16 @@
         * @protected
         */
        _stopEditingReferences: function( dropValue ) {
-               $.each( this._referencesListview.value(), function ( key, 
referenceView ) {
+               var references = !dropValue && 
this.options.value.getReferences().toArray();
+
+               $.each( this._referencesListview.value(), function ( i, 
referenceView ) {
                        if ( !dropValue ) {
-                               referenceView.value( referenceView.value() );
+                               referenceView.value( references[ i ] );
                        }
                        referenceView.stopEditing();
                } );
+
+               this._drawReferencesCounter();
        },
 
        /**
diff --git 
a/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
 
b/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
index 5fefeb6..c0763d5 100644
--- 
a/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
+++ 
b/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
@@ -39,19 +39,6 @@
                .addClass( 'test_entitytermsforlanguageview' )
                .entitytermsforlanguageview( options );
 
-       var entitytermsforlanguageview
-               = $entitytermsforlanguageview.data( 
'entitytermsforlanguageview' );
-
-       entitytermsforlanguageview.$labelview.data( 'labelview' )._save
-               = entitytermsforlanguageview.$aliasesview.data( 'aliasesview' 
)._save
-               = function() {
-                       return $.Deferred().resolve( {
-                               entity: {
-                                       lastrevid: 'I am a revision id'
-                               }
-                       } ).promise();
-               };
-
        return $entitytermsforlanguageview;
 };
 
diff --git 
a/view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js 
b/view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js
index 394f43a..34b8d76 100644
--- a/view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js
+++ b/view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js
@@ -22,14 +22,6 @@
                .addClass( 'test_labelview' )
                .labelview( options );
 
-       $labelview.data( 'labelview' )._save = function() {
-               return $.Deferred().resolve( {
-                       entity: {
-                               lastrevid: 'I am a revision id'
-                       }
-               } ).promise();
-       };
-
        return $labelview;
 };
 

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Id7d239b50904d39d0494594ddc40c153207db9d0
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Adrian Lang <[email protected]>
Gerrit-Reviewer: Adrian Lang <[email protected]>
Gerrit-Reviewer: Jonas Kress (WMDE) <[email protected]>
Gerrit-Reviewer: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

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

Reply via email to