Kurzinformationen

DieAntwort GmbH TV & Film Produktionsfirma aus München. Wir produzieren TV, Imagefilme, Eventfilme, Magazinbeiträge, Reportagen und Dokumentationen für viele großen deutschen TV-Sender Pro7, ZDF, Sat1,... robots = INDEX,FOLLOW } [GLOBAL] # *************************************************************************** # Notice: "styles." (and "temp.") objects are UNSET after template parsing! # Use "lib." for persisting storage of objects. # *************************************************************************** # Clear out any constants in this reserved room! styles.content > # get content styles.content.get = CONTENT styles.content.get { table = tt_content select.orderBy = sorting select.where = colPos=0 select.languageField = sys_language_uid } # get content, left styles.content.getLeft < styles.content.get styles.content.getLeft.select.where = colPos=1 # get content, right styles.content.getRight < styles.content.get styles.content.getRight.select.where = colPos=2 # get content, margin styles.content.getBorder < styles.content.get styles.content.getBorder.select.where = colPos=3 # get news styles.content.getNews < styles.content.get styles.content.getNews.select.pidInList = 0 # Edit page object: styles.content.editPanelPage = COA styles.content.editPanelPage { 10 = EDITPANEL 10 { allow = toolbar,move,hide label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.page label.wrap = |&nbsp;<b>%s</b> } } # ********************************************************************* # "lib." objects are preserved from unsetting after template parsing # ********************************************************************* # Creates persistent ParseFunc setup for non-HTML content. This is recommended to use (as a reference!) lib.parseFunc { makelinks = 1 makelinks.http.keep = path makelinks.http.extTarget = _blank makelinks.mailto.keep = path tags { link = TEXT link { current = 1 typolink.parameter.data = parameters : allParams typolink.extTarget = _blank typolink.target = parseFunc.constants =1 } } allowTags = b,i,u,a,img,br,div,center,pre,font,hr,sub,sup,p,strong,em,li,ul,ol,blockquote,strike,del,ins,span,h1,h2,h3,h4,h5,h6,address,dl,dt,dd denyTags = * sword = <span class="csc-sword">|</span> constants = 1 nonTypoTagStdWrap.HTMLparser = 1 nonTypoTagStdWrap.HTMLparser { keepNonMatchedTags = 1 htmlSpecialChars = 2 } } # good old parsefunc in "styles.content.parseFunc" is created for backwards compatibility. Don't use it, just ignore. styles.content.parseFunc < lib.parseFunc # Creates persistent ParseFunc setup for RTE content (which is mainly HTML) based on the "ts_css" transformation. lib.parseFunc_RTE < lib.parseFunc lib.parseFunc_RTE { // makelinks > # Processing <table> and <blockquote> blocks separately externalBlocks = table, blockquote, dd, dl, ol, ul, div externalBlocks { # The blockquote content is passed into parseFunc again... blockquote.stripNL=1 blockquote.callRecursive=1 blockquote.callRecursive.tagStdWrap.HTMLparser = 1 blockquote.callRecursive.tagStdWrap.HTMLparser.tags.blockquote.overrideAttribs = style="margin-bottom:0;margin-top:0;" ol.stripNL=1 ol.stdWrap.parseFunc = < lib.parseFunc ul.stripNL=1 ul.stdWrap.parseFunc = < lib.parseFunc table.stripNL=1 table.stdWrap.HTMLparser = 1 table.stdWrap.HTMLparser.tags.table.fixAttrib.class { default = contenttable always = 1 list = contenttable } table.stdWrap.HTMLparser.keepNonMatchedTags = 1 table.HTMLtableCells=1 table.HTMLtableCells { default.callRecursive=1 addChr10BetweenParagraphs=1 } div.stripNL = 1 div.callRecursive = 1 # Definition list processing dl < .div dd < .div } nonTypoTagStdWrap.encapsLines { encapsTagList = p,pre,h1,h2,h3,h4,h5,h6,hr,dt remapTag.DIV = P nonWrappedTag = P innerStdWrap_all.ifBlank = &nbsp; addAttributes.P.class = bodytext addAttributes.P.class.setOnly=blank } nonTypoTagStdWrap.HTMLparser = 1 nonTypoTagStdWrap.HTMLparser { keepNonMatchedTags = 1 htmlSpecialChars = 2 } } # Content header: lib.stdheader = COA lib.stdheader { # Create align style-attribute for <Hx> tags 2 = LOAD_REGISTER 2.headerStyle.field = header_position 2.headerStyle.required = 1 2.headerStyle.noTrimWrap = | style="text-align:|;"| # Create class="csc-firstHeader" attribute for <Hx> tags 3 = LOAD_REGISTER 3.headerClass = csc-firstHeader 3.headerClass.if.value=1 3.headerClass.if.equals.data = cObj:parentRecordNumber 3.headerClass.noTrimWrap = | class="|"| # Date format: 5 = TEXT 5.field = date 5.if.isTrue.field = date 5.strftime = %x 5.wrap = <p class="csc-header-date">|</p> 5.prefixComment = 2 | Header date: # This CASE cObject renders the header content: # currentValue is set to the header data, possibly wrapped in link-tags. 10 = CASE 10.setCurrent { field = header htmlSpecialChars = 1 typolink.parameter.field = header_link } 10.key.field = header_layout 10.key.ifEmpty = 1 10.key.ifEmpty.override.data = register: defaultHeaderType 10.1 = TEXT 10.1.current = 1 10.1.dataWrap = <h1{register:headerStyle}{register:headerClass}>|</h1> 10.2 < .10.1 10.2.dataWrap = <h2{register:headerStyle}{register:headerClass}>|</h2> 10.3 < .10.1 10.3.dataWrap = <h3{register:headerStyle}{register:headerClass}>|</h3> 10.4 < .10.1 10.4.dataWrap = <h4{register:headerStyle}{register:headerClass}>|</h4> 10.5 < .10.1 10.5.dataWrap = <h5{register:headerStyle}{register:headerClass}>|</h5> # Pops the used registers off the stack: 98 = RESTORE_REGISTER 99 = RESTORE_REGISTER # Post-processing: stdWrap.fieldRequired = header stdWrap.if { equals.field = header_layout value = 100 negate = 1 } stdWrap.editIcons = tt_content : header, [header_layout | header_position], [header_link|date] stdWrap.editIcons.beforeLastTag = 1 stdWrap.editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.header stdWrap.dataWrap = <div class="csc-header csc-header-n{cObj:parentRecordNumber}">|</div> stdWrap.prefixComment = 2 | Header: } #****************************************************** # Including library for processing of some elements: #****************************************************** includeLibs.tx_cssstyledcontent_pi1 = EXT:css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php #********************************** # tt_content is started #********************************** tt_content > tt_content = CASE tt_content.key.field = CType tt_content.stdWrap { innerWrap.cObject = CASE innerWrap.cObject { key.field = section_frame default = COA default { 10 = TEXT 10 { value = <div id="c{field:uid}" override.cObject = TEXT override.cObject { value = <div if.value = div if.equals.field = CType } insertData = 1 } 15 = TEXT 15 { value = csc-default noTrimWrap = | class="|" | required = 1 } 20 = COA 20 { 10 = COA 10 { 10 = TEXT 10 { value = 0 wrap = |+ if.isTrue = 0 } 20 = TEXT 20 { field = spaceBefore } stdWrap { prioriCalc = intval wrap = margin-top:|px; required = 1 ifEmpty.value = } } 20 = COA 20 { 10 = TEXT 10 { value = 0 wrap = |+ if.isTrue = 0 } 20 = TEXT 20 { field = spaceAfter } stdWrap { prioriCalc = intval wrap = margin-bottom:|px; required = 1 ifEmpty.value = } } stdWrap.noTrimWrap = | style="|" | stdWrap.required = 1 } 30 = TEXT 30.value = >|</div> } 1 =< tt_content.stdWrap.innerWrap.cObject.default 1.15.value = csc-frame csc-frame-invisible 5 =< tt_content.stdWrap.innerWrap.cObject.default 5.15.value = csc-frame csc-frame-rulerBefore 6 =< tt_content.stdWrap.innerWrap.cObject.default 6.15.value = csc-frame csc-frame-rulerAfter 10 =< tt_content.stdWrap.innerWrap.cObject.default 10.15.value = csc-frame csc-frame-indent 11 =< tt_content.stdWrap.innerWrap.cObject.default 11.15.value = csc-frame csc-frame-indent3366 12 =< tt_content.stdWrap.innerWrap.cObject.default 12.15.value = csc-frame csc-frame-indent6633 20 =< tt_content.stdWrap.innerWrap.cObject.default 20.15.value = csc-frame csc-frame-frame1 21 =< tt_content.stdWrap.innerWrap.cObject.default 21.15.value = csc-frame csc-frame-frame2 66 = COA 66 { 10 = TEXT 10 { value = <a id="c{field:uid}"></a> insertData = 1 } 20 = COA 20 { 10 = TEXT 10 { value = 0 wrap = |+ if.isTrue = 0 } 20 = TEXT 20 { field = spaceBefore } stdWrap { prioriCalc = intval wrap = margin-top:|px; required = 1 ifEmpty.value = wrap2 = <div style="|"></div> } } 30 = TEXT 30 { value = | } 40 < .20 40 { 10 { value = 0 if.isTrue = 0 } 20.field = spaceAfter stdWrap.wrap = margin-bottom:|px; } } } innerWrap2 = | <p class="csc-linkToTop"><a href="#">{LLL:EXT:css_styled_content/pi1/locallang.xml:label.toTop}</a></p> innerWrap2.insertData = 1 innerWrap2.fieldRequired = linkToTop prepend = TEXT prepend.dataWrap = <a id="c{field:_LOCALIZED_UID}"></a> prepend.if.isTrue.field = _LOCALIZED_UID editPanel = 1 editPanel { allow = move,new,edit,hide,delete line = 5 label = %s onlyCurrentPid = 1 previewBorder = 4 edit.displayRecord = 1 } prefixComment = 1 | CONTENT ELEMENT, uid:{field:uid}/{field:CType} } # ***************** # CType: header # ***************** # See Object path "lib.stdheader" tt_content.header = COA tt_content.header { 10 = < lib.stdheader 20 = TEXT 20 { field = subheader required = 1 dataWrap = <p class="csc-subheader csc-subheader-{field:layout}">|</p> htmlSpecialChars = 1 editIcons = tt_content:subheader,layout editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.subheader prefixComment = 2 | Subheader: } } # ***************** # CType: text # ***************** tt_content.text = COA tt_content.text { 10 = < lib.stdheader 20 = TEXT 20 { field = bodytext required = 1 parseFunc = < lib.parseFunc_RTE editIcons = tt_content:bodytext, rte_enabled editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.bodytext prefixComment = 2 | Text: } } # ***************** # CType: image # ***************** # (also used for rendering 'textpic' type): tt_content.image = COA tt_content.image.10 = < lib.stdheader tt_content.image.20 = USER tt_content.image.20 { userFunc = tx_cssstyledcontent_pi1->render_textpic # Image source imgList.field = image imgPath = uploads/pics/ # Single image rendering imgObjNum = 1 1 { file.import.current = 1 file.width.field = imagewidth imageLinkWrap = 1 imageLinkWrap { bodyTag = <body style="margin:0; background:#fff;"> wrap = <a href="javascript:close();"> | </a> width = 800m height = 600m effects = JSwindow = 1 JSwindow.newWindow = 0 JSwindow.if.isFalse = 0 directImageLink = 0 enable.field = image_zoom enable.ifEmpty.typolink.parameter.field = image_link enable.ifEmpty.typolink.parameter.listNum.splitChar = 10 enable.ifEmpty.typolink.parameter.listNum.stdWrap.data = register : IMAGE_NUM_CURRENT enable.ifEmpty.typolink.returnLast = url typolink.parameter.field = image_link typolink.parameter.listNum.splitChar = 10 typolink.parameter.listNum.stdWrap.data = register : IMAGE_NUM_CURRENT typolink.target = typolink.extTarget = _blank linkParams.ATagParams.dataWrap = class="lightbox" rel="lightbox[{field:uid}]" } altText = TEXT altText { field = altText stripHtml = 1 split.token.char = 10 split.token.if.isTrue = 1 split.returnKey.data = register : IMAGE_NUM_CURRENT } titleText < .altText titleText.field = titleText longdescURL < .altText longdescURL.field = longdescURL emptyTitleHandling = removeAttr titleInLink = 1 titleInLinkAndImg = 0 } textPos.field = imageorient maxW = 600 maxW.override.data = register:maxImageWidth maxWInText = maxWInText.override.data = register:maxImageWidthInText equalH.field = imageheight image_compression.field = image_compression image_effects.field = image_effects noRows.field = image_noRows cols.field = imagecols border.field = imageborder caption { 1 = TEXT 1 { field = imagecaption required = 1 parseFunc =< lib.parseFunc br = 1 split.token.char = 10 split.token.if.isPositive = 1 + 0 split.returnKey.data = register : IMAGE_NUM_CURRENT } } # captionSplit is deprecated, use imageTextSplit instead captionSplit = 0 captionAlign.field = imagecaption_position # caption/alttext/title/longdescURL splitting imageTextSplit = 1 borderCol = black borderThick = 2 borderClass = csc-textpic-border colSpace = 10 rowSpace = 10 textMargin = 10 borderSpace = 0 separateRows = 1 addClasses = addClassesImage = addClassesImage.ifEmpty = csc-textpic-firstcol csc-textpic-lastcol addClassesImage.override = csc-textpic-firstcol |*| |*| csc-textpic-lastcol addClassesImage.override.if { isGreaterThan.field = imagecols value = 1 } # imageStdWrap.dataWrap = <div class="csc-textpic-imagewrap" style="width:{register:totalwidth}px;"> | </div> imageStdWrapNoWidth.wrap = <div class="csc-textpic-imagewrap"> | </div> # if noRows is set, wrap around each column: imageColumnStdWrap.dataWrap = <div class="csc-textpic-imagecolumn" style="width:{register:columnwidth}px;"> | </div> layout = CASE layout { key.field = imageorient # above-center default = TEXT default.value = <div class="csc-textpic csc-textpic-center csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> # above-right 1 = TEXT 1.value = <div class="csc-textpic csc-textpic-right csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> # above-left 2 = TEXT 2.value = <div class="csc-textpic csc-textpic-left csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> # below-center 8 = TEXT 8.value = <div class="csc-textpic csc-textpic-center csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div> # below-right 9 = TEXT 9.value = <div class="csc-textpic csc-textpic-right csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div> # below-left 10 = TEXT 10.value = <div class="csc-textpic csc-textpic-left csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div> # intext-right 17 = TEXT 17.value = <div class="csc-textpic csc-textpic-intext-right###CLASSES###">###IMAGES######TEXT###</div> 17.override = <div class="csc-textpic csc-textpic-intext-right###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> 17.override.if.isTrue = 1 # intext-left 18 = TEXT 18.value = <div class="csc-textpic csc-textpic-intext-left###CLASSES###">###IMAGES######TEXT###</div> 18.override = <div class="csc-textpic csc-textpic-intext-left###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> 18.override.if.isTrue = 1 # intext-right-nowrap 25 = TEXT 25.value = <div class="csc-textpic csc-textpic-intext-right-nowrap###CLASSES###">###IMAGES###<div style="margin-right:{register:rowWidthPlusTextMargin}px;">###TEXT###</div></div><div class="csc-textpic-clear"><!-- --></div> 25.insertData = 1 # intext-left-nowrap 26 = TEXT 26.value = <div class="csc-textpic csc-textpic-intext-left-nowrap###CLASSES###">###IMAGES###<div style="margin-left:{register:rowWidthPlusTextMargin}px;">###TEXT###</div></div><div class="csc-textpic-clear"><!-- --></div> 26.insertData = 1 } rendering { dl { # Choose another rendering for special edge cases fallbackRendering = COA fallbackRendering { # Just one image without a caption => don't need the dl-overhead, use the "simple" rendering 10 = TEXT 10 { if { isFalse.field = imagecaption value = 1 equals.data = register:imageCount } value = simple } # Multiple images and one global caption => "ul" 20 = TEXT 20 { if { value = 1 isGreaterThan.data = register:imageCount isTrue.if.isTrue.data = register:renderGlobalCaption isTrue.field = imagecaption } value = ul } # Multiple images and no caption at all => "ul" 30 = TEXT 30 { if { value = 1 isGreaterThan.data = register:imageCount isFalse.field = imagecaption } value = ul } } imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"> | </div> imageLastRowStdWrap.dataWrap = <div class="csc-textpic-imagerow csc-textpic-imagerow-last" style="width:{register:rowwidth}px;"> | </div> noRowsStdWrap.wrap = oneImageStdWrap.dataWrap = <dl class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </dl> imgTagStdWrap.wrap = <dt> | </dt> editIconsStdWrap.wrap = <dd> | </dd> caption { required = 1 wrap = <dd class="csc-textpic-caption"> | </dd> } } ul { # Just one image without a caption => don't need the ul-overhead, use the "simple" rendering fallbackRendering < tt_content.image.20.rendering.dl.fallbackRendering.10 imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"><ul> | </ul></div> imageLastRowStdWrap.dataWrap = <div class="csc-textpic-imagerow csc-textpic-imagerow-last" style="width:{register:rowwidth}px;"><ul> | </ul></div> noRowsStdWrap.wrap = <ul> | </ul> oneImageStdWrap.dataWrap = <li class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </li> imgTagStdWrap.wrap = editIconsStdWrap.wrap = <div> | </div> caption.wrap = <div class="csc-textpic-caption"> | </div> } div { # Just one image without a caption => don't need the div-overhead, use the "simple" rendering fallbackRendering < tt_content.image.20.rendering.dl.fallbackRendering.10 imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"> | </div> imageLastRowStdWrap.dataWrap = <div class="csc-textpic-imagerow csc-textpic-imagerow-last" style="width:{register:rowwidth}px;"> | </div> noRowsStdWrap.wrap = oneImageStdWrap.dataWrap = <div class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </div> imgTagStdWrap.wrap = <div> | </div> editIconsStdWrap.wrap = <div> | </div> caption.wrap = <div class="csc-textpic-caption"> | </div> } simple { imageRowStdWrap.dataWrap = | imageLastRowStdWrap.dataWrap = | noRowsStdWrap.wrap = oneImageStdWrap.dataWrap = | imgTagStdWrap.wrap = | editIconsStdWrap.wrap = | caption.wrap = <div class="csc-textpic-caption"> | </div> imageStdWrap.dataWrap = <div class="csc-textpic-imagewrap csc-textpic-single-image" style="width:{register:totalwidth}px;"> | </div> imageStdWrapNoWidth.wrap = <div class="csc-textpic-imagewrap csc-textpic-single-image"> | </div> } } renderMethod = dl editIcons = tt_content : image [imageorient|imagewidth|imageheight], [imagecols|image_noRows|imageborder],[image_link|image_zoom],[image_compression|image_effects|image_frames],imagecaption[imagecaption_position] editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.images caption.editIcons = tt_content : imagecaption[imagecaption_position] caption.editIcons.beforeLastTag=1 caption.editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.caption stdWrap.prefixComment = 2 | Image block: } # ***************** # CType: textpic # ***************** tt_content.textpic = COA tt_content.textpic { 10 = COA 10.if.value = 25 10.if.isLessThan.field = imageorient 10.10 = < lib.stdheader 20 = < tt_content.image.20 20 { text.10 = COA text.10 { if.value = 24 if.isGreaterThan.field = imageorient 10 = < lib.stdheader 10.stdWrap.dataWrap = <div class="csc-textpicHeader csc-textpicHeader-{field:imageorient}">|</div> } text.20 = < tt_content.text.20 text.wrap = <div class="csc-textpic-text"> | </div> } } # ***************** # CType: bullet # ***************** tt_content.bullets = COA tt_content.bullets { 10 = < lib.stdheader 20 = TEXT 20 { field = bodytext trim = 1 split{ token.char = 10 cObjNum = |*|1|| 2|*| 1.current = 1 1.parseFunc =< lib.parseFunc 1.wrap = <li class="odd">|</li> 2.current = 1 2.parseFunc =< lib.parseFunc 2.wrap = <li class="even">|</li> } dataWrap = <ul class="csc-bulletlist csc-bulletlist-{field:layout}">|</ul> editIcons = tt_content: bodytext, [layout] editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.bullets prefixComment = 2 | Bullet list: } } # ***************** # CType: table # ***************** # Rendered by a PHP function specifically written to handle CE tables. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php tt_content.table = COA tt_content.table { 10 = < lib.stdheader 20 = USER 20.userFunc = tx_cssstyledcontent_pi1->render_table 20.field = bodytext 20.color { default = 1 = #EDEBF1 2 = #F5FFAA } 20.tableParams_0 { border = cellpadding = cellspacing = } 20.tableParams_1 { border = cellpadding = cellspacing = } 20.tableParams_2 { border = cellpadding = cellspacing = } 20.tableParams_3 { border = cellpadding = cellspacing = } 20.innerStdWrap.wrap = | 20.innerStdWrap.parseFunc = < lib.parseFunc 20.stdWrap { editIcons = tt_content: cols, bodytext, [layout], [table_bgColor|table_border|table_cellspacing|table_cellpadding] editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.table prefixComment = 2 | Table: } } # ***************** # CType: uploads # ***************** # Rendered by a PHP function specifically written to handle CE filelists. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php tt_content.uploads = COA tt_content.uploads { 10 = < lib.stdheader 20 = USER 20.userFunc = tx_cssstyledcontent_pi1->render_uploads 20.field = media 20.filePath.field = select_key 20 { # Rendering for each file (e.g. rows of the table) as a cObject itemRendering = COA itemRendering { wrap = <tr class="tr-odd tr-first">|</tr> |*| <tr class="tr-even">|</tr> || <tr class="tr-odd">|</tr> |*| 10 = TEXT 10.data = register:linkedIcon 10.wrap = <td class="csc-uploads-icon">|</td> 10.if.isPositive.field = layout 20 = COA 20.wrap = <td class="csc-uploads-fileName">|</td> 20.1 = TEXT 20.1 { data = register:linkedLabel wrap = <p>|</p> } 20.2 = TEXT 20.2 { data = register:description wrap = <p class="csc-uploads-description">|</p> required = 1 htmlSpecialChars = 1 } 30 = TEXT 30.if.isTrue.field = filelink_size 30.data = register:fileSize 30.wrap = <td class="csc-uploads-fileSize">|</td> 30.bytes = 1 30.bytes.labels = " | K| M| G" } useSpacesInLinkText = 0 stripFileExtensionFromLinkText = 0 } 20.color { default = 1 = #EDEBF1 2 = #F5FFAA } 20.tableParams_0 { border = cellpadding = cellspacing = } 20.tableParams_1 { border = cellpadding = cellspacing = } 20.tableParams_2 { border = cellpadding = cellspacing = } 20.tableParams_3 { border = cellpadding = cellspacing = } 20.linkProc { target = _blank jumpurl = jumpurl.secure = jumpurl.secure.mimeTypes = pdf=application/pdf, doc=application/msword removePrependedNumbers = 1 iconCObject = IMAGE iconCObject.file.import.data = register : ICON_REL_PATH iconCObject.file.width = 150 } 20.filesize { bytes = 1 bytes.labels = " | K| M| G" } 20.stdWrap { editIcons = tt_content: media, layout [table_bgColor|table_border|table_cellspacing|table_cellpadding], filelink_size, imagecaption editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.filelist prefixComment = 2 | File list: } } # ****************** # CType: multimedia # ****************** tt_content.multimedia = COA tt_content.multimedia { 10 = < lib.stdheader 20 = MULTIMEDIA 20.file.field = multimedia 20.file.wrap = uploads/media/ 20.file.listNum = 0 20.params.field = bodytext 20.stdWrap { editIcons = tt_content: multimedia, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | Multimedia element: } } # ***************** # CType: swfobject # ***************** tt_content.swfobject = COA tt_content.swfobject { 10 = < lib.stdheader 20 = SWFOBJECT 20 { file = width = height = flexParams.field = pi_flexform alternativeContent.field = bodytext layout = ###SWFOBJECT### video { player = typo3/contrib/flashmedia/flvplayer.swf defaultWidth = 600 defaultHeight = 400 default { params.quality = high params.menu = false params.allowScriptAccess = sameDomain params.allowFullScreen = true } mapping { } } audio { player = typo3/contrib/flashmedia/player.swf defaultWidth = 300 defaultHeight = 30 default { params.quality = high params.allowScriptAccess = sameDomain params.menu = false } mapping { flashvars.file = soundFile } } } 20.stdWrap { editIcons = tt_content: multimedia, imagewidth, imageheight, pi_flexform, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | SWFobject element: } } # ***************** # CType: qtobject # ***************** tt_content.qtobject = COA tt_content.qtobject { 10 = < lib.stdheader 20 = QTOBJECT 20 { file = width = height = flexParams.field = pi_flexform alternativeContent.field = bodytext layout = ###QTOBJECT### video { player = typo3/contrib/flashmedia/flvplayer.swf defaultWidth = 600 defaultHeight = 400 default { params.quality = high params.menu = false params.allowScriptAccess = sameDomain params.allowFullScreen = true } mapping { } } audio { player = typo3/contrib/flashmedia/player.swf defaultWidth = 300 defaultHeight = 30 default { params.quality = high params.allowScriptAccess = sameDomain params.menu = false } mapping { flashvars.file = soundFile } } } 20.stdWrap { editIcons = tt_content: multimedia, imagewidth, imageheight, pi_flexform, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | QTobject element: } } # ***************** # CType: media # ***************** tt_content.media = COA tt_content.media { 10 = < lib.stdheader 20 = MEDIA 20 { flexParams.field = pi_flexform alternativeContent < tt_content.text.20 alternativeContent.field = bodytext type = video renderType = auto allowEmptyUrl = 0 forcePlayer = 1 fileExtHandler { default = MEDIA avi = MEDIA asf = MEDIA class = MEDIA wmv = MEDIA mp3 = SWF mp4 = SWF m4v = SWF swa = SWF flv = SWF swf = SWF mov = QT m4v = QT m4a = QT } mimeConf.swfobject < tt_content.swfobject.20 mimeConf.qtobject < tt_content.qtobject.20 } 20.stdWrap { editIcons = tt_content: pi_flexform, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | Media element: } } # ****************** # CType: mailform # ****************** tt_content.mailform = COA tt_content.mailform.10 = < lib.stdheader tt_content.mailform.20 = FORM tt_content.mailform.20 { accessibility = 1 noWrapAttr=1 formName = mailform dontMd5FieldNames = 1 layout = <div class="csc-mailform-field">###LABEL### ###FIELD###</div> labelWrap.wrap = | commentWrap.wrap = | radioWrap.wrap = |<br /> radioWrap.accessibilityWrap = <fieldset###RADIO_FIELD_ID###><legend>###RADIO_GROUP_LABEL###</legend>|</fieldset> REQ = 1 REQ.labelWrap.wrap = | COMMENT.layout = <div class="csc-mailform-label">###LABEL###</div> RADIO.layout = <div class="csc-mailform-field">###LABEL### <span class="csc-mailform-radio">###FIELD###</span></div> LABEL.layout = <div class="csc-mailform-field">###LABEL### <span class="csc-mailform-label">###FIELD###</span></div> target = goodMess = badMess = redirect.field = pages redirect.listNum = 0 recipient.field = subheader data.field = bodytext locationData = 1 hiddenFields.stdWrap.wrap = <div style="display:none;">|</div> params.radio = class="csc-mailform-radio" params.check = class="csc-mailform-check" params.submit = class="csc-mailform-submit" stdWrap.wrap = <fieldset class="csc-mailform"> | </fieldset> stdWrap { editIcons = tt_content: bodytext, pages, subheader editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.form prefixComment = 2 | Mail form inserted: } } # ****************** # CType: search # ****************** tt_content.search = COA tt_content.search.10 = < lib.stdheader # Result: tt_content.search.20 = SEARCHRESULT tt_content.search.20 { allowedCols = pages.title-subtitle-keywords-description : tt_content.header-bodytext-imagecaption : tt_address.name-title-address-email-company-city-country : tt_links.title-note-note2-url : tt_board.subject-message-author-email : tt_calender.title-note : tt_products.title-note-itemnumber languageField.tt_content = sys_language_uid renderObj = COA renderObj { 10 = TEXT 10.field = pages_title 10.htmlSpecialChars = 1 10.typolink { parameter.field = uid target = additionalParams.data = register:SWORD_PARAMS additionalParams.required = 1 additionalParams.wrap = &no_cache=1 } 10.htmlSpecialChars = 1 10.wrap = <h3 class="csc-searchResultHeader">|</h3> 20 = COA 20 { 10 = TEXT 10.field = tt_content_bodytext 10.stripHtml = 1 10.htmlSpecialChars = 1 } 20.stdWrap.crop = 200 | ... 20.stdWrap.wrap = <p class="csc-searchResult">|</p> } layout = COA layout { wrap = <table border="0" cellspacing="0" cellpadding="2" class="csc-searchResultInfo"><tr> | </tr></table> ###RESULT### 10 = TEXT 10.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.resultRange 10.wrap = <td class="csc-searchResultRange"><p>|</p></td> 20 = TEXT 20.value = ###PREV###&nbsp;&nbsp;&nbsp;###NEXT### 20.wrap = <td class="csc-searchResultPrevNext"><p>|</p></td> } noResultObj = COA noResultObj { 10 = TEXT 10.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.emptySearch 10.wrap = <h3 class="csc-noSearchResultMsg">|</h3> } next = TEXT next.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchResultNext prev = TEXT prev.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchResultPrev target = range = 20 stdWrap.prefixComment = 2 | Search result: } # Form: tt_content.search.30 < tt_content.mailform.20 tt_content.search.30 { goodMess = redirect > recipient > data > dataArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchWord 10.type = sword=input 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchIn 20.type = scols=select 20.valueArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.headersKeywords 10.value = pages.title-subtitle-keywords-description:tt_content.header 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.pageContent 20.value = tt_content.header-bodytext-imagecaption } 30.type = stype=hidden 30.value = L0 40.type = submit=submit 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchButton } type.field = pages type.listNum = 0 locationData = HTTP_POST_VARS no_cache = 1 stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" class="csc-searchform"> | </table> stdWrap { editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.search prefixComment = 2 | Search form inserted: } } # ****************** # CType: login # ****************** tt_content.login < tt_content.mailform tt_content.login.10 = < lib.stdheader tt_content.login.20 { goodMess = redirect > recipient > data > dataArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.username 10.type = *user=input 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.password 20.type = *pass=password 30.type = logintype=hidden 30.value = login 40.type = submit=submit 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.login } type.field = pages type.listNum = 0 target = _top locationData = 0 hiddenFields.pid = TEXT hiddenFields.pid { value = override.field = pages override.listNum = 1 } stdWrap.wrap = <div class="csc-loginform"> | </div> stdWrap { editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.login prefixComment = 2 | Login/Logout form: } } [loginUser = *] tt_content.login.20 { dataArray > dataArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.username 10.label.wrap = |&nbsp;<!--###USERNAME###--> 30.type = logintype=hidden 30.value = logout 40.type = submit=submit 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.logout } } [global] # ****************** # CType: splash # ****************** # Deprecated element. # Still here for backwards compliance with plugins using the "text box" type. tt_content.splash = CASE tt_content.splash.key.field = splash_layout tt_content.splash.stdWrap { prefixComment = 2 | Textbox inserted (Deprecated) } tt_content.splash.default = COA tt_content.splash.default { 20 = CTABLE 20 { c.1 = < tt_content.text lm.1 = IMAGE lm.1.file { import = uploads/pics/ import.field = image import.listNum = 0 maxW.field = imagewidth maxW.ifEmpty = 200 } cMargins = 30,0,0,0 } } tt_content.splash.1 < tt_content.splash.default tt_content.splash.1.20.lm.1.file > tt_content.splash.1.20.lm.1.file = GIFBUILDER tt_content.splash.1.20.lm.1.file { XY = [10.w]+10,[10.h]+10 backColor = white backColor.override.data = register:pageColor format = jpg 5 = BOX 5.dimensions = 3,3,[10.w],[10.h] 5.color = #333333 7 = EFFECT 7.value = blur=99|blur=99|blur=99|blur=99|blur=99|blur=99|blur=99 10 = IMAGE 10.file { import = uploads/pics/ import.field = image import.listNum = 0 maxW.field = imagewidth maxW.ifEmpty = 200 } } // The image frames are not available unless TypoScript code from styles.content.imgFrames.x is provided manually: tt_content.splash.2 < tt_content.splash.default #tt_content.splash.2.20.lm.1.file.m < styles.content.imgFrames.1 tt_content.splash.3 < tt_content.splash.default #tt_content.splash.3.20.lm.1.file.m < styles.content.imgFrames.2 // From plugin.postit1, if included: tt_content.splash.20 = < plugin.postit1 # **************** # CType: menu # **************** tt_content.menu = COA tt_content.menu { 10 = < lib.stdheader 20 = CASE 20 { key.field = menu_type # "Menu of these pages" default = HMENU default { special = list special.value.field = pages wrap = <ul class="csc-menu csc-menu-def">|</ul> 1 = TMENU 1 { target = NO { stdWrap.htmlSpecialChars = 1 wrapItemAndSub = <li>|</li> ATagTitle.field = description // title } noBlur = 1 } } # "Menu of subpages to these pages" 1 < .default 1 { special = directory wrap = <ul class="csc-menu csc-menu-1">|</ul> } # "Sitemap - liststyle" 2 = HMENU 2 { wrap = <div class="csc-sitemap">|</div> 1 = TMENU 1 { target = noBlur = 1 expAll = 1 wrap = <ul>|</ul> NO { stdWrap.htmlSpecialChars = 1 wrapItemAndSub = <li>|</li> ATagTitle.field = description // title } } 2 < .1 3 < .1 4 < .1 5 < .1 6 < .1 7 < .1 } # "Section index (pagecontent w/Index checked - liststyle)" 3 < styles.content.get 3 { wrap = <ul class="csc-menu csc-menu-3">|</ul> select.andWhere = sectionIndex!=0 select.pidInList.override.field = pages renderObj = TEXT renderObj { fieldRequired = header trim = 1 field = header htmlSpecialChars = 1 noBlur = 1 wrap = <li class="csc-section">|</li> typolink.parameter.field = pid typolink.section.field = uid } } # "Menu of subpages to these pages (with abstract)" 4 < .1 4 { wrap = <dl class="csc-menu csc-menu-4">|</dl> 1.NO { wrapItemAndSub > linkWrap = <dt>|</dt> after { data = field : abstract // field : description // field : subtitle required = 1 htmlSpecialChars = 1 wrap = <dd>|</dd> } ATagTitle.field = description // title } } # "Recently updated pages" 5 < .default 5 { wrap = <ul class="csc-menu csc-menu-5">|</ul> special = updated special { maxAge = 3600*24*7 excludeNoSearchPages = 1 } } # "Related pages (based on keywords)" 6 < .default 6 { wrap = <ul class="csc-menu csc-menu-6">|</ul> special = keywords special { excludeNoSearchPages = 1 } } # "Menu of subpages to these pages + sections - liststyle" 7 < .1 7 { wrap = <ul class="csc-menu csc-menu-7">|</ul> 1.expAll = 1 2 < .1 2 { sectionIndex = 1 sectionIndex.type = header wrap = <ul>|</ul> NO.wrapItemAndSub = <li class="csc-section">|</li> } } } 20.stdWrap { editIcons = tt_content: menu_type, pages editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.menuSitemap prefixComment = 2 | Menu/Sitemap element: } } # **************** # CType: shortcut # **************** # Should be a complete copy from the old static template "content (default)" tt_content.shortcut = COA tt_content.shortcut { 20 = CASE 20.key.field = layout 20.0= RECORDS 20.0 { source.field = records tables = tt_content,tt_address,tt_links,tt_guest,tt_board,tt_calender,tt_products,tt_news,tt_rating,tt_poll # THESE are OLD plugins. Modern plugins registers themselves automatically! conf.tt_content = < tt_content conf.tt_address = < tt_address conf.tt_links = < tt_links conf.tt_guest = < tt_guest conf.tt_board = < tt_board conf.tt_calender = < tt_calender conf.tt_rating < tt_rating conf.tt_products = < tt_products conf.tt_news = < tt_news conf.tt_poll = < plugin.tt_poll } 20.1= RECORDS 20.1 { source.field = records tables = tt_content,tt_address,tt_links,tt_guest,tt_board,tt_calender,tt_products,tt_news,tt_rating,tt_poll conf.tt_poll = < plugin.tt_poll conf.tt_poll.code = RESULT,SUBMITTEDVOTE } 20.stdWrap { editIcons = tt_content: records editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.recordList prefixComment = 2 | Inclusion of other records (by reference): } } # **************** # CType: list # **************** # Should be a complete copy from the old static template "content (default)" (except "lib.stdheader") tt_content.list = COA tt_content.list { 10 = < lib.stdheader 20 = CASE 20.key.field = list_type 20 { # LIST element references (NOT copy of objects!) # THESE are OLD plugins. Modern plugins registers themselves automatically! 3 = CASE 3.key.field = layout 3.0 = < plugin.tt_guest 4 = CASE 4.key.field = layout 4.0 = < plugin.tt_board_list 4.1 = < plugin.tt_board_tree 2 = CASE 2.key.field = layout 2.0 = < plugin.tt_board_tree 5 = CASE 5.key.field = layout 5.0 = < plugin.tt_products 7 = CASE 7.key.field = layout 7.0 = < plugin.tt_calender 8 = CASE 8.key.field = layout 8.0 = < plugin.tt_rating 9 = CASE 9.key.field = layout 9.0 = < plugin.tt_news 11 = CASE 11.key.field = layout 11.0 = < plugin.tipafriend 20 = CASE 20.key.field = layout 20.0 = < plugin.feadmin.fe_users 21 = CASE 21.key.field = layout 21.0 = < plugin.feadmin.dmailsubscription } 20.stdWrap { editIcons = tt_content: list_type, layout, select_key, pages [recursive] editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.plugin prefixComment = 2 | Plugin inserted: } } # **************** # CType: script # **************** # OBSOLETE! Please make extensions instead. The "script" content element was meant for these custom purposes in the past. Today extensions will do the job better. tt_content.script = TEXT tt_content.script { value = prefixComment = 2 | Script element (Deprecated) } # **************** # CType: div # **************** tt_content.div = TEXT tt_content.div { value = <hr /> wrap = <div class="divider">|</div> prefixComment = 2 | Div element } # **************** # CType: html # **************** # This truely IS a content object, launched from inside the PHP class of course. # Should be a complete copy from the old static template "content (default)" tt_content.html = TEXT tt_content.html { field = bodytext editIcons = tt_content: pages editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.html prefixComment = 2 | Raw HTML content: } # **************** # Default error msg: # **************** tt_content.default = TEXT tt_content.default { field = CType wrap = <p style="background-color: yellow;"><b>ERROR:</b> Content Element type "|" has no rendering definition!</p> prefixComment = 2 | Unknown element message: } # ********************************************************************* # ACCESSIBILTY MODE # ********************************************************************* plugin.tx_cssstyledcontent._CSS_DEFAULT_STYLE ( /* Captions */ DIV.csc-textpic-caption-c .csc-textpic-caption { text-align: center; } DIV.csc-textpic-caption-r .csc-textpic-caption { text-align: right; } DIV.csc-textpic-caption-l .csc-textpic-caption { text-align: left; } /* Needed for noRows setting */ DIV.csc-textpic DIV.csc-textpic-imagecolumn { float: left; display: inline; } /* Border just around the image */ DIV.csc-textpic-border DIV.csc-textpic-imagewrap .csc-textpic-image IMG, DIV.csc-textpic-border DIV.csc-textpic-single-image IMG { border: 2px solid black; padding: 0px 0px; } DIV.csc-textpic-imagewrap { padding: 0; } DIV.csc-textpic IMG { border: none; } /* DIV: This will place the images side by side */ DIV.csc-textpic DIV.csc-textpic-imagewrap DIV.csc-textpic-image { float: left; } /* UL: This will place the images side by side */ DIV.csc-textpic DIV.csc-textpic-imagewrap UL { list-style: none; margin: 0; padding: 0; } DIV.csc-textpic DIV.csc-textpic-imagewrap UL LI { float: left; margin: 0; padding: 0; } /* DL: This will place the images side by side */ DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image { float: left; } DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DT { float: none; } DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DD { float: none; } DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DD IMG { border: none; } /* FE-Editing Icons */ DL.csc-textpic-image { margin: 0; } DL.csc-textpic-image DT { margin: 0; display: inline; } DL.csc-textpic-image DD { margin: 0; } /* Clearer */ DIV.csc-textpic-clear { clear: both; } /* Margins around images: */ /* Pictures on left, add margin on right */ DIV.csc-textpic-left DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap .csc-textpic-image { display: inline; /* IE fix for double-margin bug */ margin-right: 10px; } /* Pictures on right, add margin on left */ DIV.csc-textpic-right DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap .csc-textpic-image { display: inline; /* IE fix for double-margin bug */ margin-left: 10px; } /* Pictures centered, add margin on left */ DIV.csc-textpic-center DIV.csc-textpic-imagewrap .csc-textpic-image { display: inline; /* IE fix for double-margin bug */ margin-left: 10px; } DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image .csc-textpic-caption { margin: 0; } DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image IMG { margin: 0; vertical-align:bottom; } /* Space below each image (also in-between rows) */ DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image { margin-bottom: 10px; } DIV.csc-textpic-equalheight DIV.csc-textpic-imagerow { margin-bottom: 10px; display: block; } DIV.csc-textpic DIV.csc-textpic-imagerow { clear: both; } DIV.csc-textpic DIV.csc-textpic-single-image IMG { margin-bottom: 10px; } /* IE7 hack for margin between image rows */ *+html DIV.csc-textpic DIV.csc-textpic-imagerow .csc-textpic-image { margin-bottom: 0; } *+html DIV.csc-textpic DIV.csc-textpic-imagerow { margin-bottom: 10px; } /* No margins around the whole image-block */ DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-firstcol { margin-left: 0px !important; } DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-lastcol { margin-right: 0px !important; } /* Add margin from image-block to text (in case of "Text w/ images") */ DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap, DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap { margin-right: 10px !important; } DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap, DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap { margin-left: 10px !important; } /* Positioning of images: */ /* Above */ DIV.csc-textpic-above DIV.csc-textpic-text { clear: both; } /* Center (above or below) */ DIV.csc-textpic-center { text-align: center; /* IE-hack */ } DIV.csc-textpic-center DIV.csc-textpic-imagewrap { margin: 0 auto; } DIV.csc-textpic-center DIV.csc-textpic-imagewrap .csc-textpic-image { text-align: left; /* Remove IE-hack */ } DIV.csc-textpic-center DIV.csc-textpic-text { text-align: left; /* Remove IE-hack */ } /* Right (above or below) */ DIV.csc-textpic-right DIV.csc-textpic-imagewrap { float: right; } DIV.csc-textpic-right DIV.csc-textpic-text { clear: right; } /* Left (above or below) */ DIV.csc-textpic-left DIV.csc-textpic-imagewrap { float: left; } DIV.csc-textpic-left DIV.csc-textpic-text { clear: left; } /* Left (in text) */ DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap { float: left; } /* Right (in text) */ DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap { float: right; } /* Right (in text, no wrap around) */ DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap { float: right; clear: both; } /* Hide from IE5-mac. Only IE-win sees this. \\*/ * html DIV.csc-textpic-intext-right-nowrap .csc-textpic-text { height: 1%; } /* End hide from IE5/mac */ /* Left (in text, no wrap around) */ DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap { float: left; clear: both; } /* Hide from IE5-mac. Only IE-win sees this. \\*/ * html DIV.csc-textpic-intext-left-nowrap .csc-textpic-text, * html .csc-textpic-intext-left ol, * html .csc-textpic-intext-left ul { height: 1%; } /* End hide from IE5/mac */ DIV.csc-textpic DIV.csc-textpic-imagerow-last { margin-bottom: 0; } /* Browser fixes: */ /* Fix for unordered and ordered list with image "In text, left" */ .csc-textpic-intext-left ol, .csc-textpic-intext-left ul {padding-left: 40px; overflow: auto; }

