Aktiven Zustand ermitteln der Archivliste ? [Gelöst]

  • M8TRIX M8TRIX
    Jedi-Meister
    0 x
    331 Beiträge
    0 Hilfreiche Beiträge
    24. 04. 2006, 14:08

    Hallo Forum,

    ich habe die Übersicht der Archivliste unterhalb meines Untermenüs mittels einem Submarkers ausgeben lassen:

    Untermenüpunk1

    • Januar 2006
      August 2005
      Juli 2005
      Juni 2005
      Mai 2005

    usw.

    Jetzt ist dies ja kein Menu sondern nur des News Plugin vom Typ (AMENU)!

    Wenn ich nun auf Januar 2006 klicke, wird mir in meinem Hauptcontent eine liste(LIST) von Einträgen aus Januar 2006 angezeigt.

    Klicke ich eine der Nachrichten an, sehe ich die detailierte Nachricht (SINGLE).

    Wie schaffe ich es, bzw. ist es überhaupt Möglich,
    das bei Klick auf eine Archivliste:

    • Januar 2006

    und anschließend auch auf Klick eines Eintrages zur Singleansicht, dieser Punkt als Aktiv gekennzeichnet wird?

    argh...

    #giggle# ich Hoffe ich habs des nicht ganz zu kompliziert beschrieben O_o

    liebe Grüße

    sandra


  • 1
  • 0 x
    10 Beiträge
    0 Hilfreiche Beiträge
    25. 04. 2006, 14:46

    Schnucki, du dein Archiv!

    Also, da du per TypoScript nur auf den Titel des Archivlinks zugreifen kannst, bleibt dir auch nur diese Möglichkeit als Lösung.

    Um heraus zu finden, ob der jeweilige Archiv-Menüpunkt ausgewählt wurde musst du die POST/GET Variablen abfragen. Realisieren kannst du dies mit einer IF-Abfrage, die du auf das entsprechenden Objekt anwenden musst.

    [ts]if {
    value.field = start
    equals.data = GPvar:tx_ttnews|pS
    }
    [/ts]

    Hierbei bildet [b]value.field[/b] das Datenbank-Feld der Tabelle tt_news. [b]equals.data[/b] stellt den Vergleich dar. Lesen muss man das also folgendermaßen:
    Wenn der Wert des Datenbank-Feldes [b]start[/b] der GET/POST Variablen [b]tx_ttnews[pS][/b] entspricht, dann kommt das Objekt, der das IF zugewiesen wurde, zur Anwendung.

    Einen "ELSE" Zweig kann man durch eine Negation realisiersen:
    [ts]negate = 1[/ts]

    Also wieder zu dem [b][i]archivTitleCObject[/i][/b] aus deinem letzten Posting:

    [ts]plugin.tt_news {
    reverseAMenu = 1
    archiveMode = month
    archiveTitleCObject >
    archiveTitleCObject = COA
    archiveTitleCObject {
    # normal
    10 = COA
    10 {
    10= TEXT
    10 {
    field = start
    strftime = %B
    wrap = <div><div style="width: 65px; float: left;">|</div>
    }
    11 = TEXT
    11 {
    field = stop
    strftime = %Y
    wrap =|</div>
    }
    if {
    value.field = start
    equals.data = GPvar:tx_ttnews|pS
    negate = 1
    }
    }

    # aktiv
    20 = COA
    20 {
    10= TEXT
    10 {
    field = start
    strftime = %B
    wrap = <div style="background-color:red;"><div style="width: 65px; float: left;">|</div>
    }
    11 = TEXT
    11 {
    field = stop
    strftime = %Y
    wrap =|</div>
    }
    if {
    value.field = start
    equals.data = GPvar:tx_ttnews|pS
    }
    }
    }
    }
    [/ts]

    Aber wie ich vorher schon einmal sagte handelt es sich nur um den Titel, den Link selber kannst du dadurch nicht beinflussen. Ausserdem funktioniert dieses Beispiel auch nur, wenn du für deine News nicht:

    [ts]useHRDates = 1
    [/ts]

    gesetzt hast. Dies würde nämlich bedeuten, das anstatt der GET-Parameter [i]pS[/i], [i]pL[/i] und [i]arc[/i] die Variablen [i]year[/i] und [i]month[/i] übergeben werden und du diese abfragen musst.

  • M8TRIX M8TRIX
    Jedi-Meister
    0 x
    331 Beiträge
    0 Hilfreiche Beiträge
    26. 04. 2006, 08:44

    OMG! :D

    [b]spezialolli[/b] ... ja das ist es! Es reicht vollkommen aus, den DIV zu beeinflussen und nicht des a Tag :D

    Jetzt sieht man wenigstens wo man sich befindet *freu*

    Ich bin Dir so Dankbar :o Ich hoffe ich kann mich auch mal bei Dir revangieren , befürchte aber rein Wissentechnisch Typo3-Spezifisch wird des nichts werden ;)

    vielen lieben Dank nochmal [b]spezialolli[/b] *knutsch* << Und der Kiss Smiley fehlt immer noch *g*

    Sandra

  • 0 x
    21 Beiträge
    0 Hilfreiche Beiträge
    28. 08. 2006, 17:40

    Hi!

    Wenn ich mich mal hier einklinken darf ...
    [quote="spezialolli"]
    Ausserdem funktioniert dieses Beispiel auch nur, wenn du für deine News nicht:

    [ts]useHRDates = 1
    [/ts]

    gesetzt hast. Dies würde nämlich bedeuten, das anstatt der GET-Parameter [i]pS[/i], [i]pL[/i] und [i]arc[/i] die Variablen [i]year[/i] und [i]month[/i] übergeben werden und du diese abfragen musst.
    [/quote]
    Soweit alles klar, aber wie genau mache ich das Abfragen des "month" bei annem useHrDates? So geht's irgendwie nicht:
    [TS]plugin.tt_news {
    reverseAMenu = 1
    archiveMode = month
    archiveTitleCObject >
    archiveTitleCObject = COA
    archiveTitleCObject {
    # normal
    10 = COA
    10 {
    10= TEXT
    10 {
    field = start
    strftime = %B
    wrap = <div><div style="width: 65px; float: left;">|</div>
    }
    11 = TEXT
    11 {
    field = stop
    strftime = %Y
    wrap =|</div>
    }
    if {
    value.field = start
    equals.data = GPvar:tx_ttnews|month
    negate = 1
    }
    }

    # aktiv
    20 = COA
    20 {
    10= TEXT
    10 {
    field = start
    strftime = %B
    wrap = <div style="background-color:red;"><div style="width: 65px; float: left;">|</div>
    }
    11 = TEXT
    11 {
    field = stop
    strftime = %Y
    wrap =|</div>
    }
    if {
    value.field = start
    equals.data = GPvar:tx_ttnews|month
    }
    }
    }
    }[/TS]
    Jemand nen Tipp?

    Grüße, Tobias

  • g1zmo g1zmo
    Padawan
    0 x
    36 Beiträge
    0 Hilfreiche Beiträge
    13. 09. 2006, 12:12

    Na da klink ich mich gleich auch mit ein.
    Ich will das ganze mit nem Jahresmenü machen. Mit pS funktioniert alles, aber der Vergleich mit GPvar:tx_ttnews|year funktioniert einfach nicht. Auslesen und ausgeben kann ich die Variable. Ich nehm mal an, das passiert, weil in start und stop ein Timestamp steht, ich aber mit ner Jahreszahl vergleiche, bzw. Tobias mit nem Monat.

    Wie kriegen wir also da noch ein strftime mit in die Abfrage rein?

  • g1zmo g1zmo
    Padawan
    0 x
    36 Beiträge
    0 Hilfreiche Beiträge
    13. 09. 2006, 12:29

    Hm, ok. Da hätt ich auch früher drauf kommen können...
    @Tobias: So sieht meine Abfrage jetzt aus. Eventuell kannst du das ja für dich irgendwie verwenden.

    [TS]plugin.tt_news {

    archiveMode = year
    archiveTitleCObject >
    archiveTitleCObject = COA
    archiveTitleCObject {
    10 = COA
    10 {
    11 = TEXT
    11 {
    field = start
    strftime = %Y
    wrap = <span id="amenu-active">|</span>
    }
    if {
    value.field = start
    value.strftime = %Y
    equals.data = GPvar:tx_ttnews|year
    }
    }
    20 = COA
    20 {
    11 = TEXT
    11 {
    field = start
    strftime = %Y
    wrap =
    }
    if {
    value.field = start
    value.strftime = %Y
    equals.data = GPvar:tx_ttnews|year
    negate = 1
    }
    }
    }
    }[/TS]

  • 0 x
    99 Beiträge
    0 Hilfreiche Beiträge
    14. 03. 2008, 11:05

    Hallo erstmal... ich habe folgendes problem: im Moment wird mein Menü so dargestellt:

    Nachrichten Archiv:

    * 2008
    * 2008: 1 Einträge

    Ich hätte aber gerne folgende Ausgabe:

    *2008 *2007 *2006

    das die Einträge nebeneinander hängen, bekomm ich hin per CSS aber ich will weder das anfangsjahr, noch die anzahl der einträge (maximal mit einer Klammer zb. 2008 (8-))
    hat jemand hier einen plan wie ich das realisieren kann?
    Grüße Harry aka Randomresult

  • 0 x
    11 Beiträge
    0 Hilfreiche Beiträge
    07. 04. 2010, 14:28

    Ich hätte dazu auch eine Frage.
    Wie bekomme ich es denn hin das der erste Eintrag des AMenues automatisch aktiviert ist? Oder ist das nicht möglich?

  • 1