JGirault has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/286530

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, 19 insertions(+), 8 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Kartographer 
refs/changes/30/286530/1

diff --git a/modules/kartographer.js b/modules/kartographer.js
index d8e7c43..07bfa69 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, {
-                       maxZoom: 18,
-                       attribution: mw.message( 'kartographer-attribution' 
).parse()
-               } ).addTo( map );
+               /**
+                * @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;
        };
 
@@ -329,6 +336,7 @@
                        sleepOpacity: 1
                } );
 
+               var mapsInArticle = [];
                $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: newchange
Gerrit-Change-Id: I0201df4f427ecc18d066336ee221054daa2f7153
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Kartographer
Gerrit-Branch: master
Gerrit-Owner: JGirault <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to