Adresse

Rosenheimer Str. 145g, 81671 München
Route planen bei Google Maps

Telefon: 089 9952986

Internet: http://www.dieantwort.tv

Branchen

Medien (Film, Funk, TV, Verlage)

Weitere Informationen

Schlüsselwörter: TV-Produktionsfirma München, Imagefilme, Eventfilme


Informationen

DieAntwort GmbH TV & Film Produktionsfirma aus München. Wir produzieren TV, Imagefilme, Eventfilme, Magazinbeiträge, Reportagen und Dokumentationen für viele großen deutschen TV-Sender Pro7, ZDF, Sat1,... robots = INDEX,FOLLOW } [GLOBAL] # *************************************************************************** # Notice: "styles." (and "temp.") objects are UNSET after template parsing! # Use "lib." for persisting storage of objects. # *************************************************************************** # Clear out any constants in this reserved room! styles.content > # get content styles.content.get = CONTENT styles.content.get { table = tt_content select.orderBy = sorting select.where = colPos=0 select.languageField = sys_language_uid } # get content, left styles.content.getLeft < styles.content.get styles.content.getLeft.select.where = colPos=1 # get content, right styles.content.getRight < styles.content.get styles.content.getRight.select.where = colPos=2 # get content, margin styles.content.getBorder < styles.content.get styles.content.getBorder.select.where = colPos=3 # get news styles.content.getNews < styles.content.get styles.content.getNews.select.pidInList = 0 # Edit page object: styles.content.editPanelPage = COA styles.content.editPanelPage { 10 = EDITPANEL 10 { allow = toolbar,move,hide label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.page label.wrap = |&nbsp;<b>%s</b> } } # ********************************************************************* # "lib." objects are preserved from unsetting after template parsing # ********************************************************************* # Creates persistent ParseFunc setup for non-HTML content. This is recommended to use (as a reference!) lib.parseFunc { makelinks = 1 makelinks.http.keep = path makelinks.http.extTarget = _blank makelinks.mailto.keep = path tags { link = TEXT link { current = 1 typolink.parameter.data = parameters : allParams typolink.extTarget = _blank typolink.target = parseFunc.constants =1 } } allowTags = b,i,u,a,img,br,div,center,pre,font,hr,sub,sup,p,strong,em,li,ul,ol,blockquote,strike,del,ins,span,h1,h2,h3,h4,h5,h6,address,dl,dt,dd denyTags = * sword = <span class="csc-sword">|</span> constants = 1 nonTypoTagStdWrap.HTMLparser = 1 nonTypoTagStdWrap.HTMLparser { keepNonMatchedTags = 1 htmlSpecialChars = 2 } } # good old parsefunc in "styles.content.parseFunc" is created for backwards compatibility. Don't use it, just ignore. styles.content.parseFunc < lib.parseFunc # Creates persistent ParseFunc setup for RTE content (which is mainly HTML) based on the "ts_css" transformation. lib.parseFunc_RTE < lib.parseFunc lib.parseFunc_RTE { // makelinks > # Processing <table> and <blockquote> blocks separately externalBlocks = table, blockquote, dd, dl, ol, ul, div externalBlocks { # The blockquote content is passed into parseFunc again... blockquote.stripNL=1 blockquote.callRecursive=1 blockquote.callRecursive.tagStdWrap.HTMLparser = 1 blockquote.callRecursive.tagStdWrap.HTMLparser.tags.blockquote.overrideAttribs = style="margin-bottom:0;margin-top:0;" ol.stripNL=1 ol.stdWrap.parseFunc = < lib.parseFunc ul.stripNL=1 ul.stdWrap.parseFunc = < lib.parseFunc table.stripNL=1 table.stdWrap.HTMLparser = 1 table.stdWrap.HTMLparser.tags.table.fixAttrib.class { default = contenttable always = 1 list = contenttable } table.stdWrap.HTMLparser.keepNonMatchedTags = 1 table.HTMLtableCells=1 table.HTMLtableCells { default.callRecursive=1 addChr10BetweenParagraphs=1 } div.stripNL = 1 div.callRecursive = 1 # Definition list processing dl < .div dd < .div } nonTypoTagStdWrap.encapsLines { encapsTagList = p,pre,h1,h2,h3,h4,h5,h6,hr,dt remapTag.DIV = P nonWrappedTag = P innerStdWrap_all.ifBlank = &nbsp; addAttributes.P.class = bodytext addAttributes.P.class.setOnly=blank } nonTypoTagStdWrap.HTMLparser = 1 nonTypoTagStdWrap.HTMLparser { keepNonMatchedTags = 1 htmlSpecialChars = 2 } } # Content header: lib.stdheader = COA lib.stdheader { # Create align style-attribute for <Hx> tags 2 = LOAD_REGISTER 2.headerStyle.field = header_position 2.headerStyle.required = 1 2.headerStyle.noTrimWrap = | style="text-align:|;"| # Create class="csc-firstHeader" attribute for <Hx> tags 3 = LOAD_REGISTER 3.headerClass = csc-firstHeader 3.headerClass.if.value=1 3.headerClass.if.equals.data = cObj:parentRecordNumber 3.headerClass.noTrimWrap = | class="|"| # Date format: 5 = TEXT 5.field = date 5.if.isTrue.field = date 5.strftime = %x 5.wrap = <p class="csc-header-date">|</p> 5.prefixComment = 2 | Header date: # This CASE cObject renders the header content: # currentValue is set to the header data, possibly wrapped in link-tags. 10 = CASE 10.setCurrent { field = header htmlSpecialChars = 1 typolink.parameter.field = header_link } 10.key.field = header_layout 10.key.ifEmpty = 1 10.key.ifEmpty.override.data = register: defaultHeaderType 10.1 = TEXT 10.1.current = 1 10.1.dataWrap = <h1{register:headerStyle}{register:headerClass}>|</h1> 10.2 < .10.1 10.2.dataWrap = <h2{register:headerStyle}{register:headerClass}>|</h2> 10.3 < .10.1 10.3.dataWrap = <h3{register:headerStyle}{register:headerClass}>|</h3> 10.4 < .10.1 10.4.dataWrap = <h4{register:headerStyle}{register:headerClass}>|</h4> 10.5 < .10.1 10.5.dataWrap = <h5{register:headerStyle}{register:headerClass}>|</h5> # Pops the used registers off the stack: 98 = RESTORE_REGISTER 99 = RESTORE_REGISTER # Post-processing: stdWrap.fieldRequired = header stdWrap.if { equals.field = header_layout value = 100 negate = 1 } stdWrap.editIcons = tt_content : header, [header_layout | header_position], [header_link|date] stdWrap.editIcons.beforeLastTag = 1 stdWrap.editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.header stdWrap.dataWrap = <div class="csc-header csc-header-n{cObj:parentRecordNumber}">|</div> stdWrap.prefixComment = 2 | Header: } #****************************************************** # Including library for processing of some elements: #****************************************************** includeLibs.tx_cssstyledcontent_pi1 = EXT:css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php #********************************** # tt_content is started #********************************** tt_content > tt_content = CASE tt_content.key.field = CType tt_content.stdWrap { innerWrap.cObject = CASE innerWrap.cObject { key.field = section_frame default = COA default { 10 = TEXT 10 { value = <div id="c{field:uid}" override.cObject = TEXT override.cObject { value = <div if.value = div if.equals.field = CType } insertData = 1 } 15 = TEXT 15 { value = csc-default noTrimWrap = | class="|" | required = 1 } 20 = COA 20 { 10 = COA 10 { 10 = TEXT 10 { value = 0 wrap = |+ if.isTrue = 0 } 20 = TEXT 20 { field = spaceBefore } stdWrap { prioriCalc = intval wrap = margin-top:|px; required = 1 ifEmpty.value = } } 20 = COA 20 { 10 = TEXT 10 { value = 0 wrap = |+ if.isTrue = 0 } 20 = TEXT 20 { field = spaceAfter } stdWrap { prioriCalc = intval wrap = margin-bottom:|px; required = 1 ifEmpty.value = } } stdWrap.noTrimWrap = | style="|" | stdWrap.required = 1 } 30 = TEXT 30.value = >|</div> } 1 =< tt_content.stdWrap.innerWrap.cObject.default 1.15.value = csc-frame csc-frame-invisible 5 =< tt_content.stdWrap.innerWrap.cObject.default 5.15.value = csc-frame csc-frame-rulerBefore 6 =< tt_content.stdWrap.innerWrap.cObject.default 6.15.value = csc-frame csc-frame-rulerAfter 10 =< tt_content.stdWrap.innerWrap.cObject.default 10.15.value = csc-frame csc-frame-indent 11 =< tt_content.stdWrap.innerWrap.cObject.default 11.15.value = csc-frame csc-frame-indent3366 12 =< tt_content.stdWrap.innerWrap.cObject.default 12.15.value = csc-frame csc-frame-indent6633 20 =< tt_content.stdWrap.innerWrap.cObject.default 20.15.value = csc-frame csc-frame-frame1 21 =< tt_content.stdWrap.innerWrap.cObject.default 21.15.value = csc-frame csc-frame-frame2 66 = COA 66 { 10 = TEXT 10 { value = <a id="c{field:uid}"></a> insertData = 1 } 20 = COA 20 { 10 = TEXT 10 { value = 0 wrap = |+ if.isTrue = 0 } 20 = TEXT 20 { field = spaceBefore } stdWrap { prioriCalc = intval wrap = margin-top:|px; required = 1 ifEmpty.value = wrap2 = <div style="|"></div> } } 30 = TEXT 30 { value = | } 40 < .20 40 { 10 { value = 0 if.isTrue = 0 } 20.field = spaceAfter stdWrap.wrap = margin-bottom:|px; } } } innerWrap2 = | <p class="csc-linkToTop"><a href="#">{LLL:EXT:css_styled_content/pi1/locallang.xml:label.toTop}</a></p> innerWrap2.insertData = 1 innerWrap2.fieldRequired = linkToTop prepend = TEXT prepend.dataWrap = <a id="c{field:_LOCALIZED_UID}"></a> prepend.if.isTrue.field = _LOCALIZED_UID editPanel = 1 editPanel { allow = move,new,edit,hide,delete line = 5 label = %s onlyCurrentPid = 1 previewBorder = 4 edit.displayRecord = 1 } prefixComment = 1 | CONTENT ELEMENT, uid:{field:uid}/{field:CType} } # ***************** # CType: header # ***************** # See Object path "lib.stdheader" tt_content.header = COA tt_content.header { 10 = < lib.stdheader 20 = TEXT 20 { field = subheader required = 1 dataWrap = <p class="csc-subheader csc-subheader-{field:layout}">|</p> htmlSpecialChars = 1 editIcons = tt_content:subheader,layout editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.subheader prefixComment = 2 | Subheader: } } # ***************** # CType: text # ***************** tt_content.text = COA tt_content.text { 10 = < lib.stdheader 20 = TEXT 20 { field = bodytext required = 1 parseFunc = < lib.parseFunc_RTE editIcons = tt_content:bodytext, rte_enabled editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.bodytext prefixComment = 2 | Text: } } # ***************** # CType: image # ***************** # (also used for rendering 'textpic' type): tt_content.image = COA tt_content.image.10 = < lib.stdheader tt_content.image.20 = USER tt_content.image.20 { userFunc = tx_cssstyledcontent_pi1->render_textpic # Image source imgList.field = image imgPath = uploads/pics/ # Single image rendering imgObjNum = 1 1 { file.import.current = 1 file.width.field = imagewidth imageLinkWrap = 1 imageLinkWrap { bodyTag = <body style="margin:0; background:#fff;"> wrap = <a href="javascript:close();"> | </a> width = 800m height = 600m effects = JSwindow = 1 JSwindow.newWindow = 0 JSwindow.if.isFalse = 0 directImageLink = 0 enable.field = image_zoom enable.ifEmpty.typolink.parameter.field = image_link enable.ifEmpty.typolink.parameter.listNum.splitChar = 10 enable.ifEmpty.typolink.parameter.listNum.stdWrap.data = register : IMAGE_NUM_CURRENT enable.ifEmpty.typolink.returnLast = url typolink.parameter.field = image_link typolink.parameter.listNum.splitChar = 10 typolink.parameter.listNum.stdWrap.data = register : IMAGE_NUM_CURRENT typolink.target = typolink.extTarget = _blank linkParams.ATagParams.dataWrap = class="lightbox" rel="lightbox[{field:uid}]" } altText = TEXT altText { field = altText stripHtml = 1 split.token.char = 10 split.token.if.isTrue = 1 split.returnKey.data = register : IMAGE_NUM_CURRENT } titleText < .altText titleText.field = titleText longdescURL < .altText longdescURL.field = longdescURL emptyTitleHandling = removeAttr titleInLink = 1 titleInLinkAndImg = 0 } textPos.field = imageorient maxW = 600 maxW.override.data = register:maxImageWidth maxWInText = maxWInText.override.data = register:maxImageWidthInText equalH.field = imageheight image_compression.field = image_compression image_effects.field = image_effects noRows.field = image_noRows cols.field = imagecols border.field = imageborder caption { 1 = TEXT 1 { field = imagecaption required = 1 parseFunc =< lib.parseFunc br = 1 split.token.char = 10 split.token.if.isPositive = 1 + 0 split.returnKey.data = register : IMAGE_NUM_CURRENT } } # captionSplit is deprecated, use imageTextSplit instead captionSplit = 0 captionAlign.field = imagecaption_position # caption/alttext/title/longdescURL splitting imageTextSplit = 1 borderCol = black borderThick = 2 borderClass = csc-textpic-border colSpace = 10 rowSpace = 10 textMargin = 10 borderSpace = 0 separateRows = 1 addClasses = addClassesImage = addClassesImage.ifEmpty = csc-textpic-firstcol csc-textpic-lastcol addClassesImage.override = csc-textpic-firstcol |*| |*| csc-textpic-lastcol addClassesImage.override.if { isGreaterThan.field = imagecols value = 1 } # imageStdWrap.dataWrap = <div class="csc-textpic-imagewrap" style="width:{register:totalwidth}px;"> | </div> imageStdWrapNoWidth.wrap = <div class="csc-textpic-imagewrap"> | </div> # if noRows is set, wrap around each column: imageColumnStdWrap.dataWrap = <div class="csc-textpic-imagecolumn" style="width:{register:columnwidth}px;"> | </div> layout = CASE layout { key.field = imageorient # above-center default = TEXT default.value = <div class="csc-textpic csc-textpic-center csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> # above-right 1 = TEXT 1.value = <div class="csc-textpic csc-textpic-right csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> # above-left 2 = TEXT 2.value = <div class="csc-textpic csc-textpic-left csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> # below-center 8 = TEXT 8.value = <div class="csc-textpic csc-textpic-center csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div> # below-right 9 = TEXT 9.value = <div class="csc-textpic csc-textpic-right csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div> # below-left 10 = TEXT 10.value = <div class="csc-textpic csc-textpic-left csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div> # intext-right 17 = TEXT 17.value = <div class="csc-textpic csc-textpic-intext-right###CLASSES###">###IMAGES######TEXT###</div> 17.override = <div class="csc-textpic csc-textpic-intext-right###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> 17.override.if.isTrue = 1 # intext-left 18 = TEXT 18.value = <div class="csc-textpic csc-textpic-intext-left###CLASSES###">###IMAGES######TEXT###</div> 18.override = <div class="csc-textpic csc-textpic-intext-left###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div> 18.override.if.isTrue = 1 # intext-right-nowrap 25 = TEXT 25.value = <div class="csc-textpic csc-textpic-intext-right-nowrap###CLASSES###">###IMAGES###<div style="margin-right:{register:rowWidthPlusTextMargin}px;">###TEXT###</div></div><div class="csc-textpic-clear"><!-- --></div> 25.insertData = 1 # intext-left-nowrap 26 = TEXT 26.value = <div class="csc-textpic csc-textpic-intext-left-nowrap###CLASSES###">###IMAGES###<div style="margin-left:{register:rowWidthPlusTextMargin}px;">###TEXT###</div></div><div class="csc-textpic-clear"><!-- --></div> 26.insertData = 1 } rendering { dl { # Choose another rendering for special edge cases fallbackRendering = COA fallbackRendering { # Just one image without a caption => don't need the dl-overhead, use the "simple" rendering 10 = TEXT 10 { if { isFalse.field = imagecaption value = 1 equals.data = register:imageCount } value = simple } # Multiple images and one global caption => "ul" 20 = TEXT 20 { if { value = 1 isGreaterThan.data = register:imageCount isTrue.if.isTrue.data = register:renderGlobalCaption isTrue.field = imagecaption } value = ul } # Multiple images and no caption at all => "ul" 30 = TEXT 30 { if { value = 1 isGreaterThan.data = register:imageCount isFalse.field = imagecaption } value = ul } } imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"> | </div> imageLastRowStdWrap.dataWrap = <div class="csc-textpic-imagerow csc-textpic-imagerow-last" style="width:{register:rowwidth}px;"> | </div> noRowsStdWrap.wrap = oneImageStdWrap.dataWrap = <dl class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </dl> imgTagStdWrap.wrap = <dt> | </dt> editIconsStdWrap.wrap = <dd> | </dd> caption { required = 1 wrap = <dd class="csc-textpic-caption"> | </dd> } } ul { # Just one image without a caption => don't need the ul-overhead, use the "simple" rendering fallbackRendering < tt_content.image.20.rendering.dl.fallbackRendering.10 imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"><ul> | </ul></div> imageLastRowStdWrap.dataWrap = <div class="csc-textpic-imagerow csc-textpic-imagerow-last" style="width:{register:rowwidth}px;"><ul> | </ul></div> noRowsStdWrap.wrap = <ul> | </ul> oneImageStdWrap.dataWrap = <li class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </li> imgTagStdWrap.wrap = editIconsStdWrap.wrap = <div> | </div> caption.wrap = <div class="csc-textpic-caption"> | </div> } div { # Just one image without a caption => don't need the div-overhead, use the "simple" rendering fallbackRendering < tt_content.image.20.rendering.dl.fallbackRendering.10 imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"> | </div> imageLastRowStdWrap.dataWrap = <div class="csc-textpic-imagerow csc-textpic-imagerow-last" style="width:{register:rowwidth}px;"> | </div> noRowsStdWrap.wrap = oneImageStdWrap.dataWrap = <div class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </div> imgTagStdWrap.wrap = <div> | </div> editIconsStdWrap.wrap = <div> | </div> caption.wrap = <div class="csc-textpic-caption"> | </div> } simple { imageRowStdWrap.dataWrap = | imageLastRowStdWrap.dataWrap = | noRowsStdWrap.wrap = oneImageStdWrap.dataWrap = | imgTagStdWrap.wrap = | editIconsStdWrap.wrap = | caption.wrap = <div class="csc-textpic-caption"> | </div> imageStdWrap.dataWrap = <div class="csc-textpic-imagewrap csc-textpic-single-image" style="width:{register:totalwidth}px;"> | </div> imageStdWrapNoWidth.wrap = <div class="csc-textpic-imagewrap csc-textpic-single-image"> | </div> } } renderMethod = dl editIcons = tt_content : image [imageorient|imagewidth|imageheight], [imagecols|image_noRows|imageborder],[image_link|image_zoom],[image_compression|image_effects|image_frames],imagecaption[imagecaption_position] editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.images caption.editIcons = tt_content : imagecaption[imagecaption_position] caption.editIcons.beforeLastTag=1 caption.editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.caption stdWrap.prefixComment = 2 | Image block: } # ***************** # CType: textpic # ***************** tt_content.textpic = COA tt_content.textpic { 10 = COA 10.if.value = 25 10.if.isLessThan.field = imageorient 10.10 = < lib.stdheader 20 = < tt_content.image.20 20 { text.10 = COA text.10 { if.value = 24 if.isGreaterThan.field = imageorient 10 = < lib.stdheader 10.stdWrap.dataWrap = <div class="csc-textpicHeader csc-textpicHeader-{field:imageorient}">|</div> } text.20 = < tt_content.text.20 text.wrap = <div class="csc-textpic-text"> | </div> } } # ***************** # CType: bullet # ***************** tt_content.bullets = COA tt_content.bullets { 10 = < lib.stdheader 20 = TEXT 20 { field = bodytext trim = 1 split{ token.char = 10 cObjNum = |*|1|| 2|*| 1.current = 1 1.parseFunc =< lib.parseFunc 1.wrap = <li class="odd">|</li> 2.current = 1 2.parseFunc =< lib.parseFunc 2.wrap = <li class="even">|</li> } dataWrap = <ul class="csc-bulletlist csc-bulletlist-{field:layout}">|</ul> editIcons = tt_content: bodytext, [layout] editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.bullets prefixComment = 2 | Bullet list: } } # ***************** # CType: table # ***************** # Rendered by a PHP function specifically written to handle CE tables. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php tt_content.table = COA tt_content.table { 10 = < lib.stdheader 20 = USER 20.userFunc = tx_cssstyledcontent_pi1->render_table 20.field = bodytext 20.color { default = 1 = #EDEBF1 2 = #F5FFAA } 20.tableParams_0 { border = cellpadding = cellspacing = } 20.tableParams_1 { border = cellpadding = cellspacing = } 20.tableParams_2 { border = cellpadding = cellspacing = } 20.tableParams_3 { border = cellpadding = cellspacing = } 20.innerStdWrap.wrap = | 20.innerStdWrap.parseFunc = < lib.parseFunc 20.stdWrap { editIcons = tt_content: cols, bodytext, [layout], [table_bgColor|table_border|table_cellspacing|table_cellpadding] editIcons.beforeLastTag = 1 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.table prefixComment = 2 | Table: } } # ***************** # CType: uploads # ***************** # Rendered by a PHP function specifically written to handle CE filelists. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php tt_content.uploads = COA tt_content.uploads { 10 = < lib.stdheader 20 = USER 20.userFunc = tx_cssstyledcontent_pi1->render_uploads 20.field = media 20.filePath.field = select_key 20 { # Rendering for each file (e.g. rows of the table) as a cObject itemRendering = COA itemRendering { wrap = <tr class="tr-odd tr-first">|</tr> |*| <tr class="tr-even">|</tr> || <tr class="tr-odd">|</tr> |*| 10 = TEXT 10.data = register:linkedIcon 10.wrap = <td class="csc-uploads-icon">|</td> 10.if.isPositive.field = layout 20 = COA 20.wrap = <td class="csc-uploads-fileName">|</td> 20.1 = TEXT 20.1 { data = register:linkedLabel wrap = <p>|</p> } 20.2 = TEXT 20.2 { data = register:description wrap = <p class="csc-uploads-description">|</p> required = 1 htmlSpecialChars = 1 } 30 = TEXT 30.if.isTrue.field = filelink_size 30.data = register:fileSize 30.wrap = <td class="csc-uploads-fileSize">|</td> 30.bytes = 1 30.bytes.labels = " | K| M| G" } useSpacesInLinkText = 0 stripFileExtensionFromLinkText = 0 } 20.color { default = 1 = #EDEBF1 2 = #F5FFAA } 20.tableParams_0 { border = cellpadding = cellspacing = } 20.tableParams_1 { border = cellpadding = cellspacing = } 20.tableParams_2 { border = cellpadding = cellspacing = } 20.tableParams_3 { border = cellpadding = cellspacing = } 20.linkProc { target = _blank jumpurl = jumpurl.secure = jumpurl.secure.mimeTypes = pdf=application/pdf, doc=application/msword removePrependedNumbers = 1 iconCObject = IMAGE iconCObject.file.import.data = register : ICON_REL_PATH iconCObject.file.width = 150 } 20.filesize { bytes = 1 bytes.labels = " | K| M| G" } 20.stdWrap { editIcons = tt_content: media, layout [table_bgColor|table_border|table_cellspacing|table_cellpadding], filelink_size, imagecaption editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.filelist prefixComment = 2 | File list: } } # ****************** # CType: multimedia # ****************** tt_content.multimedia = COA tt_content.multimedia { 10 = < lib.stdheader 20 = MULTIMEDIA 20.file.field = multimedia 20.file.wrap = uploads/media/ 20.file.listNum = 0 20.params.field = bodytext 20.stdWrap { editIcons = tt_content: multimedia, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | Multimedia element: } } # ***************** # CType: swfobject # ***************** tt_content.swfobject = COA tt_content.swfobject { 10 = < lib.stdheader 20 = SWFOBJECT 20 { file = width = height = flexParams.field = pi_flexform alternativeContent.field = bodytext layout = ###SWFOBJECT### video { player = typo3/contrib/flashmedia/flvplayer.swf defaultWidth = 600 defaultHeight = 400 default { params.quality = high params.menu = false params.allowScriptAccess = sameDomain params.allowFullScreen = true } mapping { } } audio { player = typo3/contrib/flashmedia/player.swf defaultWidth = 300 defaultHeight = 30 default { params.quality = high params.allowScriptAccess = sameDomain params.menu = false } mapping { flashvars.file = soundFile } } } 20.stdWrap { editIcons = tt_content: multimedia, imagewidth, imageheight, pi_flexform, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | SWFobject element: } } # ***************** # CType: qtobject # ***************** tt_content.qtobject = COA tt_content.qtobject { 10 = < lib.stdheader 20 = QTOBJECT 20 { file = width = height = flexParams.field = pi_flexform alternativeContent.field = bodytext layout = ###QTOBJECT### video { player = typo3/contrib/flashmedia/flvplayer.swf defaultWidth = 600 defaultHeight = 400 default { params.quality = high params.menu = false params.allowScriptAccess = sameDomain params.allowFullScreen = true } mapping { } } audio { player = typo3/contrib/flashmedia/player.swf defaultWidth = 300 defaultHeight = 30 default { params.quality = high params.allowScriptAccess = sameDomain params.menu = false } mapping { flashvars.file = soundFile } } } 20.stdWrap { editIcons = tt_content: multimedia, imagewidth, imageheight, pi_flexform, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | QTobject element: } } # ***************** # CType: media # ***************** tt_content.media = COA tt_content.media { 10 = < lib.stdheader 20 = MEDIA 20 { flexParams.field = pi_flexform alternativeContent < tt_content.text.20 alternativeContent.field = bodytext type = video renderType = auto allowEmptyUrl = 0 forcePlayer = 1 fileExtHandler { default = MEDIA avi = MEDIA asf = MEDIA class = MEDIA wmv = MEDIA mp3 = SWF mp4 = SWF m4v = SWF swa = SWF flv = SWF swf = SWF mov = QT m4v = QT m4a = QT } mimeConf.swfobject < tt_content.swfobject.20 mimeConf.qtobject < tt_content.qtobject.20 } 20.stdWrap { editIcons = tt_content: pi_flexform, bodytext editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.multimedia prefixComment = 2 | Media element: } } # ****************** # CType: mailform # ****************** tt_content.mailform = COA tt_content.mailform.10 = < lib.stdheader tt_content.mailform.20 = FORM tt_content.mailform.20 { accessibility = 1 noWrapAttr=1 formName = mailform dontMd5FieldNames = 1 layout = <div class="csc-mailform-field">###LABEL### ###FIELD###</div> labelWrap.wrap = | commentWrap.wrap = | radioWrap.wrap = |<br /> radioWrap.accessibilityWrap = <fieldset###RADIO_FIELD_ID###><legend>###RADIO_GROUP_LABEL###</legend>|</fieldset> REQ = 1 REQ.labelWrap.wrap = | COMMENT.layout = <div class="csc-mailform-label">###LABEL###</div> RADIO.layout = <div class="csc-mailform-field">###LABEL### <span class="csc-mailform-radio">###FIELD###</span></div> LABEL.layout = <div class="csc-mailform-field">###LABEL### <span class="csc-mailform-label">###FIELD###</span></div> target = goodMess = badMess = redirect.field = pages redirect.listNum = 0 recipient.field = subheader data.field = bodytext locationData = 1 hiddenFields.stdWrap.wrap = <div style="display:none;">|</div> params.radio = class="csc-mailform-radio" params.check = class="csc-mailform-check" params.submit = class="csc-mailform-submit" stdWrap.wrap = <fieldset class="csc-mailform"> | </fieldset> stdWrap { editIcons = tt_content: bodytext, pages, subheader editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.form prefixComment = 2 | Mail form inserted: } } # ****************** # CType: search # ****************** tt_content.search = COA tt_content.search.10 = < lib.stdheader # Result: tt_content.search.20 = SEARCHRESULT tt_content.search.20 { allowedCols = pages.title-subtitle-keywords-description : tt_content.header-bodytext-imagecaption : tt_address.name-title-address-email-company-city-country : tt_links.title-note-note2-url : tt_board.subject-message-author-email : tt_calender.title-note : tt_products.title-note-itemnumber languageField.tt_content = sys_language_uid renderObj = COA renderObj { 10 = TEXT 10.field = pages_title 10.htmlSpecialChars = 1 10.typolink { parameter.field = uid target = additionalParams.data = register:SWORD_PARAMS additionalParams.required = 1 additionalParams.wrap = &no_cache=1 } 10.htmlSpecialChars = 1 10.wrap = <h3 class="csc-searchResultHeader">|</h3> 20 = COA 20 { 10 = TEXT 10.field = tt_content_bodytext 10.stripHtml = 1 10.htmlSpecialChars = 1 } 20.stdWrap.crop = 200 | ... 20.stdWrap.wrap = <p class="csc-searchResult">|</p> } layout = COA layout { wrap = <table border="0" cellspacing="0" cellpadding="2" class="csc-searchResultInfo"><tr> | </tr></table> ###RESULT### 10 = TEXT 10.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.resultRange 10.wrap = <td class="csc-searchResultRange"><p>|</p></td> 20 = TEXT 20.value = ###PREV###&nbsp;&nbsp;&nbsp;###NEXT### 20.wrap = <td class="csc-searchResultPrevNext"><p>|</p></td> } noResultObj = COA noResultObj { 10 = TEXT 10.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.emptySearch 10.wrap = <h3 class="csc-noSearchResultMsg">|</h3> } next = TEXT next.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchResultNext prev = TEXT prev.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchResultPrev target = range = 20 stdWrap.prefixComment = 2 | Search result: } # Form: tt_content.search.30 < tt_content.mailform.20 tt_content.search.30 { goodMess = redirect > recipient > data > dataArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchWord 10.type = sword=input 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchIn 20.type = scols=select 20.valueArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.headersKeywords 10.value = pages.title-subtitle-keywords-description:tt_content.header 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.pageContent 20.value = tt_content.header-bodytext-imagecaption } 30.type = stype=hidden 30.value = L0 40.type = submit=submit 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.xml:search.searchButton } type.field = pages type.listNum = 0 locationData = HTTP_POST_VARS no_cache = 1 stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" class="csc-searchform"> | </table> stdWrap { editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.search prefixComment = 2 | Search form inserted: } } # ****************** # CType: login # ****************** tt_content.login < tt_content.mailform tt_content.login.10 = < lib.stdheader tt_content.login.20 { goodMess = redirect > recipient > data > dataArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.username 10.type = *user=input 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.password 20.type = *pass=password 30.type = logintype=hidden 30.value = login 40.type = submit=submit 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.login } type.field = pages type.listNum = 0 target = _top locationData = 0 hiddenFields.pid = TEXT hiddenFields.pid { value = override.field = pages override.listNum = 1 } stdWrap.wrap = <div class="csc-loginform"> | </div> stdWrap { editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.login prefixComment = 2 | Login/Logout form: } } [loginUser = *] tt_content.login.20 { dataArray > dataArray { 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.username 10.label.wrap = |&nbsp;<!--###USERNAME###--> 30.type = logintype=hidden 30.value = logout 40.type = submit=submit 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.xml:login.logout } } [global] # ****************** # CType: splash # ****************** # Deprecated element. # Still here for backwards compliance with plugins using the "text box" type. tt_content.splash = CASE tt_content.splash.key.field = splash_layout tt_content.splash.stdWrap { prefixComment = 2 | Textbox inserted (Deprecated) } tt_content.splash.default = COA tt_content.splash.default { 20 = CTABLE 20 { c.1 = < tt_content.text lm.1 = IMAGE lm.1.file { import = uploads/pics/ import.field = image import.listNum = 0 maxW.field = imagewidth maxW.ifEmpty = 200 } cMargins = 30,0,0,0 } } tt_content.splash.1 < tt_content.splash.default tt_content.splash.1.20.lm.1.file > tt_content.splash.1.20.lm.1.file = GIFBUILDER tt_content.splash.1.20.lm.1.file { XY = [10.w]+10,[10.h]+10 backColor = white backColor.override.data = register:pageColor format = jpg 5 = BOX 5.dimensions = 3,3,[10.w],[10.h] 5.color = #333333 7 = EFFECT 7.value = blur=99|blur=99|blur=99|blur=99|blur=99|blur=99|blur=99 10 = IMAGE 10.file { import = uploads/pics/ import.field = image import.listNum = 0 maxW.field = imagewidth maxW.ifEmpty = 200 } } // The image frames are not available unless TypoScript code from styles.content.imgFrames.x is provided manually: tt_content.splash.2 < tt_content.splash.default #tt_content.splash.2.20.lm.1.file.m < styles.content.imgFrames.1 tt_content.splash.3 < tt_content.splash.default #tt_content.splash.3.20.lm.1.file.m < styles.content.imgFrames.2 // From plugin.postit1, if included: tt_content.splash.20 = < plugin.postit1 # **************** # CType: menu # **************** tt_content.menu = COA tt_content.menu { 10 = < lib.stdheader 20 = CASE 20 { key.field = menu_type # "Menu of these pages" default = HMENU default { special = list special.value.field = pages wrap = <ul class="csc-menu csc-menu-def">|</ul> 1 = TMENU 1 { target = NO { stdWrap.htmlSpecialChars = 1 wrapItemAndSub = <li>|</li> ATagTitle.field = description // title } noBlur = 1 } } # "Menu of subpages to these pages" 1 < .default 1 { special = directory wrap = <ul class="csc-menu csc-menu-1">|</ul> } # "Sitemap - liststyle" 2 = HMENU 2 { wrap = <div class="csc-sitemap">|</div> 1 = TMENU 1 { target = noBlur = 1 expAll = 1 wrap = <ul>|</ul> NO { stdWrap.htmlSpecialChars = 1 wrapItemAndSub = <li>|</li> ATagTitle.field = description // title } } 2 < .1 3 < .1 4 < .1 5 < .1 6 < .1 7 < .1 } # "Section index (pagecontent w/Index checked - liststyle)" 3 < styles.content.get 3 { wrap = <ul class="csc-menu csc-menu-3">|</ul> select.andWhere = sectionIndex!=0 select.pidInList.override.field = pages renderObj = TEXT renderObj { fieldRequired = header trim = 1 field = header htmlSpecialChars = 1 noBlur = 1 wrap = <li class="csc-section">|</li> typolink.parameter.field = pid typolink.section.field = uid } } # "Menu of subpages to these pages (with abstract)" 4 < .1 4 { wrap = <dl class="csc-menu csc-menu-4">|</dl> 1.NO { wrapItemAndSub > linkWrap = <dt>|</dt> after { data = field : abstract // field : description // field : subtitle required = 1 htmlSpecialChars = 1 wrap = <dd>|</dd> } ATagTitle.field = description // title } } # "Recently updated pages" 5 < .default 5 { wrap = <ul class="csc-menu csc-menu-5">|</ul> special = updated special { maxAge = 3600*24*7 excludeNoSearchPages = 1 } } # "Related pages (based on keywords)" 6 < .default 6 { wrap = <ul class="csc-menu csc-menu-6">|</ul> special = keywords special { excludeNoSearchPages = 1 } } # "Menu of subpages to these pages + sections - liststyle" 7 < .1 7 { wrap = <ul class="csc-menu csc-menu-7">|</ul> 1.expAll = 1 2 < .1 2 { sectionIndex = 1 sectionIndex.type = header wrap = <ul>|</ul> NO.wrapItemAndSub = <li class="csc-section">|</li> } } } 20.stdWrap { editIcons = tt_content: menu_type, pages editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.menuSitemap prefixComment = 2 | Menu/Sitemap element: } } # **************** # CType: shortcut # **************** # Should be a complete copy from the old static template "content (default)" tt_content.shortcut = COA tt_content.shortcut { 20 = CASE 20.key.field = layout 20.0= RECORDS 20.0 { source.field = records tables = tt_content,tt_address,tt_links,tt_guest,tt_board,tt_calender,tt_products,tt_news,tt_rating,tt_poll # THESE are OLD plugins. Modern plugins registers themselves automatically! conf.tt_content = < tt_content conf.tt_address = < tt_address conf.tt_links = < tt_links conf.tt_guest = < tt_guest conf.tt_board = < tt_board conf.tt_calender = < tt_calender conf.tt_rating < tt_rating conf.tt_products = < tt_products conf.tt_news = < tt_news conf.tt_poll = < plugin.tt_poll } 20.1= RECORDS 20.1 { source.field = records tables = tt_content,tt_address,tt_links,tt_guest,tt_board,tt_calender,tt_products,tt_news,tt_rating,tt_poll conf.tt_poll = < plugin.tt_poll conf.tt_poll.code = RESULT,SUBMITTEDVOTE } 20.stdWrap { editIcons = tt_content: records editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.recordList prefixComment = 2 | Inclusion of other records (by reference): } } # **************** # CType: list # **************** # Should be a complete copy from the old static template "content (default)" (except "lib.stdheader") tt_content.list = COA tt_content.list { 10 = < lib.stdheader 20 = CASE 20.key.field = list_type 20 { # LIST element references (NOT copy of objects!) # THESE are OLD plugins. Modern plugins registers themselves automatically! 3 = CASE 3.key.field = layout 3.0 = < plugin.tt_guest 4 = CASE 4.key.field = layout 4.0 = < plugin.tt_board_list 4.1 = < plugin.tt_board_tree 2 = CASE 2.key.field = layout 2.0 = < plugin.tt_board_tree 5 = CASE 5.key.field = layout 5.0 = < plugin.tt_products 7 = CASE 7.key.field = layout 7.0 = < plugin.tt_calender 8 = CASE 8.key.field = layout 8.0 = < plugin.tt_rating 9 = CASE 9.key.field = layout 9.0 = < plugin.tt_news 11 = CASE 11.key.field = layout 11.0 = < plugin.tipafriend 20 = CASE 20.key.field = layout 20.0 = < plugin.feadmin.fe_users 21 = CASE 21.key.field = layout 21.0 = < plugin.feadmin.dmailsubscription } 20.stdWrap { editIcons = tt_content: list_type, layout, select_key, pages [recursive] editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.plugin prefixComment = 2 | Plugin inserted: } } # **************** # CType: script # **************** # OBSOLETE! Please make extensions instead. The "script" content element was meant for these custom purposes in the past. Today extensions will do the job better. tt_content.script = TEXT tt_content.script { value = prefixComment = 2 | Script element (Deprecated) } # **************** # CType: div # **************** tt_content.div = TEXT tt_content.div { value = <hr /> wrap = <div class="divider">|</div> prefixComment = 2 | Div element } # **************** # CType: html # **************** # This truely IS a content object, launched from inside the PHP class of course. # Should be a complete copy from the old static template "content (default)" tt_content.html = TEXT tt_content.html { field = bodytext editIcons = tt_content: pages editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.xml:eIcon.html prefixComment = 2 | Raw HTML content: } # **************** # Default error msg: # **************** tt_content.default = TEXT tt_content.default { field = CType wrap = <p style="background-color: yellow;"><b>ERROR:</b> Content Element type "|" has no rendering definition!</p> prefixComment = 2 | Unknown element message: } # ********************************************************************* # ACCESSIBILTY MODE # ********************************************************************* plugin.tx_cssstyledcontent._CSS_DEFAULT_STYLE ( /* Captions */ DIV.csc-textpic-caption-c .csc-textpic-caption { text-align: center; } DIV.csc-textpic-caption-r .csc-textpic-caption { text-align: right; } DIV.csc-textpic-caption-l .csc-textpic-caption { text-align: left; } /* Needed for noRows setting */ DIV.csc-textpic DIV.csc-textpic-imagecolumn { float: left; display: inline; } /* Border just around the image */ DIV.csc-textpic-border DIV.csc-textpic-imagewrap .csc-textpic-image IMG, DIV.csc-textpic-border DIV.csc-textpic-single-image IMG { border: 2px solid black; padding: 0px 0px; } DIV.csc-textpic-imagewrap { padding: 0; } DIV.csc-textpic IMG { border: none; } /* DIV: This will place the images side by side */ DIV.csc-textpic DIV.csc-textpic-imagewrap DIV.csc-textpic-image { float: left; } /* UL: This will place the images side by side */ DIV.csc-textpic DIV.csc-textpic-imagewrap UL { list-style: none; margin: 0; padding: 0; } DIV.csc-textpic DIV.csc-textpic-imagewrap UL LI { float: left; margin: 0; padding: 0; } /* DL: This will place the images side by side */ DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image { float: left; } DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DT { float: none; } DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DD { float: none; } DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DD IMG { border: none; } /* FE-Editing Icons */ DL.csc-textpic-image { margin: 0; } DL.csc-textpic-image DT { margin: 0; display: inline; } DL.csc-textpic-image DD { margin: 0; } /* Clearer */ DIV.csc-textpic-clear { clear: both; } /* Margins around images: */ /* Pictures on left, add margin on right */ DIV.csc-textpic-left DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap .csc-textpic-image { display: inline; /* IE fix for double-margin bug */ margin-right: 10px; } /* Pictures on right, add margin on left */ DIV.csc-textpic-right DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap .csc-textpic-image, DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap .csc-textpic-image { display: inline; /* IE fix for double-margin bug */ margin-left: 10px; } /* Pictures centered, add margin on left */ DIV.csc-textpic-center DIV.csc-textpic-imagewrap .csc-textpic-image { display: inline; /* IE fix for double-margin bug */ margin-left: 10px; } DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image .csc-textpic-caption { margin: 0; } DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image IMG { margin: 0; vertical-align:bottom; } /* Space below each image (also in-between rows) */ DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image { margin-bottom: 10px; } DIV.csc-textpic-equalheight DIV.csc-textpic-imagerow { margin-bottom: 10px; display: block; } DIV.csc-textpic DIV.csc-textpic-imagerow { clear: both; } DIV.csc-textpic DIV.csc-textpic-single-image IMG { margin-bottom: 10px; } /* IE7 hack for margin between image rows */ *+html DIV.csc-textpic DIV.csc-textpic-imagerow .csc-textpic-image { margin-bottom: 0; } *+html DIV.csc-textpic DIV.csc-textpic-imagerow { margin-bottom: 10px; } /* No margins around the whole image-block */ DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-firstcol { margin-left: 0px !important; } DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-lastcol { margin-right: 0px !important; } /* Add margin from image-block to text (in case of "Text w/ images") */ DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap, DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap { margin-right: 10px !important; } DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap, DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap { margin-left: 10px !important; } /* Positioning of images: */ /* Above */ DIV.csc-textpic-above DIV.csc-textpic-text { clear: both; } /* Center (above or below) */ DIV.csc-textpic-center { text-align: center; /* IE-hack */ } DIV.csc-textpic-center DIV.csc-textpic-imagewrap { margin: 0 auto; } DIV.csc-textpic-center DIV.csc-textpic-imagewrap .csc-textpic-image { text-align: left; /* Remove IE-hack */ } DIV.csc-textpic-center DIV.csc-textpic-text { text-align: left; /* Remove IE-hack */ } /* Right (above or below) */ DIV.csc-textpic-right DIV.csc-textpic-imagewrap { float: right; } DIV.csc-textpic-right DIV.csc-textpic-text { clear: right; } /* Left (above or below) */ DIV.csc-textpic-left DIV.csc-textpic-imagewrap { float: left; } DIV.csc-textpic-left DIV.csc-textpic-text { clear: left; } /* Left (in text) */ DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap { float: left; } /* Right (in text) */ DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap { float: right; } /* Right (in text, no wrap around) */ DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap { float: right; clear: both; } /* Hide from IE5-mac. Only IE-win sees this. \\*/ * html DIV.csc-textpic-intext-right-nowrap .csc-textpic-text { height: 1%; } /* End hide from IE5/mac */ /* Left (in text, no wrap around) */ DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap { float: left; clear: both; } /* Hide from IE5-mac. Only IE-win sees this. \\*/ * html DIV.csc-textpic-intext-left-nowrap .csc-textpic-text, * html .csc-textpic-intext-left ol, * html .csc-textpic-intext-left ul { height: 1%; } /* End hide from IE5/mac */ DIV.csc-textpic DIV.csc-textpic-imagerow-last { margin-bottom: 0; } /* Browser fixes: */ /* Fix for unordered and ordered list with image "In text, left" */ .csc-textpic-intext-left ol, .csc-textpic-intext-left ul {padding-left: 40px; overflow: auto; }

