Hilfe - Suche - Mitglieder - Kalender
Vollansicht: Googlemap
Forum Sefrengo.org > Downloads > Archiv > Alpha, Beta, ......
pawel
Anbei noch eine sehr frühe Variante für Eure Experimente.
Dank Kettis Tip ist es jetzt ein Modul, was im body beliebig platziert werden kann und eine Googlemap auf die Seite bringt. (gut für Anfahrtsbeschreibungen) Nötig ist nur ein Key, der bei Google kostenlos beantragt werden kann (habe ich im Modul verlinkt).
Dann müßt ihr noch eine Adresse eingeben, einen Titel des Infowindows und den Text .

Genutzt wird dabei eine PHP-Klasse von phpinsider.com , die nach backend/inc kopiert werden muss (liegt dem Zip aber bei)

ToDo
- beliebig viele Marker
- Veränderung der Klasse insbesondere printMap (ich habe da an eine neue Kasse sfGoogl... gedacht, die die Hauptfunktionen erbt)
- mehr Optionsfelder (Sidebar, andere Icons, direkte Eingabe von Koordinaten, Routenplaner usw.)
- JS in externe Datei schreiben
MaZderMind
ZITAT
die nach backend/inc kopiert werden muss

Besser einen Ordner unter external anlegen, noch viel besser wäre alles ins modul (bei einem update wird der komplette backendordner gelöscht und das modul funktioniert nichtmehr)

ZITAT
Veränderung der Klasse

Aber nur über Vererbung, nüsch? smile.gif Updatefähigkeit beibehalten!

Sonst Lob: Echt Kuhl!
Gruß, Peter
bjoern
Würde die Klasse auch in das Modul packen.
pawel
Ja ja, ich wollte ja erben. Deshalb sollte die Klasse in der Grundform erhalten blieben und evtl. updates könnte einfach überkopiert werden
mvsxyz
Bei mir funktioniert das Modul nicht. Ich habe mir einen Key bei Google geholt und und das Modul auf der Seite platziert. Wenn ich dann die Seite aufrufe, dann sehe ich alle Navigationselemente, aber keine Karte. Liegt das an Google oder am Modul?
mvsxyz
Hab es mittlerweile selber heraus gefunden. Dem <div id="map"> muss mittels CSS noch eine Größe zugewiesen werden.

QUELLTEXT
#map {
  height:600px;
  width:800px;
}


Dann wird die Karte auch richtig angezeigt.
pawel
Ich lad dafür meistens die css per js nach:
document.write('<link rel="stylesheet" href="cms/css/maps.css" type="text/css" />');
FireFlyer
Da mir das Modul schon gut gefällt, hab ich ein wenig die oberen FR aufgenommen und einen neue Version geschaffen.
Hoffe pawel ist mir nicht böse! mad.gif

Bugfix:
- Google-Key Link => target _blank
- GoogleMapAPI-2.5 ins Modul gepackt
- Breite und Höhen können im Modul angegeben werden. Finde ich dort besser aufgehoben, als in der CSS-Datei!

Todo:
QUELLTEXT
echo "<style type=\"text/css\" media=\"screen\">
<!--
  #map { height:500px; width:500px; }
-->
</style>";

echo "<div id=\"map\"></div>";

Das Div sollte die Größenangaben direkt aus:
Breite=MOD_VALUE[4] und Höhe=MOD_VALUE[5] beziehen. Hier hab ich es mal fest rein gesetzt.

Bitte mal testen und helfen!!!

Klicken um den Anhang anzusehen
pawel
ZITAT
Hoffe pawel ist mir nicht böse!

Natürlich nicht, die SF-Tradition, das jeder "seine" Module weiterentwickelt, kann ruhig durchbrochen werden. rolleyes.gif
Ich bemühe mich allerdings js und css in externen Dateien vorzuhalten. Das Modul schreit sozusagen nach addheader cool.gif .
Es wäre also dann evtl. eine Datei map.css zu schreiben und einzubinden. Ursprünglich wollte ich mit dem Modul auch Adressen in die Datenbank schreiben oder mit Flickr mashen.
Wobei brauchts Du denn Hilfe?
FireFlyer
Schau mal in den Code. Da wird (ich versuch das jetzt aus dem Kopf) für Google $map=height('MOD_VALUE[4]') oder ähnlich verwendet.
Google Map kapiert das, aber anscheinend (wie schon mvsxyz geschrieben hat) braucht das DIV auch diese Angaben:

QUELLTEXT
echo "<style type=\"text/css\" media=\"screen\">
<!--
  #map { height:500px; width:500px; }
-->
</style>";

echo "<div id=\"map\"></div>";


ich wollte dies in diese Richtung ändern:

QUELLTEXT
echo "<style type=\"text/css\" media=\"screen\">
<!--
  #map { MOD_VALUE[5]; MOD_VALUE[4] }
-->
</style>";

echo "<div id=\"map\"></div>";


Vielleicht kann man dies ja auch einfacher schreiben, denn ích denke so wie oben dürfte das nicht klappen. Mir fehlt da aber mal wieder der Programmiererblick!
bkm
schonmal in die api geschaut ? dort gibt es sowas wie
QUELLTEXT
$map->setWidth('x')
$map->setHeight('x');

vll. kommste damit weiter.
FireFlyer
Hab ich und es steht auch schon im Modul. Man kann die Breite ja erkennen, welche im Modul eingestellt ist, aber anscheinend muß dem DIV auch diese Größen mit gegeben werden. Das hatte ich mit dem Problem von msvxyz gemeint. Er mußte auch erst per CSS dem DIV eine Größe mitgeben, damit es funktioniert.

Deshalb wollte ich mit dem Ansatz von oben automatisch mitgeben.
Vielleicht würde auch hier gehen:

QUELLTEXT
echo "<div id=\"map\" width="MOD_VALUE[4]" height="MOD_VALUE[5]"></div>";


Ich hab eben Probleme, wenn es um PHP-Code gemischt in HTML geht. Da gibt es ja dann: \= oder ' oder " und das ist für mich als Laie nicht immer so verständlich.
pawel
Probier mal einfach $map->printMap(); vielleicht ist es das , was du brauchst?
Ich habe es zur Zeit nirgendwo im Einsatz, deshalb kann ich nicht testen.
FireFlyer
Kannst mal bei mir testen! PN on tour.
pawel
Geht, habs angepasst.
FireFlyer
Dank dir pawel.
Diese Version kann ins Archiv wandern, da die neue Version hier verfügbar ist!
Dieses ist eine vereinfachte Darstellung unseres Foreninhaltes. Um die detaillierte Vollansicht mit Formatierung und Bildern zu betrachten, bitte hier klicken.
Invision Power Board © 2001-2024 Invision Power Services, Inc.