jenkins-bot has submitted this change and it was merged.
Change subject: Keep a reference of leaflet layer objects created in the code,
for internal/developer use.
......................................................................
Keep a reference of leaflet layer objects created
in the code, for internal/developer use.
Bug: T134202
Change-Id: I0201df4f427ecc18d066336ee221054daa2f7153
---
M modules/kartographer.js
1 file changed, 17 insertions(+), 6 deletions(-)
Approvals:
Yurik: Looks good to me, approved
jenkins-bot: Verified
diff --git a/modules/kartographer.js b/modules/kartographer.js
index d8e7c43..9782318 100644
--- a/modules/kartographer.js
+++ b/modules/kartographer.js
@@ -1,7 +1,6 @@
( function ( $, mw ) {
// Load this script after lib/mapbox-lib.js
-
var scale, urlFormat, windowManager, mapDialog,
mapServer = mw.config.get( 'wgKartographerMapServer' ),
forceHttps = mapServer[ 4 ] === 's',
@@ -96,17 +95,26 @@
map.addControl( new mw.kartographer.FullScreenControl(
{ mapPositionData: data } ) );
}
- L.tileLayer( mapServer + '/' + style + urlFormat, {
+ /**
+ * @property {L.TileLayer} Reference to `Wikimedia` tile layer.
+ */
+ map.wikimediaLayer = L.tileLayer( mapServer + '/' + style +
urlFormat, {
maxZoom: 18,
attribution: mw.message( 'kartographer-attribution'
).parse()
} ).addTo( map );
+
+ /**
+ * @property {Object} Hash map of data groups and their
corresponding
+ * {@link L.mapbox.FeatureLayer layers}.
+ */
+ map.dataLayers = {};
if ( data.overlays ) {
getMapGroupData( data.overlays ).done( function (
mapData ) {
$.each( data.overlays, function ( index, group
) {
if ( mapData.hasOwnProperty( group ) &&
mapData[ group ] ) {
- mw.kartographer.addDataLayer(
map, mapData[ group ] );
+ map.dataLayers[ group ] =
mw.kartographer.addDataLayer( map, mapData[ group ] );
} else {
mw.log( 'Layer not found or
contains no data: "' + group + '"' );
}
@@ -114,7 +122,6 @@
} );
}
-
return map;
};
@@ -314,6 +321,8 @@
}
mw.hook( 'wikipage.content' ).add( function ( $content ) {
+ var mapsInArticle = [];
+
$content.on( 'click', '.mw-kartographer-link', function ( ) {
var data = getMapData( this );
@@ -328,7 +337,6 @@
sleepNote: false,
sleepOpacity: 1
} );
-
$content.find( '.mw-kartographer-interactive' ).each( function
() {
var map,
data = getMapData( this );
@@ -338,13 +346,16 @@
map = mw.kartographer.createMap( this, data );
map.doubleClickZoom.disable();
- mw.hook( 'wikipage.maps' ).fire( map, false /*
isFullScreen */ );
+ mapsInArticle.push( map );
$( this ).on( 'dblclick', function () {
mw.kartographer.openFullscreenMap(
data, map );
} );
}
} );
+
+ // Allow customizations of interactive maps in article.
+ mw.hook( 'wikipage.maps' ).fire( mapsInArticle, false /*
isFullScreen */ );
} );
}( jQuery, mediaWiki ) );
--
To view, visit https://gerrit.wikimedia.org/r/286530
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I0201df4f427ecc18d066336ee221054daa2f7153
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/Kartographer
Gerrit-Branch: master
Gerrit-Owner: JGirault <[email protected]>
Gerrit-Reviewer: MaxSem <[email protected]>
Gerrit-Reviewer: Yurik <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits