*/
OpenLayers.Util.OSM = {};
-/**
- * Constant: MISSING_TILE_URL
- * {String} URL of image to display for missing tiles
- */
-OpenLayers.Util.OSM.MISSING_TILE_URL = "http://www.openstreetmap.org/openlayers/img/404.png";
-
-/**
- * Property: originalOnImageLoadError
- * {Function} Original onImageLoadError function.
- */
-OpenLayers.Util.OSM.originalOnImageLoadError = OpenLayers.Util.onImageLoadError;
-
-/**
- * Function: onImageLoadError
- */
-OpenLayers.Util.onImageLoadError = function() {
- if (this.src.match(/^http:\/\/[abc]\.[a-z]+\.openstreetmap\.org\//)) {
- this.src = OpenLayers.Util.OSM.MISSING_TILE_URL;
- } else if (this.src.match(/^http:\/\/[def]\.tah\.openstreetmap\.org\//)) {
- // do nothing - this layer is transparent
- } else {
- OpenLayers.Util.OSM.originalOnImageLoadError;
- }
-};
/**
* Class: OpenLayers.Layer.OSM.Mapnik
*/
initialize: function(name, options) {
var url = [
- "http://a.tile.openstreetmap.org/${z}/${x}/${y}.png",
- "http://b.tile.openstreetmap.org/${z}/${x}/${y}.png",
- "http://c.tile.openstreetmap.org/${z}/${x}/${y}.png"
+ "//a.tile.openstreetmap.org/${z}/${x}/${y}.png",
+ "//b.tile.openstreetmap.org/${z}/${x}/${y}.png",
+ "//c.tile.openstreetmap.org/${z}/${x}/${y}.png"
];
- options = OpenLayers.Util.extend({ numZoomLevels: 19, buffer: 0 }, options);
+ options = OpenLayers.Util.extend({ numZoomLevels: 19, buffer: 0,
+ attribution : '© <a target="_parent" href="http://www.openstreetmap.org">OpenStreetMap</a> and contributors, under an <a target="_parent" href="http://www.openstreetmap.org/copyright">open license</a>' }, options);
var newArguments = [name, url, options];
OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
},
CLASS_NAME: "OpenLayers.Layer.OSM.MapQuestOpen"
});
-/**
- * Class: OpenLayers.Layer.OSM.Osmarender
- *
- * Inherits from:
- * - <OpenLayers.Layer.OSM>
- */
-OpenLayers.Layer.OSM.Osmarender = OpenLayers.Class(OpenLayers.Layer.OSM, {
- /**
- * Constructor: OpenLayers.Layer.OSM.Osmarender
- *
- * Parameters:
- * name - {String}
- * options - {Object} Hashtable of extra options to tag onto the layer
- */
- initialize: function(name, options) {
- var url = [
- "http://a.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png",
- "http://b.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png",
- "http://c.tah.openstreetmap.org/Tiles/tile/${z}/${x}/${y}.png"
- ];
- options = OpenLayers.Util.extend({ numZoomLevels: 18, buffer: 0 }, options);
- var newArguments = [name, url, options];
- OpenLayers.Layer.OSM.prototype.initialize.apply(this, newArguments);
- },
-
- CLASS_NAME: "OpenLayers.Layer.OSM.Osmarender"
-});
-
/**
* Class: OpenLayers.Layer.OSM.CycleMap
*