Logo der TYPO3 Usergruppe Leipzig

DockMenu-Adaption für TYPO3

Ziel war das Verbinden der 2 Komponenten

  • DockMenu (FishEye-Effekt) clientseitig per JavaScript und
  • "GTMENU" als zugängliche Text-Navigation Image-Replacement-Technologie serverseitig per TypoScript

Details zum DockMenu gibt es hier:

Weitere Infos zum "GTMENU" hier:

Alternativen zum GTMENU (nicht zugänglich):

  • "Style 2" ist GMENU, für welches die Seitentitel per GIFBUILDER gerendert und dem DockMenu als img-Tag übergeben werden (Skalierung der Schrift möglich)
  • "Style 3" ist TMENU mit Icon, welches aus dem Resource-Feld der Seiten gelesen und per stdWrap.prepend in den Link eingebunden wird

Demonstration

in Kürze...

TypoScript-Setup (Extension-Template)

TypoScript
# mspindler 2008-09

[globalVar=GP:menustyle=] || [globalVar=GP:menustyle=1]

# Menü, zugänglich (Image Replacement)
# Quelle TypoScript: http://snipplr.com/view/5929/accessible-gtmenu/
# Quelle JS-DockMenu: http://www.ajaxdaddy.com/demo-interface-fisheye.html
# Problem: CSS-Hintergrundbilder können nicht skaliert werden!
page.10.marks.TITLE.value = DockMenu als "GTMENU" mit Image Replacement
page.includeCSS.dockmenu_ir = fileadmin/tpl/styles_dockmenu_ir.css
lib.gtmenu = HMENU
lib.gtmenu {
  1 = TMENU
  1 {
    wrap = <ul id="navi">|</ul>
    NO.doNotLinkIt = 1
    NO.wrapItemAndSub = <li>|</li>
    NO.stdWrap.cObject = COA
    NO.stdWrap.cObject {
      10 = TEXT
      10 {
        field = title
        typolink {
          parameter.field = uid
          ATagParams.cObject = COA
          ATagParams.cObject {

            10 = IMG_RESOURCE
            10.file = GIFBUILDER
            10.file {
              format = png
              XY = [10.w]+[20.w]+10,100
              backColor = #eeeeee
              transparentColor = #eeeeee
              10 = TEXT
              10 {
                text.field = subtitle//title
                fontSize = 20
                offset = 5,20
                fontColor = #787879
              }

              20 = BOX
              20.dimensions = 0,30,[10.w]+[20.w]+10,30
              20.color = #e53827

              30 = TEXT
              30 < .10
              30 {
                offset = 5,50
                fontColor = #ffffff
              }
            }
            10.stdWrap.dataWrap = class="dock-item" style="width:{TSFE:lastImgResourceInfo|0}px; background-image: url('/|');"
          }
        }
      }
    }
  }
}

[globalVar=GP:menustyle=2]
# Grafisches Menü, nicht zugänglich (HTML-Image)
page.10.marks.TITLE.value = DockMenu als GMENU mit alt/title-Tag
  lib.gtmenu = HMENU
  lib.gtmenu {
    1 = GMENU
    1 {
      wrap = <ul id="navi">|</ul>
      expAll = 1
      noBlur = 1
      disableAltText = 1
      NO = 1
      NO {
        allWrap = <li>|</li>
        XY = 200,50
        format = png
        backColor = #eeeeee
        ATagParams = class="dock-item"
        imgParams = title="{field:subtitle//field:title}" alt="{field:subtitle//field:title}" style="height:auto"
        allStdWrap.insertData = 1
        10 = TEXT
        10 {
          text.field = subtitle//title
          fontSize = 50
          offset = 5,40
          fontColor = #787879
        }
     }
  }
}

[globalVar=GP:menustyle=3]
# Textmenü, nicht zugänglich, mit Icons (prepend-Image aus Page Resource)
page.10.marks.TITLE.value = DockMenu als TMENU mit Icons (prepend-Image aus Page Resource)
lib.gtmenu = HMENU
lib.gtmenu {
  1 = TMENU
  1 {
    wrap = <ul id="navi">|</ul>
    expAll = 1
    noBlur = 1
    NO = 1
    NO {
      allWrap = <li>|</li>
      ATagParams = class="dock-item"
      stdWrap.prepend = IMAGE
      stdWrap.prepend {
        params = style="height:auto"
        file {
          import.field = media
          import = uploads/media/
          import.listNum = 0
        }
      }
    }
  }
}

[end]
Autor: M. Spindler

TUGLE TERMINE

das nächste TYPO3-Usergruppentreffen findet am 30.05.2011 um 19:00 Uhr im Horns-Erben...
Das erste TUGLE-Treffen 2011 findet am Montag, den 07.03.2011 um 19:00 Uhr in...
Wie gestern auf dem interessanten TUGLE-Treffen besprochen, treffen wir uns nächstes Mal bei...

TYPO3 NEWS

After an exciting 2011 we have meanwhile completed the first month of 2012. Just like probably everyone else we have some ideas for doing things better than in the past, and this includes...
The organizational structure of the TYPO3 Association isn't a proper fit anymore to the TYPO3 project's own internal structure, nor does it fit the size the project has become over time. A need for...
Security vulnerabilities have been discovered in third-party TYPO3 extensions: css_filelinks, terminal, beuserswitch, rtg_files, irfaq, skt_eurocalc, jftcaforms, bc_post2facebook, aeurltool,...