jenkins-bot has submitted this change and it was merged. Change subject: Selects html embed by default for logged-out users ......................................................................
Selects html embed by default for logged-out users Change-Id: Ie472905f0188637157632050ad0571043f04b324 Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/379 --- M resources/mmv/ui/mmv.ui.reuse.embed.js M tests/qunit/mmv/ui/mmv.ui.reuse.embed.test.js 2 files changed, 40 insertions(+), 9 deletions(-) Approvals: MarkTraceur: Looks good to me, approved jenkins-bot: Verified diff --git a/resources/mmv/ui/mmv.ui.reuse.embed.js b/resources/mmv/ui/mmv.ui.reuse.embed.js index 61cd271..20e709d 100644 --- a/resources/mmv/ui/mmv.ui.reuse.embed.js +++ b/resources/mmv/ui/mmv.ui.reuse.embed.js @@ -61,10 +61,10 @@ this.createSizePulldownMenus( this.$pane ); /** - * Currently selected embed snippet, defaults to wikitext. + * Currently selected embed snippet. * @property {jQuery} */ - this.$currentMainEmbedText = this.embedTextWikitext.$element; + this.$currentMainEmbedText = mw.user.isAnon() ? this.embedTextHtml.$element : this.embedTextWikitext.$element; /** * Default item for the html size menu. @@ -83,13 +83,13 @@ * @property {OO.ui.MenuWidget} */ this.currentSizeMenu = this.embedSizeSwitchWikitext.getMenu(); + this.currentSizeMenu = mw.user.isAnon() ? this.embedSizeSwitchHtml.getMenu() : this.embedSizeSwitchWikitext.getMenu(); /** * Current default item. * @property {OO.ui.MenuItemWidget} */ - this.currentDefaultItem = this.defaultWikitextItem; - + this.currentDefaultItem = mw.user.isAnon() ? this.defaultHtmlItem : this.defaultWikitextItem; } oo.inheritClass( Embed, mw.mmv.ui.reuse.Tab ); EP = Embed.prototype; @@ -107,8 +107,13 @@ * @param {jQuery} $container */ EP.createSnippetTextAreas = function( $container ) { + var wikitextClasses = [ 'mw-mmv-embed-text-wikitext' ], + htmlClasses = [ 'mw-mmv-embed-text-html' ]; + + ( mw.user.isAnon() ? htmlClasses : wikitextClasses ).push( 'active' ); + this.embedTextHtml = new oo.ui.TextInputWidget( { - classes: [ 'mw-mmv-embed-text-html' ], + classes: htmlClasses, multiline: true, readOnly: true } ); @@ -117,7 +122,7 @@ .prop( 'placeholder', mw.message( 'multimediaviewer-reuse-loading-placeholder' ).text() ); this.embedTextWikitext = new oo.ui.TextInputWidget( { - classes: [ 'mw-mmv-embed-text-wikitext', 'active' ], + classes: wikitextClasses, multiline: true, readOnly: true } ); @@ -141,6 +146,7 @@ EP.createSnippetSelectionButtons = function( $container ) { var wikitextButtonOption, htmlButtonOption; + this.embedSwitch = new oo.ui.ButtonSelectWidget( { classes: [ 'mw-mmv-embed-select' ] } ); @@ -161,7 +167,8 @@ .append( this.embedSwitch.$element ) .appendTo( $container ); - this.embedSwitch.selectItem( wikitextButtonOption ); + // Logged-out defaults to 'html', logged-in to 'wikitext' + this.embedSwitch.selectItem( mw.user.isAnon() ? htmlButtonOption : wikitextButtonOption ); }; /** @@ -170,19 +177,25 @@ * @param {jQuery} $container */ EP.createSizePulldownMenus = function( $container ) { + var wikitextClasses = [ 'mw-mmv-embed-size' ], + htmlClasses = [ 'mw-mmv-embed-size' ]; + + ( mw.user.isAnon() ? htmlClasses : wikitextClasses ).push( 'active' ); + // Wikitext sizes pulldown menu this.embedSizeSwitchWikitext = this.utils.createPulldownMenu( [ 'default', 'small', 'medium', 'large' ], - [ 'mw-mmv-embed-size', 'active' ], + wikitextClasses, 'default' ); // Html sizes pulldown menu this.embedSizeSwitchHtml = this.utils.createPulldownMenu( [ 'small', 'medium', 'large', 'original' ], - [ 'mw-mmv-embed-size' ], + htmlClasses, 'original' ); + $( '<p>' ) .append( @@ -411,6 +424,8 @@ .done( function ( thumbnail ) { embed.updateEmbedHtml( thumbnail ); embed.select(); + // This is needed to update the input's wikitext/html based on the currently selected item + embed.currentSizeMenu.selectItem( embed.currentSizeMenu.getSelectedItem() ); } ); }; diff --git a/tests/qunit/mmv/ui/mmv.ui.reuse.embed.test.js b/tests/qunit/mmv/ui/mmv.ui.reuse.embed.test.js index 29c7ebf..b1f12f3 100644 --- a/tests/qunit/mmv/ui/mmv.ui.reuse.embed.test.js +++ b/tests/qunit/mmv/ui/mmv.ui.reuse.embed.test.js @@ -373,4 +373,20 @@ assert.ok( ! embed.embedSizeSwitchHtml.getMenu().isVisible(), 'HTML size menu should be hidden.' ); } ); + QUnit.test( 'Logged out', 4, function ( assert ) { + var embed, + oldUserIsAnon = mw.user.isAnon; + + mw.user.isAnon = function () { return true; }; + + embed = new mw.mmv.ui.reuse.Embed( $qf ); + + assert.ok( ! embed.embedSizeSwitchWikitext.$element.hasClass( 'active' ), 'Wikitext widget should be hidden.' ); + assert.ok( embed.embedSizeSwitchHtml.$element.hasClass( 'active' ), 'HTML widget should be visible.' ); + assert.ok( ! embed.embedTextWikitext.$element.hasClass( 'active' ), 'Wikitext input should be hidden.' ); + assert.ok( embed.embedTextHtml.$element.hasClass( 'active' ), 'HTML input should be visible.' ); + + mw.user.isAnon = oldUserIsAnon; + } ); + }( mediaWiki, jQuery ) ); -- To view, visit https://gerrit.wikimedia.org/r/121064 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ie472905f0188637157632050ad0571043f04b324 Gerrit-PatchSet: 10 Gerrit-Project: mediawiki/extensions/MultimediaViewer Gerrit-Branch: master Gerrit-Owner: Gilles <[email protected]> Gerrit-Reviewer: Aarcos <[email protected]> Gerrit-Reviewer: Gergő Tisza <[email protected]> Gerrit-Reviewer: Gilles <[email protected]> Gerrit-Reviewer: MarkTraceur <[email protected]> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
