Send events when user taps download icon
To track "download" button interactions we have to notify EventLogging that button was clicked. The easiest approach is to use mw.track() and then in WikimediaEvents subscribe to the `minerva.downloadAsPdf` events and track page impressions. Bug: T181297 Change-Id: Iecbebe37c165dda3f26af47906662f6e5a81321d
This commit is contained in:
parent
a8470464b7
commit
3c4f3a0ddd
|
@ -1,4 +1,4 @@
|
|||
( function ( M ) {
|
||||
( function ( M, track ) {
|
||||
|
||||
var msg = mw.msg,
|
||||
MAX_PRINT_TIMEOUT = 3000,
|
||||
|
@ -47,13 +47,18 @@
|
|||
|
||||
function doPrint() {
|
||||
self.timeout = clearTimeout( self.timeout );
|
||||
track( 'minerva.downloadAsPDF', {
|
||||
action: 'callPrint'
|
||||
} );
|
||||
window.print();
|
||||
hideSpinner();
|
||||
}
|
||||
|
||||
// The click handler may be invoked multiple times so if a pending print is occurring
|
||||
// do nothing.
|
||||
if ( !this.timeout ) {
|
||||
track( 'minerva.downloadAsPDF', {
|
||||
action: 'fetchImages'
|
||||
} );
|
||||
this.showSpinner();
|
||||
// If all image downloads are taking longer to load then the MAX_PRINT_TIMEOUT
|
||||
// abort the spinner and print regardless.
|
||||
|
@ -71,4 +76,4 @@
|
|||
} );
|
||||
|
||||
M.define( 'skins.minerva.scripts/DownloadIcon', DownloadIcon );
|
||||
}( mw.mobileFrontend ) );
|
||||
}( mw.mobileFrontend, mw.track ) );
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
( function ( M, $ ) {
|
||||
( function ( M, track, $ ) {
|
||||
var
|
||||
config = mw.config,
|
||||
toast = M.require( 'mobile.startup/toast' ),
|
||||
|
@ -245,8 +245,11 @@
|
|||
// left-most in the display. Since we want the download button to be to
|
||||
// the left of the watchstar, we put it after it in the DOM.
|
||||
new DownloadIcon( skin ).$el.insertAfter( '#ca-watch' );
|
||||
track( 'minerva.downloadAsPDF', {
|
||||
action: 'buttonVisible'
|
||||
} );
|
||||
}
|
||||
} );
|
||||
|
||||
M.define( 'skins.minerva.scripts/overlayManager', overlayManager );
|
||||
}( mw.mobileFrontend, jQuery ) );
|
||||
}( mw.mobileFrontend, mw.track, jQuery ) );
|
||||
|
|
Loading…
Reference in New Issue