jenkins-bot has submitted this change and it was merged. Change subject: Implement the new schema for when the popups are disabled ......................................................................
Implement the new schema for when the popups are disabled Bug: T88167 Change-Id: If8f1c97379bd37958ec6064242bdebf5fde14b47 --- M resources/ext.popups.core.js M resources/ext.popups.logger.js 2 files changed, 34 insertions(+), 5 deletions(-) Approvals: Werdna: Looks good to me, approved Nuria: Looks good to me, but someone else must approve jenkins-bot: Verified diff --git a/resources/ext.popups.core.js b/resources/ext.popups.core.js index dbb454f..fa4a26e 100644 --- a/resources/ext.popups.core.js +++ b/resources/ext.popups.core.js @@ -164,12 +164,39 @@ }; mw.hook( 'wikipage.content').add( function ( $content ) { - if ( mw.popups.enabled ) { - mw.popups.$content = $content; + mw.popups.$content = $content; + var $elements = mw.popups.selectPopupElements(); - var $elements = mw.popups.selectPopupElements(); + if ( mw.popups.enabled ) { mw.popups.removeTooltips( $elements ); mw.popups.setupTriggers( $elements ); + } else { + // Events are logged even when Hovercards are disabled + // See T88166 for details + $elements.on( 'click', function ( event ) { + if ( mw.popups.logger === undefined ) { + return true; + } + + var + $this = $( this ), + href = $this.attr( 'href' ), + action = mw.popups.logger.getAction( event ), + logEvent = { + pageTitleHover: $this.attr( 'title' ), + pageTitleSource: mw.config.get( 'wgTitle' ), + popupEnabled: mw.popups.enabled, + action: action + }, + logPromise = mw.popups.logger.log( logEvent ); + + if ( action === 'opened in same tab' ) { + event.preventDefault(); + logPromise.then( function () { + window.location.href = href; + } ); + } + } ); } } ); diff --git a/resources/ext.popups.logger.js b/resources/ext.popups.logger.js index e2b3ef2..e08297c 100644 --- a/resources/ext.popups.logger.js +++ b/resources/ext.popups.logger.js @@ -40,8 +40,10 @@ } // Get duration from time - event.duration = Math.floor( mw.now() - event.time ); - delete event.time; + if ( $.isNumeric( event.time ) ) { + event.duration = Math.floor( mw.now() - event.time ); + delete event.time; + } return mw.eventLog.logEvent( 'Popups', event ); }; -- To view, visit https://gerrit.wikimedia.org/r/199828 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: If8f1c97379bd37958ec6064242bdebf5fde14b47 Gerrit-PatchSet: 3 Gerrit-Project: mediawiki/extensions/Popups Gerrit-Branch: master Gerrit-Owner: Prtksxna <psax...@wikimedia.org> Gerrit-Reviewer: Nuria <nu...@wikimedia.org> Gerrit-Reviewer: Werdna <agarr...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits