source: t29-www/shared/js/gmaps-impressum.js @ 511

Last change on this file since 511 was 138, checked in by sven, 14 years ago

Neues Header-Design eingebunden

  • Wesentliche Definitionen in /shared/css/fresh.css (mit dem Versuch, so wenig externe Seiten wie moeglich damit zu beeinflussen)
  • Korrekturen damit zerschossener Stellen in common.css
  • fresh-iefixing: Statistiken aktualisiert, aber Testen im IE6 steht noch aus...
  • gmaps-impressum: Anmerkung, dass es nur aufm Server funktioniert. Ein Alert kommt zwar trotzdem noch, aber ein Versuch war es wert.
  • auto-bildbreite: Dem IE6 gesagt, dass er es lassen soll (ungetestet)
  • /en/inc/head.inc.shtm: Auto-Bildbreite schon mal eingebunden (auch wenn es noch nirgends verwendet wird)
  • broadcasting: Auffaelligen Typo beseitigt

Im Englischen steht neben den Uebersetzungen auch die Ueberschrifts-
Anpassung nach dem neuen Deutschen Text an.

-- sven @ workstation

  • Property svn:keywords set to Id
File size: 3.9 KB
Line 
1/**
2 * technikum29.de | Google Maps widget for imprint page
3 *
4 * Dieses JavaScript wird auf den Impressumsseiten eingebunden, um
5 * per Google Maps API diese einzubinden. Dazu ist noch ein kurzes
6 * Schnipsel HTML in der Form <div id="map">...</div> noetig,
7 * ausserdem muss dieses JavaScript eingebunden werden:
8 * <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false&amp;key=ABQIAAAAraTKZ5cINardZ8ITNVssKhRcOoEBtCgYLJRQznXYEV8m1M3fRRRT9wMSvFwhyo62fD3KyiwQxe5ruw" type="text/javascript"></script>
9 *
10 * Als Konstanten koennen in diesem Script bearbeitet werden:
11 *  * Der Google Maps API Key
12 *  * Der Inhalt der Sprechblasen an der Museumsposition
13 *    fuer die jeweilige Sprache
14 *  * Die Ausgansposition der Karte fuer die jeweilige Sprache
15 *
16 * 2009 Sven Koeppel $Id: gmaps-impressum.js 138 2010-01-04 02:34:11Z sven $
17 * Released under the public domain
18 **/
19
20// if not on this domain => deactivate script since google
21// will print out error otherwise
22var t29_gmaps_valid_domain = "www.technikum29.de";
23 
24var t29_gmaps_content = {
25        "de": "<b>technikum29</b><br/>Am Flachsland 29<br/>Kelkheim/Taunus"
26                        +"<br/><a href='http://maps.google.com/maps?&daddr=Am+Flachsland+29,+Kelkheim&layer=&sll=50.092393,10.195313&sspn=38.370164,57.392578&ie=UTF8&z=16&om=1&iwloc=addr'>Route berechnen...</a>",
27        "en": "<b>technikum29</b><br/>Close to Frankfurt/Main<br/>Germany"
28};
29
30var t29_gmaps_center = {
31        // map.setCenter(new GLatLng( .. , .. ), .. )
32        // so [     xpos        ,      ypos        , zoom]
33        "de": [50.12101835522268, 8.510284423828125, 11],
34        "en": [51.6452940493054,  8.173828125,       5]
35};
36
37function t29_gmaps_detect_page_language() {
38        // try to detect page language by heading
39        if(document.getElementsByTagName("h1")[0].getAttribute("class").search("de") != -1)
40                return "de";
41        else
42                return "en";
43}
44
45// das schnipsel hier geht unterm IE sowieso nicht:
46function t29_gmaps_include_once(src) {
47    // hole alle vorhandenen Script-Elemente
48    var scripts = document.getElementsByTagName('script');
49
50    if(scripts) {
51        for(var k=0; k<scripts.length; k++) {
52                        // script schon geladen, abbrechen
53            if(scripts[k].src == src)
54              return;
55                }
56        }
57
58    // script noch nicht geladen, binde es ein
59    var script = document.createElement('script');
60    script.src = src;
61    script.type = 'text/javascript';
62    (document.getElementsByTagName('HEAD')[0] || document.body).appendChild(script);
63}
64
65// damit verweigert Google den Dienst (unter localhost gehts aber...)
66//t29_gmaps_include_once("http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false&amp;key="+t29_gmaps_key);
67
68var t29_gmaps_restore = window.onload;
69var gmap;
70window.onload = function() {
71        if(t29_gmaps_restore) t29_gmaps_restore();
72       
73        var lang = t29_gmaps_detect_page_language();
74
75        if(location.hostname != t29_gmaps_valid_domain) {
76                document.getElementById("map").getElementsByTagName("div")[0].firstChild.data = 
77                        "Karte kann nur auf www.technikum29.de geladen werden, nicht auf anderen Kopien der Homepage!";
78        }
79
80        if(GBrowserIsCompatible()) {
81                var map = new GMap2(document.getElementById("map"));
82                gmap = map;
83                map.setUIToDefault();
84
85                // Position vom Museum
86                var t29_pos = new GLatLng(50.145129,8.445667);
87
88                // Uebersichtsfensterchen rechts unten, will Heribert nicht
89                //map.addControl(new GOverviewMapControl(new GSize(200,150)));
90               
91                // Zentrum der Karte, kann mit Firebug (gmap.getCenter(), gmap.getZoom())
92                // nach rumschieben bestimmt werden.
93                map.setCenter(new GLatLng(t29_gmaps_center[lang][0], t29_gmaps_center[lang][1]), t29_gmaps_center[lang][2]);
94               
95                //map.setMapType(G_HYBRID_MAP);
96                map.enableContinuousZoom();
97                var marker = new GMarker(t29_pos);
98                map.addOverlay(marker);
99               
100                // fenster anzeigen
101                GEvent.addListener(marker, "click", function() {
102                        marker.openInfoWindowHtml(t29_gmaps_content[lang]);
103                });
104                marker.openInfoWindowHtml(t29_gmaps_content[lang]);
105        }
106}
107
Note: See TracBrowser for help on using the repository browser.
© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License