Sprachvariable in Flash

Hallo,

ich habe in der _right.tpl eine Flash Datei eingebunden. Diese Flash Datei enthält im AS einen getURL Befehl. Nun habe ich das Problem, dass ich dort nun nur immer auf die Deutschen Seite verlinken kann, weil ich die akutelle Sprachvariable des Shops nicht ins Flash kriege.

Weiss jemand, wie ich in Flash die aktuelle Sprachvariable aus dem Oxid Shop ausgeben lassen könnte?

Danke für eure Inputs.

Gruss

[QUOTE=patsaysnow;24173]Hallo,

ich habe in der _right.tpl eine Flash Datei eingebunden. Diese Flash Datei enthält im AS einen getURL Befehl. Nun habe ich das Problem, dass ich dort nun nur immer auf die Deutschen Seite verlinken kann, weil ich die akutelle Sprachvariable des Shops nicht ins Flash kriege.

Weiss jemand, wie ich in Flash die aktuelle Sprachvariable aus dem Oxid Shop ausgeben lassen könnte?

Danke für eure Inputs.

Gruss[/QUOTE]

Übergib doch den fertig übersetzten Text in der Object-Einbindung im Template. Per AS kannst Du dann auf die Variable zugreifen. Alternativ bietet Flash auch die Möglichkeit, Daten von einem URL-Aufruf nachzuladen. Müßtest nur den Shop dazu bringen, daß er Dir die Übersetzung im passenden Format liefert.

Hi Daniel,

danke für deine Hilfe. Verstehe aber gerade nur Bahnhof. Vielleicht kannst du dir mein Problem mal anschauen:
http://shop.pat-says-now.com/

Auf der rechten Seite sind diese Produktvideos. Ist die Sprache Englisch, wird leider wieder auf die Deutsche Seite verlinkt, was auch logisch ist, denn in Flash ist der getURL Befehl ja so. Nun suche ich eine Lösung, wie ich für die englische Sprache entweder:

  1. andere Videos laden kann, bei denen der getURL BEfehl auf die englische Seite verlinkt
  2. oder aber die Sprachvariable des Shops dynmisch in der Flash Datei ausgeben lassen kann

Gruss
Yves

[QUOTE=patsaysnow;24257]Hi Daniel,

danke für deine Hilfe. Verstehe aber gerade nur Bahnhof. Vielleicht kannst du dir mein Problem mal anschauen:
http://shop.pat-says-now.com/

Auf der rechten Seite sind diese Produktvideos. Ist die Sprache Englisch, wird leider wieder auf die Deutsche Seite verlinkt, was auch logisch ist, denn in Flash ist der getURL Befehl ja so. Nun suche ich eine Lösung, wie ich für die englische Sprache entweder:

  1. andere Videos laden kann, bei denen der getURL BEfehl auf die englische Seite verlinkt
  2. oder aber die Sprachvariable des Shops dynmisch in der Flash Datei ausgeben lassen kann

Gruss
Yves[/QUOTE]
Wo/wie definierst Du den Link zum Produkt?

Hallo Avenger,

der Link wird über eine transparente Schaltfläche im Flash (eine Ebene über der Filmebene) definiert.

