Fix OpenStreetMap attributions

This commit is contained in:
Tom Payne
2013-04-07 22:51:15 +02:00
parent 123e84de17
commit 0221998120
5 changed files with 49 additions and 27 deletions

View File

@@ -10,12 +10,12 @@ var map = new ol.Map({
layers: [
new ol.layer.TileLayer({
source: new ol.source.OpenStreetMap({
attribution: new ol.Attribution(
'All maps © ' +
'<a href="http://www.opencyclemap.org/">OpenCycleMap</a>, ' +
'map data &copy; ' +
'<a href="http://www.openstreetmap.org/">OpenStreetMap</a> ' +
'(<a href="http://www.openstreetmap.org/copyright">ODbL</a>)'),
attributions: [
new ol.Attribution(
'All maps &copy; ' +
'<a href="http://www.opencyclemap.org/">OpenCycleMap</a>'),
ol.source.OpenStreetMap.DATA_ATTRIBUTION
],
url: 'http://{a-c}.tile.opencyclemap.org/cycle/{z}/{x}/{y}.png'
})
})

View File

@@ -2,6 +2,7 @@ goog.provide('ol.source.MapQuestOSM');
goog.provide('ol.source.MapQuestOpenAerial');
goog.require('ol.Attribution');
goog.require('ol.source.OpenStreetMap');
goog.require('ol.source.XYZ');
@@ -16,11 +17,7 @@ ol.source.MapQuestOSM = function() {
new ol.Attribution(
'Tiles Courtesy of ' +
'<a href="http://www.mapquest.com/" target="_blank">MapQuest</a>'),
new ol.Attribution(
'Data &copy; ' +
'<a href="http://www.openstreetmap.org">OpenStreetMap</a> ' +
'contributors, ' +
'<a href="http://creativecommons.org/licenses/by-sa/2.0/">CC BY-SA</a>')
ol.source.OpenStreetMap.DATA_ATTRIBUTION
];
goog.base(this, {

View File

@@ -1,2 +1,4 @@
@exportSymbol ol.source.OpenStreetMap
@exportProperty ol.source.OpenStreetMap.DATA_ATTRIBUTION
@exportProperty ol.source.OpenStreetMap.TILE_ATTRIBUTION

View File

@@ -4,16 +4,6 @@ goog.require('ol.Attribution');
goog.require('ol.source.XYZ');
/**
* @const
* @type {Array.<ol.Attribution>}
*/
ol.source.OPENSTREETMAP_ATTRIBUTIONS = [new ol.Attribution(
'&copy; <a href="http://www.openstreetmap.org">OpenStreetMap</a> ' +
'contributors, ' +
'<a href="http://creativecommons.org/licenses/by-sa/2.0/">CC BY-SA</a>')];
/**
* @constructor
@@ -30,7 +20,7 @@ ol.source.OpenStreetMap = function(opt_options) {
} else if (goog.isDef(options.attribution)) {
attributions = [options.attribution];
} else {
attributions = ol.source.OPENSTREETMAP_ATTRIBUTIONS;
attributions = ol.source.OpenStreetMap.ATTRIBUTIONS;
}
var maxZoom = goog.isDef(options.maxZoom) ? options.maxZoom : 18;
@@ -48,3 +38,34 @@ ol.source.OpenStreetMap = function(opt_options) {
};
goog.inherits(ol.source.OpenStreetMap, ol.source.XYZ);
/**
* @const
* @type {ol.Attribution}
*/
ol.source.OpenStreetMap.DATA_ATTRIBUTION = new ol.Attribution(
'Data &copy; <a href="http://www.openstreetmap.org/">OpenStreetMap</a> ' +
'contributors, ' +
'<a href="http://www.openstreetmap.org/copyright">ODbL</a>');
/**
* @const
* @type {ol.Attribution}
*/
ol.source.OpenStreetMap.TILE_ATTRIBUTION = new ol.Attribution(
'Tiles &copy; ' +
'<a href="http://www.openstreetmap.org/">OpenStreetMap</a> ' +
'contributors, ' +
'<a href="http://creativecommons.org/licenses/by-sa/2.0/">CC BY-SA</a>');
/**
* @const
* @type {Array.<ol.Attribution>}
*/
ol.source.OpenStreetMap.ATTRIBUTIONS = [
ol.source.OpenStreetMap.TILE_ATTRIBUTION,
ol.source.OpenStreetMap.DATA_ATTRIBUTION
];

View File

@@ -2,6 +2,7 @@ goog.provide('ol.source.Stamen');
goog.require('goog.asserts');
goog.require('ol.Attribution');
goog.require('ol.source.OpenStreetMap');
goog.require('ol.source.XYZ');
@@ -78,11 +79,12 @@ ol.source.StamenProviderConfig = {
/**
* @const {Array.<ol.Attribution>}
*/
ol.source.STAMEN_ATTRIBUTIONS = [new ol.Attribution(
'Map tiles by <a href="http://stamen.com">Stamen Design</a>, under ' +
'<a href="http://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>. ' +
'Data by <a href="http://openstreetmap.org">OpenStreetMap</a>, under ' +
'<a href="http://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>.')];
ol.source.STAMEN_ATTRIBUTIONS = [
new ol.Attribution(
'Map tiles by <a href="http://stamen.com/">Stamen Design</a>, under ' +
'<a href="http://creativecommons.org/licenses/by/3.0/">CC BY 3.0</a>.'),
ol.source.OpenStreetMap.DATA_ATTRIBUTION
];