Zum Inhalt springen

rggooglemap probleme

Erstellt am 10. Mai 2007 · 13 Antworten · letzte Antwort am 13. Mai 2007

Tags: Frage

jeppo ·

Hallo,

ich möchte bei mir auf der Homepage (Typo3 4.0.2), 10 standorte mit GoogleMaps schildern.
Ich habe mir heute die ext. rggooglemap installiert, bekomme aber fehlermeldungen.

Ich hab folgendes gemacht:

1) ext. xajax installiert 0.2.4
2) ext. rggooglemap installiert 2.1.3
3) API Key für meinen subdomain von google gefordert und in die ext manager -> rggooglemap gespeichert
3) include static from extension > ext hinzugefügt
4) sys ordner erstellt mit 2 kategorien
5) mit modul google map 3 datensätze angelegt (in tt_address schaut alle sprima aus)
6) plugin rggooglemap als seiteninhalt in eine seite angelegt und ausgangspunkt (sysordner) gesetzt

Als erstes musste ich von IE6.0 zu FireFox1.5.0.4 wechseln, da sonst das speichern von einen datensatz
einen xml fehler verursachte.

Im FF scheinte fast zu gehen, aber nur fast, beim betrachten der Seite bekomme ich allerdings folgende Fehlermeldung:

Warning: implode(): Bad arguments. in /www/htdocs/kassecu/sec2007/typo3conf/ext/rggooglemap/pi1/class.tx_rggooglemap_pi1.php on line 487
Warning: Invalid argument supplied for foreach() in /www/htdocs/kassecu/sec2007/typo3conf/ext/rggooglemap/pi1/class.tx_rggooglemap_pi1.php on line 375
Warning: Invalid argument supplied for foreach() in /www/htdocs/kassecu/sec2007/typo3conf/ext/rggooglemap/pi1/class.tx_rggooglemap_pi1.php on line 253
Warning: array_multisort(): Argument #4 is expected to be an array or a sort flag in /www/htdocs/kassecu/sec2007/typo3conf/ext/rggooglemap/pi1/class.tx_rggooglemap_pi1.php on line 256
Warning: Invalid argument supplied for foreach() in /www/htdocs/kassecu/sec2007/typo3conf/ext/rggooglemap/pi1/class.tx_rggooglemap_pi1.php on line 259

Zwischendurch kam es auch invalid XML-File als Popup-Fehler.

Ich habe das gefühl dass es eine kleinigkeit sein soll, weiss aber nicht wo ich was falsch mache.

Kann mir jemand helfen?

Vielen Dank ;-)

p.s.: gibt es eine möglichkeit (für die anderen redakteuren) das auch mit IE6.0 das einfügen von datensätze möglich macht?

just2b ·

hallo,

da sollte wirklich alles passen... kannst du mir mal per pm die zugangsdaten geben?

georg

jeppo ·

Hallo Georg,

vielen Dank für deine echt schnelle antwort.

Leider kann ich dir nicht die zugangsdaten geben, wegen datenschutz; die firma wo ich bin erlaubt es nicht. Was ich aber machen könnte wäre einen test zugang einrichten, ich schaue mir das morgen mal an. Solange forsche ich ein bisschen durch das netzt, villeicht stosse ich auf die lösung, auch wenn ich das inzwischen bezweilfle.

Gruß

Jeppo

jeppo ·

Hallo,

das problem hat sich erledigt, war meine schuld! Und zwar hatte die adressen in den seitenbaum angelegt,
dort wo das plugin als flexform auch liegt und das war falsch. Ich musste die adresse in den sysordner anlegen
zusammen mit den POI kategorien, so wie auch in der doku steht ;-).

Leider muss ich dann die koordinate LONG/LAT von den adressen (datensätze) manuel auslesen und und nochmal
in das flexform plugin rein kopieren, dort wo ich den seitenihalt ausgeben möchte, sonst wird immer Gosau als
standard location angezeigt. Aber vielleicht mache ich auch hier was falsch?

