Per URL auf XML in Tour zugreifen

  • Hallo, ich habe in Panotour Pro eine Tour erstellt und möchte direkt per URL auf einzelne Panoramen der Tour zugreifen (bzw. das Startpanorama ändern). Ich gehe davon aus, dass dies ähnlich gelöst werden kann, wie der Zugriff per URL auf Szenen (vgl. http://www.krpano.com/forum/wbb/inde…d&threadID=1900 ). Leider ist mir die Umsetzung bisher nicht gelungen. Wäre super, wenn mir jemand einen Lösungstipp geben könnte!

    Problemstellung: Das Startpanorama der Tour wird in der Datei krpano.xml definiert. In nachfolgendem Code-Ausschnitt wäre das Startpanorama "virtualtour0.xml". Ich möchte jetzt per URL-Variable das Startpanorama auf "virtualtour1.xml" ändern.

    Meine (nicht funktionierende Idee) sieht wie folgt aus:

    URL mit Variable: .../Krpano.html?pano=virtualtour1.xml

    Code-Ausschnitt von Krpano.html:

    Code-Ausschnitt von Krpano.xml:

    Das Krpano.swf habe ich so erstellt, dass externe Variabeln zugelassen sind. (PS: Wie kann ich prüfen, ob der Wert überhaupt weitergegeben wurde?)

    Vielen Dank für jeden Lösungshinweis!

  • Hi,
    ich habe es jetzt nicht getestet, aber so sollte es gehen:

    innerhalb der HTML-Datei...

    Code
    swf.addVariable("startpano", getQueryParamValue("pano"));

    dann im Panorama darauf zugreifen...

    Code
    trace(get(startpano));
    
    
    if (startpano EQ null, loadpano(virtualtour0.xml,null,MERGE); , loadpano(get(startpano),null,MERGE); );
  • Hallo Iceman

    Erst mal vielen Dank für deine Antwort! Habe deinen Vorschlag gleich ausprobiert. Leider war dies nicht erfolgreich. Eine Fehlermeldung kriege ich zwar nicht. Im Vergleich zu meinem bisherigen Lösungsansatz wird aber nicht einmal das als Default Wert gesetzte Panorama angezeigt, sondern es wird gar kein Panorama geladen. Hat jemand eine funktionierende Lösung oder eine Idee, wo das Problem liegt?

    Verzweifelte Grüsse
    swisspano

  • Die komplette Panodefinition ist aber in dieser virtualtour0.xml drin ?
    Ich selber nutze das Panotour Pro nämlich nicht.

    Schau mal nach, ob das trace überhaupt erst einmal ausgeben wird.
    Alternativ muss man dann mit if (startpano EQ "" ... prüfen.

  • Hallo Iceman

    Danke für die Info. Habe die "===" Anpassung vorgenommen. Jetzt funktioniert es mit dem Default Panorama wieder. Leider mangelt es mir an vielen Grundkenntnissen des Programmierens. So weiss ich nicht einmal, wie ich prüfen kann, ob das trace ausgegeben wird!?! Die komplette Panodefinition ist m.E. aber auf jeden Fall in der einzelnen virtualtourX.xml drin.

    Falls jemand mal einen Blick auf meine Testdateien werfen mag, habe ich diese vorübergehend online gestellt:

    http://www.appenzellerlinks.ch/Testfolder/krpano.html
    http://www.appenzellerlinks.ch/Testfolder/krpano.xml
    http://www.appenzellerlinks.ch/Testfolder/virtualtour0.xml
    http://www.appenzellerlinks.ch/Testfolder/virtualtour1.xml

    Hoffnungsvolle Grüsse
    swisspano

  • Entweder stellst Du mir mal die Tour als Downloadarciv bereit oder Du versuchst noch folgendes:
    in der ersten <krpano ...> Definition muss noch rein: logkey="true"
    Dann kannst Du mittels Druck auf die Taste o (ohhh) das Logfenster aufrufen, wo Du dann die Trace Ausgaben siehst.

  • Hallo Iceman

    Habe den logkey eingeschaltet. Local wird Folgendes angezeigt:

    INFO: krpano 1.0.8.14 (build 2011-09-01)
    INFO: Flashplayer WIN 11.0.1.152 PlugIn
    INFO: registered to: XXXXXX
    WARNING: not local trusted - ExternalInterface disabled!
    INFO: null

    Online wird nichts angezeigt. Liegt das Problem bei "ExternalInterface disabled"?

    Habe das ganze Panoprojekt gezipt (7.5 MB): http://www.appenzellerlinks.ch/testfolder/testfolder.zip

    Vielen Dank für deine Unterstützung!

  • So, ich habe das mal gecheckt.
    Du hattest noch jede Menge Fehler in der HTML-Datei (z.B. 3x das Pano mittels embed eingebunden und immer andere Parameter angegeben ;-))).

    Auch habe ich mitbekommen, dass bei fehlendem Wert des pano-Parameter durch JS das "null" als String zurückgegeben wird.
    Anbei die korrigierten Dateien.

    PS: External Interface muss trotzdem aktiv sein, so wie Klaus es schrieb.

  • Lieber Iceman, lieber Klaus

    Vielen Dank für eure Unterstützung! Ich bin begeistert, dass es nun funktioniert!

    Noch zwei Anmerkungen (für die Leser dieser Beiträge und insbesondere die User von Panotour Pro):

    • An dem External-Interface oder an der swf hat das Problem nicht gelegen. Ich hatte die Flashplayer-Security-Settings bereits entsprechend konfiguriert. Ebenfalls habe ich bereits mit dem krpano Protect Tool eine swf Datei erstellt, bei der die External Parameter Funktion nicht deaktiviert ist (im Gegensatz zur swf Datei von Panotour Pro - wie von Klaus bereits erwähnt).
    • Die mehrfache Einbindung des Panos und die unterschiedliche Angabe der Parameter in der HTML-Datei sind teilweise auf mein "Unwissen" und meine "Verzweiflung" zurückzuführen. Allerdings produziert Panotour Pro schon von sich aus eine HTML-Datei, bei welcher das "embed" zweimal vorhanden ist. Einmal zwischen <script> ... </script> und einmal zwischen <noscript> ... </noscript>

    Erleichterte Grüsse
    swissspano

    Edited 2 times, last by swisspano (November 7, 2011 at 9:44 PM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!