Zum Inhalt springen

Menüeinträge zählen

Erstellt am 15. Mai 2006 · 9 Antworten · letzte Antwort am 13. Juli 2006

Tags: Frage

MrFelicity ·

Hallo,

ich hab folgendes Problem: Ein Menü, welches aus vielen, gleichen Flash Dateien besteht. Jeder FlashDatei wird der Link und der Text als Variabel übergeben. Da dieses Flash aber nun auf einen besonderen Hintergrund liegt, und ich das Flash natürlich nicht transparent machen kann, muss ich wissen, um wieviel ich den FlashHintergrund verschieben muss. Klingt kompliziert, aber mein Problem muss man nicht umbedingt nachvollziehen können. Eigentlich geht es nur um Folgendes: Ich muss der Flash-Datei sagen, welcher nummerische Menüpunkt er denn ist. Da ich eigentlich PHP-Programmierer bin, kann ich nicht ganz nachvollziehen, dass es da ein Problem geben kann. Aber ich habe mich nun Stunden damit beschäftigt, kam aber auf keine Lösung. Ich habe folgende Lösung gefunden, die bei mir aber nicht funktioniert:

subparts.nav.2 = TMENU
subparts.nav.2.NO.doNotLinkIt = 1
subparts.nav.2.ACT.doNotLinkIt = 1
subparts.nav.2.NO.subst_elementUid = 1
subparts.nav.2.ACT.subst_elementUid = 1
subparts.nav.2 {

NO.allWrap = <object><embed src="fileadmin/templates/leftmenu.swf?text=|&id={elementUid}&c={register:count_MENUOBJ}" quality="high" bgcolor="#ffffff"</object>
ACT = 1
ACT.allWrap = <object><embed src="fileadmin/templates/leftmenu.swf?text=|&id={elementUid}&c={register:count_MENUOBJ}" quality="high" bgcolor="#ffffff"</object>
}

Also, das einfache pasten von register:count_MENUOBJ funktioniert in diesem Fall nicht. Warum?
Ist es vielleicht nicht möglich, eine ganz einfache Variabel mit zählen zu lassen? Wie kann ich dies am geschicktesten lösen?

Vielen Dank für euer bemühen

Gruß Felix

PS.: Den Code habe ich etwas vereinfacht. So kann man natürlich kein Flash integrieren. Wenn der restliche Code für das Menü wichtig ist, dann werde ich diesen gerne noch posten.

MrFelicity ·

Wow, das geht ja wirklich schnell hier.

Genau mit diesem Post habe ich mich beschäftigt, und wahrscheinlich kann ich nicht ganz nachvollziehen, was dort gemacht wird. Ich habe versucht dies zu rekonstruieren und es auf mein Problem zu modifizieren. Aber leider vergebens. Ich bin zu dem Schluss gekommen, dass dies so nicht funktioniert. Woher will den zum Beispiel TS wissen, wo es die Count_Zahl einfügt?

Ich wurde daraus nicht schlau, aber vielleicht kann mir jemand das etwas erläutern.

Vielen Dank

just2b ·

sowas hier:

stdWrap.cObject = COA
stdWrap.cObject {
5 = TEXT
5.value = <object><embed src="fileadmin/templates/leftmenu.swf?&id=

6 = TEXT
6.field = uid
7 = TEXT
7.value = &c=
10 = TEXT	
10.dataWrap = {register:count_MENUOBJ}
11 = TEXT
11.value = quality="high" bgcolor="#ffffff"</object>
}

lg georg

MrFelicity ·

Hallo,

vielen Dank Georg für Deine Hilfe. Prinzipiell funktioniert das jetzt so, wie Du es mir gesagt hast, allerdings ist es doch nicht die Lösung, die ich suche. Denn er zählt natürlich die Hauptpunkte mit. Allerdings ist das nur ein Untermenü. Folgendes Problem. Das Hauptmenü hat sieben Punkte. Also der Erste Punkt vom letzen Hauptpunkt hat die Nummer 8. Der erste Unterpunkt vom Hauptpunkt 7 hat die Nummer 8. Also es hilft mir nicht viel weiter, es sei denn ich wüsste, welchen Hauptpunkt ich gerade habe. Aber ich bekomme es nicht hin, dem Flash dieses mitzuteilen.

Ich stehe mitlerweile mit TypoScript etwas auf Kriegsfuss. Da ich von anderen Programmiersprachen komme, wie zum Beispiel PHP, kann ich einige Punkte nicht ganz nachvollziehen. Ich versuche zum Beispiel einen Zähler mitlaufen zu lassen. Also einfach nur eine Variable, die bei jedem Schleifendurchgang plus 1 rechnet. Dies bekomm ich leider nicht hin, bzw kann die Variable dann nicht ausgeben. Wie würde sowas funktionieren, denn im Schleifendurchgang könnte ich ja die aktuelle ID vom Hauptmenüpunkt speichern.

Sehr freundlich, wenn mir jemand helfen könnte. Wenn ich die Lösung dann auch zusammen habe, werde ich sie hier ausführlich posten.

Vielen Dank
Felix

MrFelicity ·

Das ist genau das, was ich suche. Vielen Dank. Leider stehe ich mit dem TypoScript immer noch etwas auf dem Kriegsfuss. Ich hab nach meinem besten Wissen versucht, dieses Beispiel auf meines zu transferieren, aber ich bekomm das nicht wirklich hin. Kann mir da jemand einen kleinen Tipp geben. Hier mein code für diesen Part:

		subparts.nav2.2 {
			NO {
				stdWrap.cObject = COA
				stdWrap.cObject {
					100 = LOAD_REGISTER
					100.H1Counter.cObject = TEXT
					100.H1Counter.cObject.data = register:H1Counter
					100.H1Counter.cObject.wrap = |+1
					100.H1Counter.cObject.if.isTrue.current = 1
					100.H1Counter.prioriCalc = intval
					500 = TEXT
					500.insertData = 1
					500.value = {register:H1Counter}
					600 = TEXT
					600.field = title
					600.wrap = |
					700 = TEXT
					700.value = &id=
					800 = TEXT
					800.field = uid 
				} 
			}

Ich wäre sehr dankbar für eine Lösung, denn ich komme da wirklich nicht weiter.

steffenk ·

damit er überhaupt zählt, musst Du folgendes ändern:

500 = TEXT
500.current = 1
500.data= register:H1Counter