Problem bleibt nur dass mit IE6.0 und IE7.0 sich keinen datensätze speichern lassen wegen XML-Fehler.
Halb so schlimm man kann ja in FF wechseln, auch wenn hier die umlaute im BE nicht richtig dargestellt werden,
sowohl mit FF1.5 als auch mit FF2.0, und das auch wenn ich in den browser als zeichenkodierung utf-8 anstatt
ISO-8850-1 wähle. Ich denke diesen schöneitsfehler werden aber mit der nächste update behoben?

Fazit: am sonsten funktiniert alles super und bin echt begeistert, super extension, wirklich!

Gruß

Jeppo

just2b ·

ja das mit utf-8 wird wohl behoben werden, aber man sollte prinzipiell alles gleich mit utf-8 beginnen.

du kannst den Startpunkt entweder per TS oder im PLugin setzen

georg

jeppo ·

das mit den startpunkt und allgemeine einstellungen habe ich in ext. manager geändert.

wenn ich richtig verstehe, muss ich also pro standort, eine adresse (datensatz) im sysordner mit zuweisung einer kategorie und einen plugin (flexform) im seitenbaum für die ausgabe anlegen oder? Mein problem ist dass in den plugin (flexform) die koordinate extra nochmal eintippen muss, obwohl sie schon in den adressen abgespeichert sind, eigentlich logisch woher soll er wissen welchen koordinate er braucht. Lider kann man aus der plugin (flex), sich nicht auf den datensatz beziehen oder?

Ich frage weil ich ins gesamt über 70 standorte so pflegen muss und bevor ich hier richtig loslegen möchte ich mir sicher sein.

Gruß

Jeppo

just2b ·

ja für die nächste version wäre das ein feature, aber jetzt ist das noch nicht implementiert

georg

jeppo ·

Hallo Georg,

soweit geht alles gut voran ausser noch ein kleines problem.
Nachdem die Karte korrekt angezeigt wird, möchte ich sie auch drücken, dafür ist einen button auf der ganze HP die eine extra seite mit eine extra CSS öffnet.

Zusätzlich ändere ich durch TS den body der seite wie folgt:

<body onload="self.print();">

sobald onload=... in den body hinzugefügt wird, lädt google die seite nicht mehr, mag er nicht.
Gibt es eine möglichkeit das zu umgehen? oder soll ich auf die funktion self.print() auf der HP verzichten?

Vielen Dank im Voraus!

Gruß

Joe

p.s.: freu mich schon auf der neue update ;-)

just2b ·

du kannst das onload für die googlemap mittels ext de_addbodyjscript hinzufügen > datensatz auf der karte-seite mit onload > makeMap(); (glaub so heißts)

georg

jeppo ·

sorry das habe ich nicht ganz verstanden.

1) ich habe die ext de_addbodyjscript installiert.
2) den hardcodierten body für den zustand druckerversion geändert also ohne onload() einfach <body>, - hm? aber dann geht den self.print() auf die restliche seiten nicht mehr oder?

3) was meinst du mit: datensatz auf der karte-seite mit onload > makeMap(); ?

Gruß

Jeppo

just2b ·

meine map braucht ein onload, wenn das schon für was anderes vergeben ist, kann man ein zweites mittels datensatz auf dieser seite vergeben

georg

jeppo ·

ok ging auch ohne ext de_addbodyjscript, hab einfach den body wie du geschrieben hast mit makeMap(); ins TS hardcodiert erweitert:

<body onload="self.print();makeMap();">

und so funktioniert 😉

Danke!

Gruß

Jeppo

jeppo ·

dummerweise will nun überall eine map erstellen auch da wo keine ist und so entsteht einen JS Fehler. :o

jeppo ·

Hallo,

für die die es noch interssiert, das mit der ext. de_addbodyjscript als datensatz zusammen mit der plugin rggooglemap
wo die karte ausgegeben wird, hat nicht geklappt oder ich habe nicht richtig verstanden wie de_addbodyjscript funktioniert.

Zum schluss hab ich den mit TS hardcodiertes body (<body onLoad="self.print();makeMap();">) entfernt und in meine
HTML-Vorlage für die ausgabe einer druckversion folgendes JS hinzugefügt:

<script type="text/javascript">
/*<![CDATA[*/
	document.onload = self.print();
/*]]>*/
</script>

damit bleibt den body frei und kann die karte normal ausgeben.

window.onload = makeMap;

Gruß

Jeppo