/** include - including .js files from JS - bfults@gmail.com - 2005-02-09 ** ** Code licensed under Creative Commons Attribution-ShareAlike License ** ** http://creativecommons.org/licenses/by-sa/2.0/ **/ var hIncludes = null; function include(sURI, cls, id, ignore_duplicates) { if (document.getElementsByTagName) { if (!ignore_duplicates && !hIncludes) { hIncludes = {}; var cScripts = document.getElementsByTagName("script"); for (var i=0,len=cScripts.length; i < len; i++) if (cScripts[i].src) hIncludes[cScripts[i].src] = cScripts[i]; } if (ignore_duplicates || !hIncludes[sURI]) { var oNew = document.createElement("script"); oNew.type = "text/javascript"; oNew.src = sURI; if (cls != undefined) oNew.className = cls; if (id != undefined) oNew.id = id; if (hIncludes != undefined) hIncludes[sURI]=true; document.getElementsByTagName("head")[0].appendChild(oNew); } return (ignore_duplicates || hIncludes[sURI]); } return false } /* code borrowed from rysiek at brama. */ include('/js/openlayers/OpenLayers.js', 'js-libs'); var osm, map, markers_layer, zoom, center, brama_pos, epsg4326; function initOpenLayersMap(mapobj) { zoom = 16 center = new OpenLayers.LonLat(21.002971, 52.246246); hs_pos = new OpenLayers.LonLat(21.002971, 52.246246); epsg4326 = new OpenLayers.Projection("EPSG:4326"); map = new OpenLayers.Map(mapobj, {maxResolution: 0.703125}); osm = new OpenLayers.Layer.OSM.Mapnik("OpenStreetMap (Mapnik)", { displayOutsideMaxExtent: true, wrapDateLine: true, buffer: 0 }); map.addLayer(osm); map.setCenter(center.clone().transform(epsg4326, map.getProjectionObject()), zoom); markers_layer = new OpenLayers.Layer.Markers("Markery"); var icon_size = new OpenLayers.Size(50, 30); var icon_offset = new OpenLayers.Pixel(-(icon_size.w/2), -(icon_size.h/2)); var hs = new OpenLayers.Marker( hs_pos.clone().transform(epsg4326, map.getProjectionObject()), new OpenLayers.Icon('/img/hackerspace.svg', icon_size, icon_offset) ); markers_layer.setVisibility(true); markers_layer.addMarker(hs); map.addLayer(markers_layer); } var map_attempt_timeout = 500; var map_attempts_no = 30; function mapInitAttempt() { if ( (typeof OpenLayers != 'undefined') && (typeof OpenLayers.Layer.OSM.Mapnik != 'undefined') ) { $(this).stopTime() $('#map img').fadeOut('fast', function(){ $("#map").addClass('osm') initOpenLayersMap("map") }); } else { if ( ($("script[src='/js/openlayers/openstreetmap.js']").length == 0) && (typeof OpenLayers != 'undefined') && (typeof OpenLayers.Layer.OSM.Mapnik == 'undefined') ) { include('/js/openlayers/openstreetmap.js', 'js-libs'); } map_attempts_no-- if (map_attempts_no > 0) { if (typeof console != 'undefined') console.debug('OSM/OL :: not yet... (' + map_attempts_no + ' attempts left)') } else { $(this).stopTime() if (typeof console != 'undefined') console.debug('OSM/OL :: not yet... cancelling.') } } } $(document).ready(function(){ $(this).everyTime(map_attempt_timeout, mapInitAttempt); });