Öffnungszeiten

Keine Öffnungszeiten hinterlegt


Eigenes Impressum

Kein eigenes Impressum vorhanden

Stellenanzeigen

Keine Stellenangebote vorhanden

Kommentare
Keine Kommentare vorhanden

Neuen Kommentar schreiben

Bitte melden Sie sich an, um Beiträge zu verfassen.

Bewertungen
Keine Bewertungen vorhanden

Bewertung schreiben

Bitte melden Sie sich an, um Beiträge zu verfassen.

Stellenangebote

StepStone
Ingenieur Rohrleitungstechnik / Rohrleitungsplaner (m/w/d) Chemieanlagenbau [mehr...]


StepStone
Senior Consultant Rollout Management Sparkassen-Finanzgruppe (m/w/d) [mehr...]


StepStone
Entwicklungsingenieur (m/w/d) Fahrerassistenzsysteme Automotive [mehr...]


StepStone
Qualitätsingenieur Produktion (m/w/d) [mehr...]


StepStone
Konstrukteur Maschinenbau und Anlagenbau (m/w/d) [mehr...]


StepStone
Servicemitarbeiter (m/w/d) mit einer Einstiegsprämie von 1.000,-€ brutto [mehr...]


StepStone
Konstrukteur Schiffbau (m/w/d) [mehr...]


StepStone
(Senior) Consultant/Manager (all genders) Elektrifizierung und Laden - Schwerpunkt Automotive [mehr...]


StepStone
Ingenieur (m/w/d) Mess- und Regeltechnik / Prozessleittechnik Chemieanlagenbau [mehr...]


StepStone
Ingenieur (m/w/d) Automatisierungstechnik [mehr...]