Henning Snater has uploaded a new change for review. https://gerrit.wikimedia.org/r/174089
Change subject: Factored out error output generation from wbtooltip ...................................................................... Factored out error output generation from wbtooltip Change-Id: I02a2898f7a9f5ec7b8c9e5ced38fe0a8ca3ed777 --- M lib/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js M lib/resources/jquery.wikibase/resources.php M lib/resources/jquery.wikibase/themes/default/jquery.wikibase.wbtooltip.css M repo/resources/utilities/resources.php M repo/resources/utilities/wikibase.utilities.ui.css M repo/resources/utilities/wikibase.utilities.ui.js 6 files changed, 60 insertions(+), 45 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase refs/changes/89/174089/1 diff --git a/lib/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js b/lib/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js index b51474e..dc1b0f7 100644 --- a/lib/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js +++ b/lib/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js @@ -2,7 +2,7 @@ * @licence GNU GPL v2+ * @author H. Snater < [email protected] > */ -( function( mw, $ ) { +( function( mw, wb, $ ) { 'use strict'; @@ -12,7 +12,7 @@ * Tooltip widget enhancing jQuery.tipsy. * @since 0.4 * - * @option content {string|jQuery|wb.Error} The tooltip balloon's content. + * @option content {string|jQuery|Error} The tooltip balloon's content. * (REQUIRED) * * @option permanent {boolean} Whether the tooltip shall be visible permanently (only closing with a @@ -283,29 +283,8 @@ * @TODO: Error tooltip should be a separate tooltip derivative. */ _buildErrorTooltip: function() { - var $message = $( '<div/>' ).addClass( 'wb-error ' + this.widgetFullName + '-error' ), - $mainMessage = $( '<div/>' ).text( this.options.content.message ).appendTo( $message ); - - // Append detailed error message if given; hide it behind toggle: - if( this.options.content.detailedMessage ) { - $mainMessage.addClass( this.widgetFullName + '-error-top-message' ); - - var $detailedMessage = $( '<div/>', { - 'class': this.widgetFullName + '-error-details', - html: this.options.content.detailedMessage - } ) - .hide(); - - var $toggler = $( '<a/>' ) - .addClass( this.widgetFullName + '-error-details-link' ) - .text( mw.msg( 'wikibase-tooltip-error-details' ) ) - .toggler( { $subject: $detailedMessage, duration: 'fast' } ); - - $toggler.appendTo( $message ); - $detailedMessage.appendTo( $message ); - } - - return $message; + return wb.utilities.ui.buildErrorOutput( this.options.content ) + .addClass( this.widgetFullName + '-error' ); }, /** @@ -321,4 +300,4 @@ } ); -} )( mediaWiki, jQuery ); +} )( mediaWiki, wikibase, jQuery ); diff --git a/lib/resources/jquery.wikibase/resources.php b/lib/resources/jquery.wikibase/resources.php index 18cf39d..53f81c5 100644 --- a/lib/resources/jquery.wikibase/resources.php +++ b/lib/resources/jquery.wikibase/resources.php @@ -467,11 +467,8 @@ ), 'dependencies' => array( 'jquery.tipsy', - 'jquery.ui.toggler', 'jquery.ui.widget', - ), - 'messages' => array( - 'wikibase-tooltip-error-details', + 'wikibase.utilities', ), ), diff --git a/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.wbtooltip.css b/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.wbtooltip.css index 429aef1..47bee02 100644 --- a/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.wbtooltip.css +++ b/lib/resources/jquery.wikibase/themes/default/jquery.wikibase.wbtooltip.css @@ -33,19 +33,4 @@ border-color: #B27631; } -.wikibase-wbtooltip-tip .wikibase-wbtooltip-error-top-message { - border-bottom:1px dotted #B27631; - padding-bottom:1em; -} - -.wikibase-wbtooltip-tip .wikibase-wbtooltip-error-details { - margin-top: .2em; - margin-bottom: .5em; - font-family: 'Courier New', Courier, 'Andale Mono', serif; - background-color: #FFF2E4; - padding: .2em; - border-radius: 5px; - font-size: .9em; -} - /***** /ERROR TOOLTIP *****/ diff --git a/repo/resources/utilities/resources.php b/repo/resources/utilities/resources.php index 841939a..537a846 100644 --- a/repo/resources/utilities/resources.php +++ b/repo/resources/utilities/resources.php @@ -49,6 +49,7 @@ 'dependencies' => array( 'wikibase', 'jquery.tipsy', + 'jquery.ui.toggler', 'util.inherit', 'mediawiki.language', ), @@ -60,6 +61,7 @@ 'wikibase-deletedentity-item', 'wikibase-deletedentity-property', 'wikibase-deletedentity-query', + 'wikibase-tooltip-error-details', 'word-separator', 'parentheses', ), diff --git a/repo/resources/utilities/wikibase.utilities.ui.css b/repo/resources/utilities/wikibase.utilities.ui.css index 9a1ad26..7604a3a 100644 --- a/repo/resources/utilities/wikibase.utilities.ui.css +++ b/repo/resources/utilities/wikibase.utilities.ui.css @@ -62,3 +62,23 @@ } /****** /PENDING-COUNTER ******/ + + +/***** ERROR OUTPUT *****/ + +.wb-error .wb-error-message { + border-bottom: 1px dotted #B27631; + padding-bottom: 1em; +} + +.wb-error .wb-error-details { + margin-top: .2em; + margin-bottom: .5em; + font-family: 'Courier New', Courier, 'Andale Mono', serif; + background-color: #FFF2E4; + padding: .2em; + border-radius: 5px; + font-size: .9em; +} + +/***** /ERROR OUTPUT *****/ diff --git a/repo/resources/utilities/wikibase.utilities.ui.js b/repo/resources/utilities/wikibase.utilities.ui.js index aed9964..e727299 100644 --- a/repo/resources/utilities/wikibase.utilities.ui.js +++ b/repo/resources/utilities/wikibase.utilities.ui.js @@ -179,4 +179,36 @@ return $msg; }; + /** + * Generates standardized output for errors. + * + * @param {Error} error + * @return {jQuery} + */ + wb.utilities.ui.buildErrorOutput = function( error ) { + var $message = $( '<div/>' ).addClass( 'wb-error' ); + + $message.append( $( '<div/>' ).addClass( 'wb-error-message' ).text( error.message ) ); + + // Append detailed error message if given; hide it behind toggle: + if( error.detailedMessage ) { + var $detailedMessage = $( '<div/>', { + 'class': 'wb-error-details', + html: error.detailedMessage + } ) + .hide(); + + var $toggler = $( '<a/>' ) + .addClass( 'wb-error-details-link' ) + .text( mw.msg( 'wikibase-tooltip-error-details' ) ) + .toggler( { $subject: $detailedMessage, duration: 'fast' } ); + + $message + .append( $toggler ) + .append( $detailedMessage ); + } + + return $message; + }; + }( mediaWiki, wikibase, jQuery ) ); -- To view, visit https://gerrit.wikimedia.org/r/174089 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I02a2898f7a9f5ec7b8c9e5ced38fe0a8ca3ed777 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
