source: subversion/sites/www.openstreetmap.no/index.html @ 22342

Revision 22342, 10.3 KB checked in by vibrog, 4 years ago (diff)

Make traces-link text consistent with .org on openstreetmap.no

Line 
1<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="no" lang="no">
2<head>
3<title>OpenStreetMap Norge</title>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 
5<meta content="OpenStreetMap er et prosjekt for å samle inn frie kartdata for hele verden." name="description" />
6
7<!-- bring in the OpenLayers javascript library -->
8<script src="openlayers/OpenLayers.js"></script>
9
10<!-- bring in the OpenStreetMap OpenLayers layers.
11     Using this hosted file will make sure we are kept up
12     to date with any necessary changes -->
13<script src="http://www.openstreetmap.org/openlayers/OpenStreetMap.js"></script>
14
15<script type="text/javascript">
16// Start position for the map
17var lat=65.4
18var lon=17.0
19var zoom=4
20var epsg4326 = new OpenLayers.Projection("EPSG:4326");
21OpenLayers.Lang.setCode("nb");
22
23var map;
24//Initialise the 'map' object
25function init() {
26
27  map = new OpenLayers.Map ("map", {
28    controls: [
29      new OpenLayers.Control.ArgParser(),
30      new OpenLayers.Control.KeyboardDefaults(),
31      new OpenLayers.Control.Navigation(),
32      new OpenLayers.Control.PanZoomBar(),
33      new OpenLayers.Control.LayerSwitcher(),
34      new OpenLayers.Control.MousePosition({numDigits:4}),
35      new OpenLayers.Control.Attribution(),
36      new OpenLayers.Control.Permalink()
37    ],
38    projection: "EPSG:900913",
39    maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),
40    maxResolution: 156543.0399,
41    numZoomLevels: 20,
42    units: 'm',
43    displayProjection: epsg4326
44  });
45
46  layerMapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik");
47  layerCycle = new OpenLayers.Layer.OSM.CycleMap("Sykkelkart");
48  map.addLayers([layerMapnik, layerCycle]);
49
50  var lonLat = new OpenLayers.LonLat(lon, lat).transform(
51    epsg4326, map.getProjectionObject());
52  if( ! map.getCenter() ){
53    map.setCenter(lonLat, zoom);
54  }
55  updatelinks();
56  map.events.register("moveend", map, updatelinks);
57  map.events.register("changelayer", map, updatelinks);
58}
59
60/*
61 * Called to interpolate JavaScript variables in strings using a
62 * similar syntax to rails I18n string interpolation - the only
63 * difference is that [[foo]] is the placeholder syntax instead
64 * of {{foo}} which allows the same string to be processed by both
65 * rails and then later by javascript.
66 */
67function i18n(string, keys) {
68  string = i18n_strings[string] || string
69  for (var key in keys) {
70    var re_key = '\\[\\[' + key + '\\]\\]';
71    var re = new RegExp(re_key, "g");
72    string = string.replace(re, keys[key]);
73  }
74  return string;
75}
76
77i18n_strings = new Array();
78i18n_strings['javascripts.site.edit_disabled_tooltip'] = 'Zoom inn for å redigere kartet';
79i18n_strings['javascripts.site.edit_tooltip'] = 'Rediger kartet';
80i18n_strings['javascripts.site.edit_zoom_alert'] = 'Du må zoome inn for å redigere kartet';
81i18n_strings['javascripts.site.history_disabled_tooltip'] = 'Zoom inn for å vise redigeringer i dette området';
82i18n_strings['javascripts.site.history_tooltip'] = 'Vis redigeringer for dette området';
83i18n_strings['javascripts.site.history_zoom_alert'] = 'Du må zoome inn for å vise redigeringer i dette området';
84
85/*
86 * Called to get the arguments from a URL as a hash.
87 */
88function getArgs(url) {
89  var args = new Object();
90  var querystart = url.indexOf("?");
91  if (querystart >= 0) {
92     var querystring = url.substring(querystart + 1);
93     var queryitems = querystring.split("&");
94     for (var i = 0; i < queryitems.length; i++) {
95        if (match = queryitems[i].match(/^(.*)=(.*)$/)) {
96           args[unescape(match[1])] = unescape(match[2]);
97        } else {
98           args[unescape(queryitems[i])] = null
99        }
100     }
101  }
102  return args;
103}
104
105/*
106 * Called to set the arguments on a URL from the given hash.
107 */
108function setArgs(url, args) {
109   var queryitems = new Array();
110   for (arg in args)
111   {
112      if (args[arg] == null) {
113         queryitems.push(escape(arg));
114      } else {
115         queryitems.push(escape(arg) + "=" + escape(args[arg]));
116      }
117   }
118   return url.replace(/\?.*$/, "") + "?" + queryitems.join("&");
119}
120
121function updatelinks() {
122  var lonlat = map.getCenter().clone().transform(map.getProjectionObject(), epsg4326);
123  var zoom = map.getZoom();
124  var extents = map.getExtent().clone().transform(map.getProjectionObject(), epsg4326);
125  var osmorg = 'http://www.openstreetmap.org'
126  var node;
127  var decimals = Math.pow(10, Math.floor(zoom/3));
128  lat = Math.round(lonlat.lat * decimals) / decimals;
129  lon = Math.round(lonlat.lon * decimals) / decimals;
130
131  node = $("exportanchor");
132  if (node) {
133    var args = getArgs(node.href);
134    args["lat"] = lat;
135    args["lon"] = lon;
136    args["zoom"] = zoom;
137    node.href = setArgs(node.href, args);
138  }
139
140  node = $("editanchor");
141  if (node) {
142    if (zoom >= 13) {
143      var args = new Object();
144      args.lat = lat;
145      args.lon = lon;
146      args.zoom = zoom;
147      node.href = setArgs(osmorg+"/edit", args);
148      node.title = i18n("javascripts.site.edit_tooltip");
149    } else {
150      node.href = 'javascript:alert(i18n("javascripts.site.edit_zoom_alert"));';
151      node.title = i18n("javascripts.site.edit_disabled_tooltip");
152    }
153  }
154
155  node = $("historyanchor");
156  if (node) {
157    var minlon = extents.left;
158    var minlat = extents.bottom;
159    var maxlon = extents.right;
160    var maxlat = extents.top
161    if (zoom >= 11) {
162      var args = new Object();
163      //set bbox param from 'extents' object
164      if (typeof minlon == "number" &&
165          typeof minlat == "number" &&
166          typeof maxlon == "number" &&
167          typeof maxlat == "number") {
168        minlon = Math.round(minlon * decimals) / decimals;
169        minlat = Math.round(minlat * decimals) / decimals;
170        maxlon = Math.round(maxlon * decimals) / decimals;
171        maxlat = Math.round(maxlat * decimals) / decimals;
172        args.bbox = minlon + "," + minlat + "," + maxlon + "," + maxlat;
173      }
174      node.href = setArgs(osmorg+"/history", args);
175      node.title = i18n("javascripts.site.history_tooltip");
176    } else {
177      node.href = 'javascript:alert(i18n("javascripts.site.history_zoom_alert"));';
178      node.title = i18n("javascripts.site.history_disabled_tooltip");
179    }
180  }
181
182  node = $("compareanchor");
183  if (node) {
184    var args = getArgs(node.href);
185    args["lat"] = lat;
186    args["lon"] = lon;
187    args["zoom"] = zoom;
188    node.href = setArgs(node.href, args);
189  }
190}
191
192function toggleVisibility(id) {
193  var e = document.getElementById(id);
194  if(e.style.display == 'block')
195    e.style.display = 'none';
196  else
197    e.style.display = 'block';
198}
199
200window.onload = init;
201</script>
202
203<link rel="stylesheet" type="text/css" href="openlayers/theme/default/style.css"/>
204<style type="text/css">
205  body { margin:0px; }
206  div#map { width:100%; height:100%; }
207  .olControlAttribution {
208    font-size:8pt;
209    left:5px; bottom:5px;
210  }
211  #menu {
212    position: absolute; top:0px; left:50%; 
213    width:40em; margin-left:-20em;
214    z-index:999;
215    vertical-align:middle;
216    font-family:Arial,sans-serif;
217    font-size:13px;
218    background-color:rgb(0,0,139);
219    color:white;
220    padding:4px 20px;
221    border-bottom-left-radius: 7px;
222    -moz-border-radius-bottomleft: 7px;
223    -webkit-border-bottom-left-radius: 7px;
224    border-bottom-right-radius: 7px;
225    -moz-border-radius-bottomright: 7px;
226    -webkit-border-bottom-right-radius: 7px;
227  }
228  #more { display:none; }
229  #videotutorial { display:none; text-align:center; padding-bottom:10px; }
230  #menu * a {
231    text-decoration:none;
232    color:white;
233  }
234  #tabs a { margin-right:.9em; }
235  #more ul li { line-height:1.4em; }
236</style>
237
238</head>
239<body>
240
241  <div id="menu">
242    <div id="tabs">
243    <a href="http://www.openstreetmap.org/"
244       title="OpenStreetMap er et fritt wiki-verdenskart. Klikk her for den internasjonale siden."><img id="logo"
245       src="OpenStreetMapNorge.png"
246       width="13" height="13" border="0" /></a>
247    <a href="http://www.openstreetmap.org/edit"
248       id="editanchor"
249       title="Rediger kartet">Rediger</a>
250    <a href="http://www.openstreetmap.org/history"
251       id="historyanchor"
252       title="Vis redigeringer for dette området">Historikk</a>
253    <a href="http://www.openstreetmap.org/export"
254       id="exportanchor"
255       onclick="new Ajax.Request('/export/start', {asynchronous:true, evalScripts:true}); return false;"
256       title="Eksporter kartdata">Eksporter</a>
257    <a href="http://www.openstreetmap.org/traces"
258       title="Del og finn GPS-spor">GPS-spor</a>
259    <a href="http://help.openstreetmap.org/"
260       title="Spør om hjelp her">Hjelp</a>
261    <a href="#"
262       onclick="javascript:toggleVisibility('more');"
263       title="Kort om OSM og hint til å komme i gang">Informasjon &gt;&gt;</a>
264    </div>
265    <div id="more">
266      <p>
267        <strong>OpenStreetMap</strong> (OSM) er
268        et verdensomspennende prosjekt for å dele frie kartdata.
269        Flere titusen mennesker bidrar med å samle inn data
270        og lage løsninger som du kan bruke helt fritt.
271      </p>
272      <p>
273        Denne siden tilbyr norsktilpassede presentasjoner
274        av kartdataene i OSM.<br/>
275        Bruk '+'-menyen til høyre for å bytte mellom disse.
276      </p>
277      <ul>
278        <li><a href="http://wiki.openstreetmap.org/wiki/No:Beginners_Guide"
279              >Hvordan bidra til dugnadskartet</a> —
280            <a href="#"
281               onclick="javascript:toggleVisibility('videotutorial');"
282              >se en instruksjonsfilm &gt;&gt;</a></li>
283        <li><a href="http://wiki.openstreetmap.org/wiki/No:Map_Features"
284              >Oversikt over kartegenskaper (tagger) tilpasset Norge</a></li>
285        <li><a href="http://www.frikart.no/garmin/"
286              >Last ned kart basert på OSM til Garmin GPS</a></li>
287        <li><a id="compareanchor"
288              href="http://www.vidargundersen.com/osm/compare.html"
289              >Sammenlign OSM med offentlige kart fra Statens Kartverk</a></li>
290        <li><a href="http://wiki.nuug.no/grupper/kart"
291              >Diskusjonsforum (epostliste)</a></li>
292      </ul>
293      <div id="videotutorial">
294<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/1Kd3S53CXQs&amp;hl=en_US&amp;fs=1?rel=0"/><param name="allowFullScreen" value="true"/><param name="allowscriptaccess" value="always"/><embed src="http://www.youtube.com/v/1Kd3S53CXQs&amp;hl=en_US&amp;fs=1?rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"/></object>
295      </div>
296    </div>
297  </div>
298
299  <!-- Define a DIV into which the map will appear. -->
300  <div id="map"></div>
301
302</body>
303</html>
Note: See TracBrowser for help on using the repository browser.