   var lon = 26;
    var lat = 62.5;
    var zoom = 5;

    var map;

    var options1 = {
	  projection: new OpenLayers.Projection("EPSG:900913"),
	  displayProjection: new OpenLayers.Projection("EPSG:4326"),
	  units: "m",
	  maxResolution: 156543.03392804062,
	  numZoomLevels: 17,
	  maxExtent: new OpenLayers.Bounds(-20037508.342787, -20037508.342788, 20037508.342789, 20037508.342789 ),
	  controls: [new OpenLayers.Control.PanZoomBar(), new OpenLayers.Control.LayerSwitcher(), new OpenLayers.Control.Navigation(), new OpenLayers.Control.Attribution()]
      };

    var options2 = {
	projection: new OpenLayers.Projection("EPSG:900913"),
	displayProjection: new OpenLayers.Projection("EPSG:4326"),
	units: "m",
	maxResolution: 156543.03392804062,
	numZoomLevels: 10,
	maxExtent: new OpenLayers.Bounds(-20037508.342787, -20037508.342788, 20037508.342789, 20037508.342789 ),
	controls: [new OpenLayers.Control.Navigation(), new OpenLayers.Control.Attribution()]
    };

//   OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {
//       defaultHandlerOptions: {
// 	  'single': true,
// 	  'double': false,
// 	  'pixelTolerance': 0,
// 	  'stopSingle': false,
// 	  'stopDouble': false
//       },
//
//       initialize: function(options) {
// 	  this.handlerOptions = OpenLayers.Util.extend(
// 	      {}, this.defaultHandlerOptions
// 	  );
// 	  OpenLayers.Control.prototype.initialize.apply(
// 	      this, arguments
// 	  );
// 	  this.handler = new OpenLayers.Handler.Click(
// 	      this, {
// 		  'click': this.trigger
// 	      }, this.handlerOptions
// 	  );
//       },
//
//       trigger: function(e) {
// 	  var lonlat = map.getLonLatFromViewPortPx(e.xy);
// 	  alert("You clicked near " + lonlat.lat + " N, " +
// 				    + lonlat.lon + " E");
// // 	  triggerEvent('<a href="?paikkakunta=kaakkoinen">kaakoinen</a>', true);
// // attachToElement: triggerEvent('<a href="?paikkakunta=kaakkoinen">kaakoinen</a>', true);
// // document.write(str.link("http://www.w3schools.com"));
// // window.location = "http://www.minuutti.fi/"
//
//       }
//
//   });

  function maptype(variable) {
    if(variable == 1)	{ this.map = new OpenLayers.Map( 'map', options1 ); mapload();}
    else		{ this.map = new OpenLayers.Map( 'map', options2 ); mapload(); }
  }

  function mapload() {

  mapnik = new OpenLayers.Layer.TMS(
      "Mapnik (OpenStreetMap)",
	["http://a.tile.openstreetmap.org/",
	  "http://b.tile.openstreetmap.org/"],
      {
	  type: 'png', getURL: osm_getTileURL,
	  attribution: '<div class="copyright"><p>copyright <a href="http://www.openstreetmap.org/">OpenStreetMap</a> Contributors</p></div>',
	  buffer: 0
      }
  );
  map.addLayers([mapnik]);


OpenLayers.Marker.defaultIcon = 'img/marker.png';
  var markers = new OpenLayers.Layer.Markers("Paikkakunnat");
  map.addLayer(markers);
  size = new OpenLayers.Size(20,20);
  calculateOffset = function(size) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
  icon = new OpenLayers.Icon('/style/osm/marker.png', size, null, calculateOffset);

  var icon_clone = icon.clone();

  var marker1 		= new OpenLayers.LonLat(2575513.3431341,8481211.6923706);
//   var marker1 		= new OpenLayers.LonLat(2574513.3431341,8486211.6923706);
  var marker1iconsize	= new OpenLayers.Size(36,10);
  var marker1iconoffset	= function(marker1iconsize) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
  var marker1icon	= new OpenLayers.Icon('/style/osm/marker_salo.png', marker1iconsize, null, marker1iconoffset);
  var marker2 		= new OpenLayers.LonLat(2618464.634398,8537284.5712512);
//   var marker2 		= new OpenLayers.LonLat(2618464.634398,8541284.5712512);
  var marker2iconsize	= new OpenLayers.Size(60,10);
  var marker2iconoffset	= function(marker1iconsize) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
  var marker2icon	= new OpenLayers.Icon('/style/osm/marker_somero.png', marker2iconsize, null, marker2iconoffset);
  var marker3 		= new OpenLayers.LonLat(2839979.1423681,8671253.2539467);
//   var marker3 		= new OpenLayers.LonLat(2839979.1423681,8676253.2539467);
  var marker3iconsize	= new OpenLayers.Size(63,10);
  var marker3iconoffset	= function(marker1iconsize) { return new OpenLayers.Pixel(-(size.w/2), -size.h); };
  var marker3icon	= new OpenLayers.Icon('/style/osm/marker_asikkala.png', marker3iconsize, null, marker3iconoffset);

  marker1 = new OpenLayers.Marker(marker1, marker1icon);
  marker1.events.register('click',marker1, function(evt) { window.location = "http://www.minuutti.fi/?content=kunnat&paikkakunta=salo"; OpenLayers.Event.stop(evt); });
  markers.addMarker(marker1);
  marker2 = new OpenLayers.Marker(marker2, marker2icon);
  marker2.events.register('click',marker2, function(evt) { window.location = "http://www.minuutti.fi/?content=kunnat&paikkakunta=somero"; OpenLayers.Event.stop(evt); });
  markers.addMarker(marker2);
  marker3 = new OpenLayers.Marker(marker3, marker3icon);
//   marker3.events.register('mouseover',marker3, function(evt) {  });
  marker3.events.register('click',marker3, function(evt) { window.location = "http://www.minuutti.fi/?content=kunnat&paikkakunta=asikkala"; OpenLayers.Event.stop(evt); });
  markers.addMarker(marker3);

//   popup = new OpenLayers.Popup("Test", new OpenLayers.LonLat(25.52, 62.25), new OpenLayers.Size(75,35), "<font size=-2>Lon: "+Math.round(lon * 10000) / 10000+"<br>Lat: "+Math.round(lat * 10000) / 10000);
//   map.addPopup(popup);

  var lonLat = new OpenLayers.LonLat(lon, lat).transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
  map.setCenter (lonLat, zoom);

function osm_getTileURL(bounds) {
    var res = this.map.getResolution();
    var x = Math.round((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));
    var y = Math.round((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));
    var z = this.map.getZoom();
    var limit = Math.pow(2, z);

    if (y < 0 || y >= limit || x < 0 || x >= limit) {
	return OpenLayers.Util.getImagesLocation() + "blank.gif";
    } else {
	x = ((x % limit) + limit) % limit;
	var path = z + "/" + x + "/" + y + "." + this.type;
	var url = this.url;
	if (url instanceof Array) {
	    url = this.selectUrl(path, url);
	}
	return url + path;
    }
}

   function get_my_url(bounds) {
        var res = this.map.getResolution();
        var x = Math.round ((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));
        var y = Math.round ((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));
        var z = this.map.getZoom();

        var path = z + "/" + x + "/" + y + "." + this.type;
        var url = this.url;
        if (url instanceof Array) {
            url = this.selectUrl(path, url);
        }
        return url + path;

    }


  function resize() {
      size = new OpenLayers.Size(size.w + 10, size.h + 10);
      icon.setSize(size);
  }
}
