Mooeypoo has uploaded a new change for review.

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

Change subject: Ask for whole revision when checking for existing TemplateData
......................................................................

Ask for whole revision when checking for existing TemplateData

When checking whether a related page (parent for /doc page or
vice versa) already has a templatedata string, we shouldn't
ask for the 'templatedata' action but rather the effective and
actual content of the related page, otherwise we get embedded
templatedata and wrong information is presented.

Change-Id: I9788e2beb0809ac3e676a90cd0dfe519c005afc9
---
M modules/ext.templateDataGenerator.ui.js
1 file changed, 20 insertions(+), 11 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/TemplateData 
refs/changes/66/191766/1

diff --git a/modules/ext.templateDataGenerator.ui.js 
b/modules/ext.templateDataGenerator.ui.js
index 0c886cb..2ca2eef 100644
--- a/modules/ext.templateDataGenerator.ui.js
+++ b/modules/ext.templateDataGenerator.ui.js
@@ -158,19 +158,28 @@
                                // Check if there's already a templatedata in a 
related page
                                relatedPage = isDocPage ? parentPage : pageName 
+ '/doc';
                                editOpenDialogButton.setDisabled( true );
-                               mw.TemplateData.Model.static.getApi( 
relatedPage, true )
+                               mw.TemplateData.Model.static.getApi( 
relatedPage )
                                        .then( function ( result ) {
-                                               var msg;
-                                               if ( !$.isEmptyObject( 
result.pages ) ) {
-                                                       // HACK: Setting a link 
in the messages doesn't work. The bug report offers
-                                                       // a somewhat hacky 
work around that includes setting a separate message
-                                                       // to be parsed.
-                                                       // 
https://phabricator.wikimedia.org/T49395#490610
-                                                       msg = mw.message( 
'templatedata-exists-on-related-page', relatedPage ).plain();
-                                                       mw.messages.set( { 
'templatedata-string-exists-hack-message': msg } );
-                                                       msg = mw.message( 
'templatedata-string-exists-hack-message' ).parse();
+                                               var msg, parts, content,
+                                                       response = 
result.query.pages[ result.query.pageids[0] ];
 
-                                                       
editArea.setNoticeMessage( msg, 'error', true );
+                                               if ( response.missing === 
undefined ) {
+                                                       content = 
response.revisions[0]['*'];
+                                                       parts = content.match(
+                                                               
/<templatedata>([\s\S]*?)<\/templatedata>/i
+                                                       );
+                                                       // There's a 
templatedata string
+                                                       if ( parts.length > 0 ) 
{
+                                                               // HACK: 
Setting a link in the messages doesn't work. The bug report offers
+                                                               // a somewhat 
hacky work around that includes setting a separate message
+                                                               // to be parsed.
+                                                               // 
https://phabricator.wikimedia.org/T49395#490610
+                                                               msg = 
mw.message( 'templatedata-exists-on-related-page', relatedPage ).plain();
+                                                               
mw.messages.set( { 'templatedata-string-exists-hack-message': msg } );
+                                                               msg = 
mw.message( 'templatedata-string-exists-hack-message' ).parse();
+
+                                                               
editArea.setNoticeMessage( msg, 'error', true );
+                                                       }
                                                }
                                                
editOpenDialogButton.setDisabled( false );
                                        } );

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9788e2beb0809ac3e676a90cd0dfe519c005afc9
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/TemplateData
Gerrit-Branch: master
Gerrit-Owner: Mooeypoo <[email protected]>

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

Reply via email to