on release() {

getURL(“http://www.shop.pat-says-now.com/Kategorie/Artikelname.html”, “_self”);
}

Ziel ist jetzt, dem Link die Sprachvariable en hinzuzufügen, wenn der User Englisch im Shop wählt. Also das sollte dann so aussehen:

on release() {

getURL(“http://www.shop.pat-says-now.com/en/Kategorie/Artikelname.html”, “_self”);
}

Gruss

Wie wäre es damit?

http://www.flash-here.com/tutorials/flash_pass_param.html

Einfach die richtige URL als Parameter übergeben…

Damit funktionierts, danke schön. Nur habe ich feststellen müssen, dass ich damit nicht mein Problem lösen kann.

Deshalb formuliere ich mein Problem anders:

Kann man mit Smarty unterschiedliche Inhalte laden, je nach Sprache?

Also sozusagen mit if/else bestimmen, wenn Sprache Deutsch dann lad das und wenn Sprache Englisch dann lad das anders?

Ich hab die Smarty Doku bereits gelesen, aber bin nicht ganz schlau gewordend daraus, vor allem nicht welches jetzt genau die Sprachvariable ist.

Mit Hilfe des Debug Modus habe ich die aktive Varibalen ausgegeben.

{$oxcmp_lang} ist z.B. eine davon. Es ist ein Array:

{$oxcmp_lang} Array (2)
0 => oxStdClass Object (8)
->id = 0
->oxid = “de”
->abbr = “de”
->name = “Deutsch”
->active = “1”
->sort = “1”
->selected = 1
->link = “http://www.shop.pat-says-now.com/Maeu…”

Damit müsste das mit if/else doch irgenwie klappen, nur wie?

Gruss

Hallo!!!

Sicher geht das. Lass Dir einfach die aktuelle Sprachvariable ausgeben.und übermittle sie an die SWF. Damit kannst Du dann verschiedene Ordner ansteuern.

Wenn “Kategorie/Artikelname.html” über XML geliefert werden, dann einfach die Sprachvariable da, wo die XML gebildet wird, einfügen.

Grüße

Cutty

Danke für eure Tipps.

Versuche jetzt mit if/else mein Glück.

Dazu bräuchte ich aber eure Hilfe, da ich absoluter Smarty Anfänger bin.

Ich möchte wie gesagt im _right.tpl mit Hilfe von if/else unterschiedliche Inhalte ausgeben lassen, abhängig von der aktuellen Sprachvariable.

Wie geht das?

[{if $cmp_lang == “en”}]

Inhalt A

[{/if}]

[{else}]

Inhalt B

[{/else}]

oder so ähnlich? $cmp_lang ist ein array, da müsste ich noch eine spezifische Position (abbr) ansprechen können. Siehe mein Beitrag oben.

Gruss

…Du mußt auf die einzelnen Elemente zugreifen:

[{foreach from = $oxcmp_lang item = _language}]
	[{assign var=sprache value=$_language->selected}]
	[{/foreach}]

Danke vielmals, das scheint zu funktionieren. Nur zum Verständnis, was genau passiert hier?

[{foreach from = $oxcmp_lang item = _language}]

Was bedeutet item = _language bzw. welche Information ist das?

Array (3)
0 => oxStdClass Object (9)
   ->id = 0
   ->name = "EUR"
   ->rate = "1.00"
   ->dec = ","
   ->thousand = "."
   ->sign = "€"
   ->decimal = "2"
   ->selected = 1
   ->link = "xxx?..."
1 => oxStdClass Object (9)
   ->id = 1
   ->name = "GBP"
   ->rate = "0.68"
   ->dec = "."
   ->thousand = ""
   ->sign = "£"
   ->decimal = "2"
   ->selected = 0
   ->link = "xxx

Sorry, aber das verwirrt mich jetzt. In meiner Debug Ausgabe enthält $oxcmp_lang [B]nicht[/B] diese Werte:

[QUOTE=rubbercut;24333]

Array (3)
0 => oxStdClass Object (9)
   ->id = 0
   ->name = "EUR"
   ->rate = "1.00"
   ->dec = ","
   ->thousand = "."
   ->sign = "€"
   ->decimal = "2"
   ->selected = 1
   ->link = "xxx?..."
1 => oxStdClass Object (9)
   ->id = 1
   ->name = "GBP"
   ->rate = "0.68"
   ->dec = "."
   ->thousand = ""
   ->sign = "£"
   ->decimal = "2"
   ->selected = 0
   ->link = "xxx

[/QUOTE]

sondern:

Array (2)
0 => oxStdClass Object (8)
->id = 0
->oxid = “de”
->abbr = “de”
->name = “Deutsch”
->active = “1”
->sort = “1”
->selected = 1
->link = "http://www.shop.pat-says-now.com/Maeu…"
1 => oxStdClass Object (8)
->id = 1
->oxid = “en”
->abbr = “en”
->name = “English”
->active = “1”
->sort = “2”
->selected = 0
->link = “http://www.shop.pat-says-now.com/en/M…”

Ich möchte ja anhand der Abkürzungen de und en bestimmen können, welcher Inhalt geladen werden soll. Also dann

[{if $sprache==“de”}]

lade inhalt x

[{/if}]

[{else $sprache==“en”}]

lade inhalt y

[{/else}]

…ja, war die falsche Zeile, aber selected ist korrect. Dann mach doch aus en eine 0 (Null)…

alles klar, danke. Du hast mir sehr geholfen.

Hallo!!!

Das freut mich. Scheint ja zu klappen.

Grüße

Cutty