[MediaWiki-commits] [Gerrit] mediawiki...Kartographer[master]: Implement third phase of event logging (Wikivoyage specific)

2016-12-13 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/324843 )

Change subject: Implement third phase of event logging (Wikivoyage specific)
..


Implement third phase of event logging (Wikivoyage specific)

* Data layers now have a convenient reference to their corresponding data group

Bug: T151929
Change-Id: I2545a2258dfc3772acf56a5c0589002e18be1b30
---
M modules/box/Map.js
M modules/wikivoyage/ControlLayers.js
M modules/wikivoyage/ControlNearby.js
M modules/wikivoyage/WVMapLayers.js
M modules/wikivoyage/wikivoyage.js
5 files changed, 77 insertions(+), 10 deletions(-)

Approvals:
  Yurik: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/modules/box/Map.js b/modules/box/Map.js
index 9de5370..7309392 100644
--- a/modules/box/Map.js
+++ b/modules/box/Map.js
@@ -296,7 +296,8 @@
 
if ( this.parentMap ) {
$.each( this.parentMap.dataLayers, function ( 
groupId, layer ) {
-   map.addGeoJSONLayer( groupId, 
layer.getGeoJSON(), layer.options );
+   var newLayer = map.addGeoJSONLayer( 
groupId, layer.getGeoJSON(), layer.options );
+   newLayer.dataGroup = layer.group;
} );
ready();
return;
@@ -387,13 +388,15 @@
 
$.each( dataGroups, function ( key, group ) {
var layerOptions = {
-   attribution: group.attribution
-   };
+   attribution: 
group.attribution
+   },
+   layer;
if ( group.isExternal ) {
layerOptions.name = 
group.attribution;
}
if ( !$.isEmptyObject( 
group.getGeoJSON() ) ) {
-   map.addGeoJSONLayer( group.id, 
group.getGeoJSON(), layerOptions );
+   layer = map.addGeoJSONLayer( 
group.id, group.getGeoJSON(), layerOptions );
+   layer.dataGroup = group;
} else {
mw.log.warn( 'Layer not found 
or contains no data: "' + group.id + '"' );
}
@@ -423,12 +426,14 @@
var groupId = inlineDataLayerKey + 
inlineDataLayerId++,
layerOptions = {
attribution: 
group.attribution || options.attribution
-   };
+   },
+   layer;
if ( group.isExternal ) {
layerOptions.name = 
group.attribution;
}
if ( !$.isEmptyObject( 
group.getGeoJSON() ) ) {
-   map.addGeoJSONLayer( groupId, 
group.getGeoJSON(), layerOptions );
+   layer = map.addGeoJSONLayer( 
groupId, group.getGeoJSON(), layerOptions );
+   layer.dataGroup = layer;
} else {
mw.log.warn( 'Layer not found 
or contains no data: "' + groupId + '"' );
}
diff --git a/modules/wikivoyage/ControlLayers.js 
b/modules/wikivoyage/ControlLayers.js
index de20388..351d3ca 100644
--- a/modules/wikivoyage/ControlLayers.js
+++ b/modules/wikivoyage/ControlLayers.js
@@ -33,6 +33,9 @@
if ( !obj.overlay && label.childNodes[ 0 ].checked ) {
this._previousSelected = label.childNodes[ 0 ];
}
+   if ( obj.layer.dataGroup ) {
+   label.childNodes[ 0 ].className += ' 
leaflet-control-layers-data-layer';
+   }
},
 
/**
@@ -41,6 +44,7 @@
 */
_onInputClick: function ( event ) {
var self = this,
+   map = this._map,
proto = 
L.Control.Layers.prototype._onInputClick,
input = event && event.target,

[MediaWiki-commits] [Gerrit] mediawiki...Kartographer[master]: Implement third phase of event logging (Wikivoyage specific)

2016-12-01 Thread JGirault (Code Review)
JGirault has uploaded a new change for review.

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

Change subject: Implement third phase of event logging (Wikivoyage specific)
..

Implement third phase of event logging (Wikivoyage specific)

* Data layers now have a convenient reference to their corresponding data group

Bug: T151929
Change-Id: I2545a2258dfc3772acf56a5c0589002e18be1b30
---
M modules/box/Map.js
M modules/wikivoyage/ControlLayers.js
M modules/wikivoyage/ControlNearby.js
M modules/wikivoyage/WVMapLayers.js
M modules/wikivoyage/wikivoyage.js
5 files changed, 77 insertions(+), 10 deletions(-)


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

diff --git a/modules/box/Map.js b/modules/box/Map.js
index 9de5370..7309392 100644
--- a/modules/box/Map.js
+++ b/modules/box/Map.js
@@ -296,7 +296,8 @@
 
if ( this.parentMap ) {
$.each( this.parentMap.dataLayers, function ( 
groupId, layer ) {
-   map.addGeoJSONLayer( groupId, 
layer.getGeoJSON(), layer.options );
+   var newLayer = map.addGeoJSONLayer( 
groupId, layer.getGeoJSON(), layer.options );
+   newLayer.dataGroup = layer.group;
} );
ready();
return;
@@ -387,13 +388,15 @@
 
$.each( dataGroups, function ( key, group ) {
var layerOptions = {
-   attribution: group.attribution
-   };
+   attribution: 
group.attribution
+   },
+   layer;
if ( group.isExternal ) {
layerOptions.name = 
group.attribution;
}
if ( !$.isEmptyObject( 
group.getGeoJSON() ) ) {
-   map.addGeoJSONLayer( group.id, 
group.getGeoJSON(), layerOptions );
+   layer = map.addGeoJSONLayer( 
group.id, group.getGeoJSON(), layerOptions );
+   layer.dataGroup = group;
} else {
mw.log.warn( 'Layer not found 
or contains no data: "' + group.id + '"' );
}
@@ -423,12 +426,14 @@
var groupId = inlineDataLayerKey + 
inlineDataLayerId++,
layerOptions = {
attribution: 
group.attribution || options.attribution
-   };
+   },
+   layer;
if ( group.isExternal ) {
layerOptions.name = 
group.attribution;
}
if ( !$.isEmptyObject( 
group.getGeoJSON() ) ) {
-   map.addGeoJSONLayer( groupId, 
group.getGeoJSON(), layerOptions );
+   layer = map.addGeoJSONLayer( 
groupId, group.getGeoJSON(), layerOptions );
+   layer.dataGroup = layer;
} else {
mw.log.warn( 'Layer not found 
or contains no data: "' + groupId + '"' );
}
diff --git a/modules/wikivoyage/ControlLayers.js 
b/modules/wikivoyage/ControlLayers.js
index de20388..351d3ca 100644
--- a/modules/wikivoyage/ControlLayers.js
+++ b/modules/wikivoyage/ControlLayers.js
@@ -33,6 +33,9 @@
if ( !obj.overlay && label.childNodes[ 0 ].checked ) {
this._previousSelected = label.childNodes[ 0 ];
}
+   if ( obj.layer.dataGroup ) {
+   label.childNodes[ 0 ].className += ' 
leaflet-control-layers-data-layer';
+   }
},
 
/**
@@ -41,6 +44,7 @@
 */
_onInputClick: function ( event ) {
var self = this,
+   map = this._map,
proto = 
L.Control.Layers.prototype._onInputClick,
input = event &&