Zum Inhalt springen

marker löschen

Erstellt am 20. August 2012 · 4 Antworten · letzte Antwort am 23. August 2012

Tags: Frage

FabianX ·

Hallo ich erstelle über Typoscript eine Slideshow aus dem Ressources Feld.
Nun möchte ich überprüfen ob in dem Feld an einer bestimmten Position ein Bild vorhanden ist.
Falls das nicht der Fall ist möchte ich einen Teil meines Codes überschreiben.
Leider verstehe ich nicht wie ich das machen kann.
Auch einen anderen wrap hab ich nicht hinbekommen da der code dann immer nur für das Element greift das ich grade überprüfe.

lib.slideshow = COA
lib.slideshow {
      wrap = <div class="slideshow">|</div>
     
      1 = COA
      1 {     
        5 = HTML
        5.value = <a href="
        
        10 = IMG_RESOURCE
        10 {
                file {
                    import.data = levelmedia:-1
                    import = uploads/media/
                    import.listNum = 0              
                  }
         }   
        
        15 = HTML
        15.value = "><img src="
        
        20 = IMG_RESOURCE
        20 {
                file {
                    import.data = levelmedia:-1
                    import = uploads/media/
                    import.listNum = 0            
                    width = 702
                    height = 300c
                  }
            } 
               
        25 = HTML
        25.value = "></a>
        }

    2 < .1
    2.10.file.import.listNum = 1
    2.20.file.import.listNum = 1

    3 < .1
    3.10.file.import.listNum = 2
    3.20.file.import.listNum = 2

    4 < .1
    4.10.file.import.listNum = 3
    4.20.file.import.listNum = 3

    5 < .1
    5.10.file.import.listNum = 4
    5.20.file.import.listNum = 4
    5.20.stdWrap.ifEmpty{
      lib.slideshow.5 >
    }

}

Kann mir jemand einen Tip geben ?

Verstehe nicht wie ich innerhalb der Abfrage auf einen anderen Teil des TS zugreifen kann.

5.20.stdWrap.ifEmpty{
      lib.slideshow.5 >
}
FabianX ·

Hi Niels,

danke für deine Antwort.

Leider habe ich nicht verstanden wie ich es so lösen kann.
Hab jetzt eine Extension geschrieben da ich das Typoscript einfach noch nicht begreife 🙂

danton ·

Hi

Zur Vollständigkeithalber

lib.slideshow = TEXT
lib.slideshow{
  wrap = <div class="slideshow">|</div>
  # das Feld Ressourcen enthaelt eine Kommaseparierte Liste
  field = media
  # die wir splitten
  split {
    # nach dem Zeichen,
    token = ,
    # cObjNum = 1 - Damit geben wir an, dass unsere Einzelteile an Hand der Informationen in Array 1 verarbeitet werden sollen 
    cObjNum = 1
    1 {
      # Erstellen ein Bildobjekt
      10 = IMAGE
      # wir importieren den aktuellen Dateinamen (current)
      10{
        file{
          # wir importieren den aktuellen Dateinamen (current)
          import.current=1
          # da alle Dateien im Feld Ressourcen keine Pfad-Angabe haben
          # (sie liegen normalerweise unter uploads/media/)
          # geben wir den Pfad hier an
          import = uploads/media/
          # 250px Breite
          width = 250px
        }
        # Zusätzlich wird ein Link zur Seite mit der ID 15 um das Bild gewrappt
        stdWrap{
          typolink.parameter = 15
        }
        # Wir wrappen diesen Link nochmal
        wrap = <div style="padding:10px;">|</div>
      }
    }
  }
}

Gruß Niels