1617338eac6ecf153daf3ae89b6114c08a602ff7
[Packages/TYPO3.CMS.git] / typo3 / sysext / css_styled_content / static / setup.txt
1 # ***************************************************************************
2 # Notice: "styles." (and "temp.") objects are UNSET after template parsing!
3 # Use "lib." for persisting storage of objects.
4 # ***************************************************************************
5
6 # Clear out any constants in this reserved room!
7 styles.content >
8
9 # get content
10 styles.content.get = CONTENT
11 styles.content.get {
12         table = tt_content
13         select.orderBy = sorting
14         select.where = colPos=0
15         select.languageField = sys_language_uid
16 }
17
18 # get content, left
19 styles.content.getLeft < styles.content.get
20 styles.content.getLeft.select.where = colPos=1
21
22 # get content, right
23 styles.content.getRight < styles.content.get
24 styles.content.getRight.select.where = colPos=2
25
26 # get content, margin
27 styles.content.getBorder < styles.content.get
28 styles.content.getBorder.select.where = colPos=3
29
30 # get news
31 styles.content.getNews < styles.content.get
32 styles.content.getNews.select.pidInList = {$styles.content.getNews.newsPid}
33
34 # Edit page object:
35 styles.content.editPanelPage = COA
36 styles.content.editPanelPage {
37         10 = EDITPANEL
38         10 {
39                 allow = toolbar,move,hide
40                 label.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.page
41                 label.wrap = |&nbsp;<b>%s</b>
42         }
43 }
44
45
46
47
48
49
50
51
52
53
54
55 # *********************************************************************
56 # "lib." objects are preserved from unsetting after template parsing
57 # *********************************************************************
58
59 # Creates persistent ParseFunc setup for non-HTML content. This is recommended to use (as a reference!)
60 lib.parseFunc {
61         makelinks = 1
62         makelinks.http.keep = {$styles.content.links.keep}
63         makelinks.http.extTarget = {$styles.content.links.extTarget}
64         makelinks.mailto.keep = path
65         tags {
66                 link = TEXT
67                 link {
68                         current = 1
69                         typolink.parameter.data = parameters : allParams
70                         typolink.extTarget = {$styles.content.links.extTarget}
71                         typolink.target = {$styles.content.links.target}
72                         parseFunc.constants =1
73                 }
74         }
75         allowTags = {$styles.content.links.allowTags}
76         denyTags = *
77         sword = <span class="csc-sword">|</span>
78         constants = 1
79
80         nonTypoTagStdWrap.HTMLparser = 1
81         nonTypoTagStdWrap.HTMLparser {
82                 keepNonMatchedTags = 1
83                 htmlSpecialChars = 2
84         }
85 }
86
87 # good old parsefunc in "styles.content.parseFunc" is created for backwards compatibility. Don't use it, just ignore.
88 styles.content.parseFunc < lib.parseFunc
89
90 # Creates persistent ParseFunc setup for RTE content (which is mainly HTML) based on the "ts_css" transformation.
91 lib.parseFunc_RTE < lib.parseFunc
92 lib.parseFunc_RTE {
93         //  makelinks >
94         # Processing <table> and <blockquote> blocks separately
95         externalBlocks = table, blockquote, ol,ul
96         externalBlocks {
97                 # The blockquote content is passed into parseFunc again...
98                 blockquote.stripNL=1
99                 blockquote.callRecursive=1
100                 blockquote.callRecursive.tagStdWrap.HTMLparser = 1
101                 blockquote.callRecursive.tagStdWrap.HTMLparser.tags.blockquote.overrideAttribs = style="margin-bottom:0;margin-top:0;"
102
103                 ol.stripNL=1
104                 ol.stdWrap.parseFunc = < lib.parseFunc
105
106                 ul.stripNL=1
107                 ul.stdWrap.parseFunc = < lib.parseFunc
108
109                 table.stripNL=1
110                 table.stdWrap.HTMLparser = 1
111                 table.stdWrap.HTMLparser.tags.table.fixAttrib.class {
112                         default = contenttable
113                         always = 1
114                         list = contenttable
115                 }
116                 table.stdWrap.HTMLparser.keepNonMatchedTags = 1
117                 table.HTMLtableCells=1
118                 table.HTMLtableCells {
119                         default.callRecursive=1
120                         addChr10BetweenParagraphs=1
121                 }
122         }
123         nonTypoTagStdWrap.encapsLines {
124                 encapsTagList = div,p,pre,h1,h2,h3,h4,h5,h6
125                 remapTag.DIV = P
126                 nonWrappedTag = P
127                 innerStdWrap_all.ifBlank = &nbsp;
128                 addAttributes.P.class = bodytext
129                 addAttributes.P.class.setOnly=blank
130         }
131         nonTypoTagStdWrap.HTMLparser = 1
132         nonTypoTagStdWrap.HTMLparser {
133                 keepNonMatchedTags = 1
134                 htmlSpecialChars = 2
135         }
136 }
137
138
139 # Content header:
140 lib.stdheader = COA
141 lib.stdheader {
142
143         # Create align style-attribute for <Hx> tags
144         2 = LOAD_REGISTER
145         2.headerStyle.field = header_position
146         2.headerStyle.required = 1
147         2.headerStyle.noTrimWrap = | style="text-align:|;"|
148
149         # Create class="csc-firstHeader" attribute for <Hx> tags
150         3 = LOAD_REGISTER
151         3.headerClass = csc-firstHeader
152         3.headerClass.if.value=1
153         3.headerClass.if.equals.data = cObj:parentRecordNumber
154         3.headerClass.noTrimWrap = | class="|"|
155
156         # Date format:
157         5 = TEXT
158         5.field = date
159         5.if.isTrue.field = date
160         5.date = d/m Y
161         5.wrap = <p class="csc-header-date">|</p>
162         5.prefixComment = 2 | Header date:
163
164         # This CASE cObject renders the header content:
165         # currentValue is set to the header data, possibly wrapped in link-tags.
166         10 = CASE
167         10.setCurrent {
168                 field = header
169                 htmlSpecialChars = 1
170                 typolink.parameter.field = header_link
171         }
172         10.key.field = header_layout
173         10.key.ifEmpty = {$content.defaultHeaderType}
174         10.key.ifEmpty.override.data = register: defaultHeaderType
175
176         10.1 = TEXT
177         10.1.current = 1
178         10.1.insertData = 1
179         10.1.fontTag = <h1{register:headerStyle}{register:headerClass}>|</h1>
180
181         10.2 < .10.1
182         10.2.fontTag = <h2{register:headerStyle}{register:headerClass}>|</h2>
183
184         10.3 < .10.1
185         10.3.fontTag = <h3{register:headerStyle}{register:headerClass}>|</h3>
186
187         10.4 < .10.1
188         10.4.fontTag = <h4{register:headerStyle}{register:headerClass}>|</h4>
189
190         10.5 < .10.1
191         10.5.fontTag = <h5{register:headerStyle}{register:headerClass}>|</h5>
192
193         # Pops the used registers off the stack:
194         98 = RESTORE_REGISTER
195         99 = RESTORE_REGISTER
196
197         # Post-processing:
198         stdWrap.fieldRequired = header
199         stdWrap.if {
200                 equals.field = header_layout
201                 value = 100
202                 negate = 1
203         }
204
205         stdWrap.editIcons = tt_content : header, [header_layout | header_position], [header_link|date]
206         stdWrap.editIcons.beforeLastTag = 1
207         stdWrap.editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.header
208
209         stdWrap.dataWrap = <div class="csc-header csc-header-n{cObj:parentRecordNumber}">|</div>
210         stdWrap.prefixComment = 2 | Header:
211 }
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227 #******************************************************
228 # Including library for processing of some elements:
229 #******************************************************
230 includeLibs.tx_cssstyledcontent_pi1 = EXT:css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php
231
232
233 #**********************************
234 # tt_content is started
235 #**********************************
236 tt_content >
237 tt_content = CASE
238 tt_content.key.field = CType
239 tt_content.stdWrap {
240
241         spaceBefore.field = spaceBefore
242         spaceAfter.field = spaceAfter
243         space = {$content.space}
244
245         innerWrap.cObject = CASE
246         innerWrap.cObject {
247                 key.field = section_frame
248
249                 1 = TEXT
250                 1.value = <div class="csc-frame csc-frame-invisible">|</div>
251
252                 5 = TEXT
253                 5.value = <div class="csc-frame csc-frame-rulerBefore"></div>|
254
255                 6 = TEXT
256                 6.value = |<div class="csc-frame csc-frame-rulerAfter"></div>
257
258                 10 = TEXT
259                 10.value = <div class="csc-frame csc-frame-indent">|</div>
260
261                 11 = TEXT
262                 11.value = <div class="csc-frame csc-frame-indent3366">|</div>
263
264                 12 = TEXT
265                 12.value = <div class="csc-frame csc-frame-indent6633">|</div>
266
267                 20 = TEXT
268                 20.value = <div class="csc-frame csc-frame-frame1">|</div>
269
270                 21 = TEXT
271                 21.value = <div class="csc-frame csc-frame-frame2">|</div>
272         }
273
274         innerWrap2 = | <p class="csc-linkToTop"><a href="#">{LLL:EXT:css_styled_content/pi1/locallang.php:label.toTop}</a></p>
275         innerWrap2.insertData = 1
276         innerWrap2.fieldRequired = linkToTop
277
278         dataWrap = <a id="c{field:uid}"></a> |
279
280         editPanel = 1
281         editPanel {
282                 allow = move,new,edit,hide,delete
283                 line = 5
284                 label = %s
285                 onlyCurrentPid = 1
286                 previewBorder = 4
287                 edit.displayRecord = 1
288         }
289
290         prefixComment = 1 | CONTENT ELEMENT, uid:{field:uid}/{field:CType}
291 }
292
293
294 # *****************
295 # CType: header
296 # *****************
297 # See Object path "lib.stdheader"
298 tt_content.header = COA
299 tt_content.header {
300         10 = < lib.stdheader
301
302         20 = TEXT
303         20 {
304                 field = subheader
305                 required = 1
306
307                 dataWrap = <p class="csc-subheader csc-subheader-{field:layout}">|</p>
308                 htmlSpecialChars = 1
309
310                 editIcons = tt_content:subheader,layout
311                 editIcons.beforeLastTag = 1
312                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.subheader
313
314                 prefixComment = 2 | Subheader:
315         }
316 }
317
318
319 # *****************
320 # CType: text
321 # *****************
322 tt_content.text = COA
323 tt_content.text {
324         10 = < lib.stdheader
325
326         20 = TEXT
327         20 {
328                 field = bodytext
329                 required = 1
330
331                 parseFunc = < lib.parseFunc_RTE
332
333                 editIcons = tt_content:bodytext, rte_enabled
334                 editIcons.beforeLastTag = 1
335                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.bodytext
336
337                 prefixComment = 2 | Text:
338         }
339 }
340
341
342 # *****************
343 # CType: image
344 # *****************
345 # (also used for rendering 'textpic' type):
346 tt_content.image = COA
347 tt_content.image.10 = < lib.stdheader
348 tt_content.image.20 = IMGTEXT
349 tt_content.image.20 {
350         imgList.field = image
351         textPos.field = imageorient
352         imgPath = uploads/pics/
353         imgObjNum = 1
354         1 {
355                 file.import.current = 1
356                 file.width.field = imagewidth
357                 params = align="top"
358                 imageLinkWrap = 1
359                 imageLinkWrap {
360                         bodyTag = <body bgcolor="black">
361                         wrap = <a href="javascript:close();"> | </a>
362                         width = {$styles.content.imgtext.linkWrap.width}
363                         height = {$styles.content.imgtext.linkWrap.height}
364                         effects = {$styles.content.imgtext.linkWrap.effects}
365
366                         JSwindow = 1
367                         JSwindow.newWindow = {$styles.content.imgtext.linkWrap.newWindow}
368                         JSwindow.expand = 17,20
369
370                         enable.field = image_zoom
371                         enable.ifEmpty.field = image_link
372                         enable.ifEmpty.listNum.stdWrap.data = register : IMAGE_NUM
373
374                         typolink.parameter.field = image_link
375                         typolink.parameter.listNum.stdWrap.data = register : IMAGE_NUM
376                         typolink.target = {$styles.content.links.target}
377                         typolink.extTarget = {$styles.content.links.extTarget}
378                 }
379
380                 altText = TEXT
381                 altText {
382                         field = altText
383                         split.token.char = 10
384                         split.token.if.isTrue = {$styles.content.imgtext.imageTextSplit}
385                         split.returnKey.data = register : IMAGE_NUM
386                 }
387
388                 titleText < .altText
389                 titleText.field = titleText
390
391                 longdescURL < .altText
392                 longdescURL.field = longdescURL
393
394                 emptyTitleHandling = {$styles.content.imgtext.emptyTitleHandling}
395                 titleInLink = {$styles.content.imgtext.titleInLink}
396                 titleInLinkAndImg = {$styles.content.imgtext.titleInLinkAndImg}
397         }
398
399         maxW = {$styles.content.imgtext.maxW}
400         maxW.override.data = register:maxImageWidth
401         maxWInText = {$styles.content.imgtext.maxWInText}
402         maxWInText.override.data = register:maxImageWidthInText
403
404         equalH.field = imageheight
405         spaceBelowAbove = 6
406
407         image_compression.field = image_compression
408         image_effects.field = image_effects
409
410         noRows.field = image_noRows
411
412         cols.field = imagecols
413         border.field = imageborder
414         caption {
415                 1 = TEXT
416                 1 {
417                         field = imagecaption
418                         required = 1
419                         parseFunc =< lib.parseFunc
420                         br = 1
421                         fontTag = <p class="csc-caption">|</p>
422                         wrapAlign.field = imagecaption_position
423                         split.token.char = 10
424                         split.token.if.isPositive = {$styles.content.imgtext.imageTextSplit} + {$styles.content.imgtext.captionSplit}
425                         split.returnKey.data = register : IMAGE_NUM
426                 }
427         }
428         # captionSplit is deprecated, use imageTextSplit instead
429         captionSplit = {$styles.content.imgtext.captionSplit}
430         # caption/alttext/title/longdescURL splitting
431         imageTextSplit = {$styles.content.imgtext.imageTextSplit}
432
433         borderCol = {$styles.content.imgtext.borderColor}
434         borderThick = {$styles.content.imgtext.borderThick}
435         colSpace = {$styles.content.imgtext.colSpace}
436         rowSpace = {$styles.content.imgtext.rowSpace}
437         textMargin = {$styles.content.imgtext.textMargin}
438
439         editIcons = tt_content : image [imageorient|imagewidth|imageheight], [imagecols|image_noRows|imageborder],[image_link|image_zoom],[image_compression|image_effects|image_frames],imagecaption[imagecaption_position]
440         editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.images
441
442         caption.editIcons = tt_content : imagecaption[imagecaption_position]
443         caption.editIcons.beforeLastTag=1
444         caption.editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.caption
445
446         stdWrap.prefixComment = 2 | Image block:
447 }
448
449
450 # *****************
451 # CType: textpic
452 # *****************
453 tt_content.textpic = COA
454 tt_content.textpic {
455         10 = COA
456         10.if.value = 25
457         10.if.isLessThan.field = imageorient
458         10.10 = < lib.stdheader
459
460         20  = < tt_content.image.20
461         20.text.10 = COA
462         20.text.10 {
463                 if.value = 24
464                 if.isGreaterThan.field = imageorient
465                 10 = < lib.stdheader
466                 10.stdWrap.dataWrap = <div class="csc-textpicHeader csc-textpicHeader-{field:imageorient}">|</div>
467         }
468         20.text.20 = < tt_content.text.20
469 }
470
471
472 # *****************
473 # CType: bullet
474 # *****************
475 # Rendered by a PHP function specifically written to handle CE bullet lists. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php
476 tt_content.bullets = COA
477 tt_content.bullets {
478         10 = < lib.stdheader
479
480         20 = USER
481         20.userFunc = tx_cssstyledcontent_pi1->render_bullets
482
483         20.innerStdWrap.parseFunc = < lib.parseFunc
484
485         20.stdWrap {
486                 editIcons = tt_content: bodytext, [layout]
487                 editIcons.beforeLastTag = 1
488                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.bullets
489
490                 prefixComment = 2 | Bullet list:
491         }
492 }
493
494
495 # *****************
496 # CType: table
497 # *****************
498 # Rendered by a PHP function specifically written to handle CE tables. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php
499 tt_content.table = COA
500 tt_content.table {
501         10 = < lib.stdheader
502
503         20 = USER
504         20.userFunc = tx_cssstyledcontent_pi1->render_table
505
506         20.color {
507                 default =
508                 1 = #EDEBF1
509                 2 = #F5FFAA
510         }
511         20.tableParams_0 {
512                 border =
513                 cellpadding =
514                 cellspacing =
515         }
516         20.tableParams_1 {
517                 border =
518                 cellpadding =
519                 cellspacing =
520         }
521         20.tableParams_2 {
522                 border =
523                 cellpadding =
524                 cellspacing =
525         }
526         20.tableParams_3 {
527                 border =
528                 cellpadding =
529                 cellspacing =
530         }
531         20.innerStdWrap.wrap = <p>|</p>
532         20.innerStdWrap.parseFunc = < lib.parseFunc
533
534         20.stdWrap {
535                 editIcons = tt_content: cols, bodytext, [layout], [table_bgColor|table_border|table_cellspacing|table_cellpadding]
536                 editIcons.beforeLastTag = 1
537                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.table
538
539                 prefixComment = 2 | Table:
540         }
541 }
542
543
544 # *****************
545 # CType: uploads
546 # *****************
547 # Rendered by a PHP function specifically written to handle CE filelists. See css_styled_content/pi1/class.tx_cssstyledcontent_pi1.php
548 tt_content.uploads = COA
549 tt_content.uploads {
550         10 = < lib.stdheader
551
552         20 = USER
553         20.userFunc = tx_cssstyledcontent_pi1->render_uploads
554
555         20.color {
556                 default =
557                 1 = #EDEBF1
558                 2 = #F5FFAA
559         }
560         20.tableParams_0 {
561                 border =
562                 cellpadding =
563                 cellspacing =
564         }
565         20.tableParams_1 {
566                 border =
567                 cellpadding =
568                 cellspacing =
569         }
570         20.tableParams_2 {
571                 border =
572                 cellpadding =
573                 cellspacing =
574         }
575         20.tableParams_3 {
576                 border =
577                 cellpadding =
578                 cellspacing =
579         }
580
581         20.linkProc {
582                 target = _blank
583                 jumpurl = {$styles.content.uploads.jumpurl}
584                 jumpurl.secure = {$styles.content.uploads.jumpurl_secure}
585                 jumpurl.secure.mimeTypes = {$styles.content.uploads.jumpurl_secure_mimeTypes}
586                 removePrependedNumbers = 1
587
588                 iconCObject = IMAGE
589                 iconCObject.file.import.data = register : ICON_REL_PATH
590                 iconCObject.file.width = 150
591         }
592
593         20.stdWrap {
594                 editIcons = tt_content: media, layout [table_bgColor|table_border|table_cellspacing|table_cellpadding], filelink_size, imagecaption
595                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.filelist
596
597                 prefixComment = 2 | File list:
598         }
599 }
600
601
602 # ******************
603 # CType: multimedia
604 # ******************
605 tt_content.multimedia = COA
606 tt_content.multimedia {
607         10 = < lib.stdheader
608
609         20 = MULTIMEDIA
610         20.file.field = multimedia
611         20.file.wrap = uploads/media/
612         20.file.listNum = 0
613         20.params.field = bodytext
614
615         20.stdWrap {
616                 editIcons = tt_content: multimedia, bodytext
617                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.multimedia
618
619                 prefixComment = 2 | Multimedia element:
620         }
621 }
622
623
624 # ******************
625 # CType: mailform
626 # ******************
627 tt_content.mailform = COA
628 tt_content.mailform.10 = < lib.stdheader
629 tt_content.mailform.20 = FORM
630 tt_content.mailform.20 {
631         layout = <tr><td class="csc-form-labelcell">###LABEL###</td><td class="csc-form-fieldcell">###FIELD###</td></tr>
632         labelWrap.wrap = <p class="csc-form-label">|</p>
633         commentWrap.wrap = <p class="csc-form-comment">|</p>
634         radioWrap.wrap = <span class="csc-form-radio">|</span><br />
635         REQ = 1
636         REQ.labelWrap.wrap = <p class="csc-form-label-req">|</p>
637         COMMENT.layout = <tr><td colspan="2" class="csc-form-commentcell">###LABEL###</td></tr>
638         target = {$styles.content.mailform.target}
639         goodMess = {$styles.content.mailform.goodMess}
640         badMess = {$styles.content.mailform.badMess}
641         redirect.field = pages
642         redirect.listNum = 0
643         recipient.field = subheader
644         data.field = bodytext
645         locationData = 1
646
647         stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" class="csc-mailform">  | </table>
648         stdWrap {
649                 editIcons = tt_content: bodytext, pages, subheader
650                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.form
651
652                 prefixComment = 2 | Mail form inserted:
653         }
654 }
655
656
657 # ******************
658 # CType: search
659 # ******************
660 tt_content.search = COA
661 tt_content.search.10 = < lib.stdheader
662 # Result:
663 tt_content.search.20 = SEARCHRESULT
664 tt_content.search.20 {
665         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
666         languageField.tt_content = sys_language_uid
667         renderObj = COA
668         renderObj {
669
670                 10 = TEXT
671                 10.field = pages_title
672                 10.htmlSpecialChars = 1
673                 10.typolink {
674                         parameter.field = uid
675                         target = {$styles.content.searchresult.resultTarget}
676                         additionalParams.data = register:SWORD_PARAMS
677                         additionalParams.required = 1
678                         additionalParams.wrap = &no_cache=1
679                 }
680                 10.htmlSpecialChars = 1
681                 10.wrap = <h3 class="csc-searchResultHeader">|</h3>
682
683                 20 = COA
684                 20 {
685                         10 = TEXT
686                         10.field = tt_content_bodytext
687                         10.stripHtml = 1
688                         10.htmlSpecialChars = 1
689                 }
690                 20.stdWrap.crop = 200 | ...
691                 20.stdWrap.wrap = <p class="csc-searchResult">|</p>
692         }
693
694         layout = COA
695         layout {
696                 wrap = <table border="0" cellspacing="0" cellpadding="2" class="csc-searchResultInfo"><tr> | </tr></table> ###RESULT###
697
698                 10 = TEXT
699                 10.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.resultRange
700                 10.wrap = <td class="csc-searchResultRange"><p>|</p></td>
701
702                 20 = TEXT
703                 20.value = ###PREV###&nbsp;&nbsp;&nbsp;###NEXT###
704                 20.wrap = <td class="csc-searchResultPrevNext"><p>|</p></td>
705         }
706
707         noResultObj = COA
708         noResultObj {
709                 10 = TEXT
710                 10.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.emptySearch
711                 10.wrap = <h3 class="csc-noSearchResultMsg">|</h3>
712         }
713
714         next = TEXT
715         next.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.searchResultNext
716
717         prev = TEXT
718         prev.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.searchResultPrev
719
720         target = {$styles.content.searchresult.target}
721         range = 20
722
723         stdWrap.prefixComment = 2 | Search result:
724 }
725
726 # Form:
727 tt_content.search.30 < tt_content.mailform.20
728 tt_content.search.30 {
729         goodMess = {$styles.content.searchform.goodMess}
730         redirect >
731         recipient >
732         data >
733         dataArray {
734                 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.searchWord
735                 10.type = sword=input
736                 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.searchIn
737                 20.type = scols=select
738                 20.valueArray {
739                         10.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.headersKeywords
740                         10.value = pages.title-subtitle-keywords-description:tt_content.header
741                         20.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.pageContent
742                         20.value = tt_content.header-bodytext-imagecaption
743                 }
744                 30.type = stype=hidden
745                 30.value = L0
746                 40.type = submit=submit
747                 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.php:search.searchButton
748         }
749         type.field = pages
750         type.listNum = 0
751         locationData = HTTP_POST_VARS
752         no_cache = 1
753
754         stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" class="csc-searchform">  | </table>
755         stdWrap {
756                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.search
757
758                 prefixComment = 2 | Search form inserted:
759         }
760 }
761
762
763 # ******************
764 # CType: login
765 # ******************
766 tt_content.login < tt_content.mailform
767 tt_content.login.10 = < lib.stdheader
768 tt_content.login.20 {
769         goodMess = {$styles.content.loginform.goodMess}
770         redirect >
771         recipient >
772         data >
773         dataArray {
774                 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:login.username
775                 10.type = *user=input
776                 20.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:login.password
777                 20.type = *pass=password
778                 30.type = logintype=hidden
779                 30.value = login
780                 40.type = submit=submit
781                 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.php:login.login
782         }
783         type.field = pages
784         type.listNum = 0
785         target = {$styles.content.loginform.target}
786         locationData = 0
787         hiddenFields.pid = TEXT
788         hiddenFields.pid {
789                 value = {$styles.content.loginform.pid}
790                 override.field = pages
791                 override.listNum = 1
792         }
793
794         stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" class="csc-loginform">  | </table>
795         stdWrap {
796                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.login
797
798                 prefixComment = 2 | Login/Logout form:
799         }
800 }
801 [loginUser = *]
802 tt_content.login.20 {
803         dataArray >
804         dataArray {
805                 10.label.data = LLL:EXT:css_styled_content/pi1/locallang.php:login.username
806                 10.label.wrap = |&nbsp;<!--###USERNAME###-->
807                 30.type = logintype=hidden
808                 30.value = logout
809                 40.type = submit=submit
810                 40.value.data = LLL:EXT:css_styled_content/pi1/locallang.php:login.logout
811         }
812 }
813 [global]
814
815
816 # ******************
817 # CType: splash
818 # ******************
819 # Deprecated element.
820 # Still here for backwards compliance with plugins using the "text box" type.
821 tt_content.splash = CASE
822 tt_content.splash.key.field = splash_layout
823 tt_content.splash.stdWrap {
824         prefixComment = 2 | Textbox inserted (Deprecated)
825 }
826 tt_content.splash.default = COA
827 tt_content.splash.default {
828         20 = CTABLE
829         20 {
830                 c.1 = < tt_content.text
831                 lm.1 = IMAGE
832                 lm.1.file {
833                         import = uploads/pics/
834                         import.field = image
835                         import.listNum = 0
836                         maxW.field = imagewidth
837                         maxW.ifEmpty = 200
838                 }
839                 cMargins = 30,0,0,0
840         }
841 }
842 tt_content.splash.1 < tt_content.splash.default
843 tt_content.splash.1.20.lm.1.file >
844 tt_content.splash.1.20.lm.1.file = GIFBUILDER
845 tt_content.splash.1.20.lm.1.file {
846         XY = [10.w]+10,[10.h]+10
847         backColor = {$content.splash.bgCol}
848         backColor.override.data = register:pageColor
849         format = jpg
850         5 = BOX
851         5.dimensions = 3,3,[10.w],[10.h]
852         5.color = #333333
853         7 = EFFECT
854         7.value = blur=99|blur=99|blur=99|blur=99|blur=99|blur=99|blur=99
855         10 = IMAGE
856         10.file {
857                 import = uploads/pics/
858                 import.field = image
859                 import.listNum = 0
860                 maxW.field = imagewidth
861                 maxW.ifEmpty = 200
862         }
863 }
864 // The image frames are not available unless TypoScript code from styles.content.imgFrames.x is provided manually:
865 tt_content.splash.2 < tt_content.splash.default
866 #tt_content.splash.2.20.lm.1.file.m < styles.content.imgFrames.1
867 tt_content.splash.3 < tt_content.splash.default
868 #tt_content.splash.3.20.lm.1.file.m < styles.content.imgFrames.2
869
870 // From plugin.postit1, if included:
871 tt_content.splash.20 = < plugin.postit1
872
873
874
875
876 # ****************
877 # CType: menu
878 # ****************
879 tt_content.menu = COA
880 tt_content.menu {
881         10 = < lib.stdheader
882
883         20 = CASE
884         20 {
885                 key.field = menu_type
886
887                 # "Menu of these pages"
888                 default = HMENU
889                 default.wrap = <div class="csc-menu csc-menu-def">|</div>
890                 default {
891                         special = list
892                         special.value.field = pages
893                         1 = TMENU
894                         1.NO.allWrap = <p>|</p>
895                         1.NO.stdWrap.htmlSpecialChars = 1
896                         1.target = {$content.pageFrameObj}
897                 }
898
899                 # "Menu of subpages to these pages"
900                 1 < .default
901                 1.special = directory
902                 1.wrap = <div class="csc-menu csc-menu-1">|</div>
903
904                 # "Sitemap"
905                 2 = HMENU
906                 2.wrap = <div class="csc-menu csc-menu-2">|</div>
907                 2 {
908                         1 = TMENU
909                         1.NO.allWrap = <p class="csc-sitemap csc-sitemap-level1">|</p>
910                         1.NO.stdWrap.htmlSpecialChars = 1
911                         1.target = {$content.pageFrameObj}
912                         1.expAll = 1
913
914                         2 < .1
915                         2.NO.allWrap = <p class="csc-sitemap csc-sitemap-level2">|</p>
916
917                         3 < .1
918                         3.NO.allWrap = <p class="csc-sitemap csc-sitemap-level3">|</p>
919
920                         4 < .1
921                         4.NO.allWrap = <p class="csc-sitemap csc-sitemap-level4">|</p>
922                         4.expAll = 0
923                 }
924
925                 # "Section index (pagecontent w/Index checked)"
926                 3 < styles.content.get
927                 3.wrap = <div class="csc-menu csc-menu-3">|</div>
928                 3.select.andWhere = sectionIndex!=0
929                 3.select.pidInList.override.field = pages
930                 3.renderObj = TEXT
931                 3.renderObj {
932                         fieldRequired = header
933                         trim=1
934                         field = header
935                         htmlSpecialChars = 1
936                         wrap = <p class="csc-section">|</p>
937                         typolink.parameter.field = pid
938                         typolink.section.field = uid
939                 }
940
941                 # "Menu of subpages to these pages (with abstract)"
942                 4 < .1
943                 4.wrap = <div class="csc-menu csc-menu-4">|</div>
944                 4.1.NO {
945                         allWrap = <p>|</p>
946                         after.required = 1
947                         after.data = field : abstract // field : description // field : subtitle
948                         after.htmlSpecialChars = 1
949                         after.wrap = </p><p class="csc-abstract">|
950                 }
951
952                 # "Recently updated pages"
953                 5 < .default
954                 5.wrap = <div class="csc-menu csc-menu-5">|</div>
955                 5.special = updated
956                 5.special {
957                         maxAge = 3600*24*7
958                         excludeNoSearchPages = 1
959                 }
960
961                 # "Related pages (based on keywords)"
962                 6 < .default
963                 6.wrap = <div class="csc-menu csc-menu-6">|</div>
964                 6.special = keywords
965                 6.special {
966                         excludeNoSearchPages = 1
967                 }
968
969                 # "Menu of subpages to these pages + sections"
970                 7 < .1
971                 7.wrap = <div class="csc-menu csc-menu-7">|</div>
972                 7.1.expAll = 1
973                 7.2 < .7.1
974                 7.2.sectionIndex = 1
975                 7.2.sectionIndex.type = header
976                 7.2.NO.allWrap = <p class="csc-section">|</p>
977         }
978
979         20.stdWrap {
980                 editIcons = tt_content: menu_type, pages
981                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.menuSitemap
982
983                 prefixComment = 2 | Menu/Sitemap element:
984         }
985 }
986
987
988 # ****************
989 # CType: shortcut
990 # ****************
991 # Should be a complete copy from the old static template "content (default)"
992 tt_content.shortcut = COA
993 tt_content.shortcut {
994         20 = CASE
995         20.key.field = layout
996         20.0= RECORDS
997         20.0 {
998                 source.field = records
999                 tables = {$content.shortcut.tables}
1000                 # THESE are OLD plugins. Modern plugins registers themselves automatically!
1001                 conf.tt_content = < tt_content
1002                 conf.tt_address = < tt_address
1003                 conf.tt_links = < tt_links
1004                 conf.tt_guest = < tt_guest
1005                 conf.tt_board = < tt_board
1006                 conf.tt_calender = < tt_calender
1007                 conf.tt_rating < tt_rating
1008                 conf.tt_products = < tt_products
1009                 conf.tt_news = < tt_news
1010                 conf.tt_poll = < plugin.tt_poll
1011         }
1012         20.1= RECORDS
1013         20.1 {
1014                 source.field = records
1015                 tables = {$content.shortcut.tables}
1016                 conf.tt_poll = < plugin.tt_poll
1017                 conf.tt_poll.code = RESULT,SUBMITTEDVOTE
1018         }
1019
1020         20.stdWrap {
1021                 editIcons = tt_content: records
1022                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.recordList
1023
1024                 prefixComment = 2 | Inclusion of other records (by reference):
1025         }
1026 }
1027
1028
1029 # ****************
1030 # CType: list
1031 # ****************
1032 # Should be a complete copy from the old static template "content (default)" (except "lib.stdheader")
1033 tt_content.list = COA
1034 tt_content.list {
1035         10 = < lib.stdheader
1036
1037         20 = CASE
1038         20.key.field = list_type
1039         20 {
1040                 # LIST element references (NOT copy of objects!)
1041                 # THESE are OLD plugins. Modern plugins registers themselves automatically!
1042                 3 = CASE
1043                 3.key.field = layout
1044                 3.0 = < plugin.tt_guest
1045
1046                 4 = CASE
1047                 4.key.field = layout
1048                 4.0 = < plugin.tt_board_list
1049                 4.1 = < plugin.tt_board_tree
1050
1051                 2 = CASE
1052                 2.key.field = layout
1053                 2.0 = < plugin.tt_board_tree
1054
1055                 5 = CASE
1056                 5.key.field = layout
1057                 5.0 = < plugin.tt_products
1058
1059                 7 = CASE
1060                 7.key.field = layout
1061                 7.0 = < plugin.tt_calender
1062
1063                 8 = CASE
1064                 8.key.field = layout
1065                 8.0 = < plugin.tt_rating
1066
1067                 9 = CASE
1068                 9.key.field = layout
1069                 9.0 = < plugin.tt_news
1070
1071                 11 = CASE
1072                 11.key.field = layout
1073                 11.0 = < plugin.tipafriend
1074
1075                 20 = CASE
1076                 20.key.field = layout
1077                 20.0 = < plugin.feadmin.fe_users
1078
1079                 21 = CASE
1080                 21.key.field = layout
1081                 21.0 = < plugin.feadmin.dmailsubscription
1082         }
1083
1084         20.stdWrap {
1085                 editIcons = tt_content: list_type, layout, select_key, pages [recursive]
1086                 editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.plugin
1087
1088                 prefixComment = 2 | Plugin inserted:
1089         }
1090 }
1091
1092
1093 # ****************
1094 # CType: script
1095 # ****************
1096 # 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.
1097 tt_content.script = TEXT
1098 tt_content.script {
1099         value =
1100
1101         prefixComment = 2 | Script element (Deprecated)
1102 }
1103
1104
1105 # ****************
1106 # CType: div
1107 # ****************
1108 tt_content.div = TEXT
1109 tt_content.div {
1110         value =
1111         prefixComment = 2 | Div element
1112 }
1113
1114
1115 # ****************
1116 # CType: html
1117 # ****************
1118 # This truely IS a content object, launched from inside the PHP class of course.
1119 # Should be a complete copy from the old static template "content (default)"
1120 tt_content.html = TEXT
1121 tt_content.html {
1122         field = bodytext
1123
1124         editIcons = tt_content: pages
1125         editIcons.iconTitle.data = LLL:EXT:css_styled_content/pi1/locallang.php:eIcon.html
1126
1127         prefixComment = 2 | Raw HTML content:
1128 }
1129
1130
1131 # ****************
1132 # Default error msg:
1133 # ****************
1134 tt_content.default = TEXT
1135 tt_content.default {
1136         field = CType
1137         wrap = <p style="background-color: yellow;"><b>ERROR:</b> Content Element type "|" has no rendering definition!</p>
1138
1139         prefixComment = 2 | Unknown element message:
1140 }
1141
1142
1143 # *********************************************************************
1144 # ACCESSIBILTY MODE
1145 # *********************************************************************
1146
1147 # Match TYPO3 3.9.0 and later
1148 [compatVersion = 3.9.0]
1149
1150 # switch off <p>-Tags in table cells
1151 tt_content.table.20.innerStdWrap.wrap = |
1152
1153 # change mailform to accesssible mode
1154 tt_content.mailform.20 {
1155         accessibility = 1
1156         noWrapAttr=1
1157         formName = mailform
1158         dontMd5FieldNames = 1
1159         REQ = 1
1160         layout = <div class="csc-mailform-field">###LABEL### ###FIELD###</div>
1161         COMMENT.layout = <div class="csc-mailform-label">###LABEL###</div>
1162         RADIO.layout = <div class="csc-mailform-field">###LABEL### <span class="csc-mailform-radio">###FIELD###</span></div>
1163         LABEL.layout = <div class="csc-mailform-field">###LABEL### <span class="csc-mailform-label">###FIELD###</span></div>
1164         labelWrap.wrap = |
1165         commentWrap.wrap = |
1166         radioWrap.wrap = |<br />
1167         REQ.labelWrap.wrap = |
1168         stdWrap.wrap = <fieldset class="csc-mailform"> | </fieldset>
1169         params.radio = class="csc-mailform-radio"
1170         params.check = class="csc-mailform-check"
1171         params.submit = class="csc-mailform-submit"
1172 }
1173
1174 # accessible menu
1175 tt_content.menu.20 {
1176         # "Menu of these pages"
1177         default.wrap = <ul class="csc-menu csc-menu-def">|</ul>
1178         default.1.NO.allWrap >
1179         default.1.NO.wrapItemAndSub = <li>|</li>
1180         default.1.NO.ATagTitle.field = description // title
1181
1182         # "Menu of subpages to these pages"
1183         1.wrap = <ul class="csc-menu csc-menu-1">|</ul>
1184         1.1.NO.allWrap >
1185         1.1.NO.wrapItemAndSub = <li>|</li>
1186
1187         # "Sitemap - liststyle"
1188         2 >
1189         2 = HMENU
1190         2 {
1191                 wrap = <div class="csc-sitemap">|</div>
1192                 1 = TMENU
1193                 1 {
1194                         noBlur=1
1195                         expAll=1
1196                         wrap = <ul>|</ul>
1197                         NO {
1198                                 stdWrap.htmlSpecialChars = 1
1199                                 wrapItemAndSub = <li>|</li>
1200                                 ATagTitle.field = description // title
1201                         }
1202                 }
1203                 2<.1
1204                 3<.1
1205                 4<.1
1206                 5<.1
1207                 6<.1
1208                 7<.1
1209         }
1210
1211         # "Section index (pagecontent w/Index checked - liststyle)"
1212         3.wrap = <ul class="csc-menu csc-menu-3">|</ul>
1213         3.renderObj.noBlur = 1
1214         3.renderObj.wrap = <li class="csc-section">|</li>
1215
1216         # "Menu of subpages to these pages (with abstract)"
1217         4.wrap = <dl class="csc-menu csc-menu-4">|</dl>
1218         4.1.NO {
1219                 allWrap >
1220                 linkWrap = <dt>|</dt>
1221                 after.wrap = <dd>|</dd>
1222                 ATagTitle.field = description // title
1223         }
1224
1225         # "Recently updated pages"
1226         5.wrap = <ul class="csc-menu csc-menu-5">|</ul>
1227         5.1.NO.allWrap >
1228         5.1.NO.wrapItemAndSub = <li>|</li>
1229
1230         # "Related pages (based on keywords)"
1231         6.wrap = <ul class="csc-menu csc-menu-6">|</ul>
1232         6.1.NO.allWrap >
1233         6.1.NO.wrapItemAndSub = <li>|</li>
1234
1235         # "Menu of subpages to these pages + sections - liststyle"
1236         7.wrap = <ul class="csc-menu csc-menu-7">|</ul>
1237         7.1.NO.allWrap >
1238         7.1.NO.wrapItemAndSub = <li>|</li>
1239         7.2.wrap = <ul>|</ul>
1240         7.2.NO.allWrap >
1241         7.2.NO.wrapItemAndSub = <li class="csc-section">|</li>
1242         7.2.NO.ATagTitle.field = description // title
1243 }
1244
1245 # cObject: Image
1246
1247 tt_content.image.20 = USER
1248 tt_content.image.20 {
1249         userFunc = tx_cssstyledcontent_pi1->render_textpic
1250
1251         1 {
1252                 params >
1253                 imageLinkWrap {
1254                         bodyTag = <body style="margin:0; background:#fff;">
1255                         JSwindow.expand =
1256                 }
1257         }
1258
1259         caption.1.wrapAlign >
1260         caption.1.fontTag >
1261
1262         captionAlign.field = imagecaption_position
1263
1264         borderSpace = {$styles.content.imgtext.borderSpace}
1265         separateRows = {$styles.content.imgtext.separateRows}
1266         addClasses =
1267         addClassesImage =
1268         addClassesImage.ifEmpty = csc-textpic-firstcol csc-textpic-lastcol
1269         addClassesImage.override = csc-textpic-firstcol |*| |*| csc-textpic-lastcol
1270         addClassesImage.override.if {
1271                 isGreaterThan.field = imagecols
1272                 value = 1
1273         }
1274
1275         #
1276         imageStdWrap.dataWrap = <div class="csc-textpic-imagewrap" style="width:{register:totalwidth}px;"> | </div>
1277         imageStdWrapNoWidth.wrap = <div class="csc-textpic-imagewrap"> | </div>
1278
1279         # if noRows is set, wrap around each column:
1280         imageColumnStdWrap.dataWrap = <div class="csc-textpic-imagecolumn" style="width:{register:columnwidth}px;"> | </div>
1281
1282         layout = CASE
1283         layout {
1284                 key.field = imageorient
1285                 # above-center
1286                 default = TEXT
1287                 default.value = <div class="csc-textpic csc-textpic-center csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div>
1288                 # above-right
1289                 1 = TEXT
1290                 1.value = <div class="csc-textpic csc-textpic-right csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div>
1291                 # above-left
1292                 2 = TEXT
1293                 2.value = <div class="csc-textpic csc-textpic-left csc-textpic-above###CLASSES###">###IMAGES######TEXT###</div><div class="csc-textpic-clear"><!-- --></div>
1294                 # below-center
1295                 8 = TEXT
1296                 8.value = <div class="csc-textpic csc-textpic-center csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div>
1297                 # below-right
1298                 9 = TEXT
1299                 9.value = <div class="csc-textpic csc-textpic-right csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div>
1300                 # below-left
1301                 10 = TEXT
1302                 10.value = <div class="csc-textpic csc-textpic-left csc-textpic-below###CLASSES###">###TEXT######IMAGES###</div><div class="csc-textpic-clear"><!-- --></div>
1303                 # intext-right
1304                 17 = TEXT
1305                 17.value = <div class="csc-textpic csc-textpic-intext-right###CLASSES###">###IMAGES######TEXT###</div>
1306                 # intext-left
1307                 18 = TEXT
1308                 18.value = <div class="csc-textpic csc-textpic-intext-left###CLASSES###">###IMAGES######TEXT###</div>
1309                 # intext-right-nowrap
1310                 25 = TEXT
1311                 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>
1312                 25.insertData = 1
1313                 # intext-left-nowrap
1314                 26 = TEXT
1315                 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>
1316                 26.insertData = 1
1317         }
1318
1319         rendering {
1320                 dl {
1321                         imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"> | </div>
1322                         noRowsStdWrap.wrap =
1323                         oneImageStdWrap.dataWrap = <dl class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </dl>
1324                         imgTagStdWrap.wrap = <dt> | </dt>
1325                         editIconsStdWrap.wrap = <dd> | </dd>
1326                         caption.wrap = <dd class="csc-textpic-caption"> | </dd>
1327                 }
1328                 ul {
1329                         imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"><ul> | </ul></div>
1330                         noRowsStdWrap.wrap = <ul> | </ul>
1331                         oneImageStdWrap.dataWrap = <li class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </li>
1332                         imgTagStdWrap.wrap =
1333                         editIconsStdWrap.wrap = <div> | </div>
1334                         caption.wrap = <div class="csc-textpic-caption"> | </div>
1335                 }
1336                 div {
1337                         imageRowStdWrap.dataWrap = <div class="csc-textpic-imagerow" style="width:{register:rowwidth}px;"> | </div>
1338                         noRowsStdWrap.wrap =
1339                         oneImageStdWrap.dataWrap = <div class="csc-textpic-image###CLASSES###" style="width:{register:imagespace}px;"> | </div>
1340                         imgTagStdWrap.wrap = <div> | </div>
1341                         editIconsStdWrap.wrap = <div> | </div>
1342                         caption.wrap = <div class="csc-textpic-caption"> | </div>
1343                 }
1344         }
1345         renderMethod = dl
1346 }
1347
1348 # cObject: Text with image
1349
1350 tt_content.textpic.20 =< tt_content.image.20
1351 tt_content.textpic.20 {
1352         text.10 = COA
1353         text.10 {
1354                 if.value = 24
1355                 if.isGreaterThan.field = imageorient
1356                 10 = < lib.stdheader
1357                 10.stdWrap.dataWrap = <div class="csc-textpicHeader csc-textpicHeader-{field:imageorient}">|</div>
1358         }
1359         text.20 = < tt_content.text.20
1360         text.wrap = <div class="csc-textpic-text"> | </div>
1361 }
1362
1363
1364 plugin.tx_cssstyledcontent._CSS_DEFAULT_STYLE (
1365         /* Captions */
1366         DIV.csc-textpic-caption-c .csc-textpic-caption { text-align: center; }
1367         DIV.csc-textpic-caption-r .csc-textpic-caption { text-align: right; }
1368         DIV.csc-textpic-caption-l .csc-textpic-caption { text-align: left; }
1369
1370         /* Needed for noRows setting */
1371         DIV.csc-textpic DIV.csc-textpic-imagecolumn { float: left; display: inline; }
1372
1373         /* Border just around the image */
1374         {$styles.content.imgtext.borderSelector} {
1375                 border: {$styles.content.imgtext.borderThick}px solid {$styles.content.imgtext.borderColor};
1376                 padding: {$styles.content.imgtext.borderSpace}px {$styles.content.imgtext.borderSpace}px;
1377         }
1378
1379         DIV.csc-textpic-imagewrap { padding: 0; }
1380
1381         DIV.csc-textpic IMG { border: none; }
1382
1383         /* DIV: This will place the images side by side */
1384         DIV.csc-textpic DIV.csc-textpic-imagewrap DIV.csc-textpic-image { float: left; }
1385
1386         /* UL: This will place the images side by side */
1387         DIV.csc-textpic DIV.csc-textpic-imagewrap UL { list-style: none; margin: 0; padding: 0; }
1388         DIV.csc-textpic DIV.csc-textpic-imagewrap UL LI { float: left; margin: 0; padding: 0; }
1389
1390         /* DL: This will place the images side by side */
1391         DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image { float: left; }
1392         DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DT { float: none; }
1393         DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DD { float: none; }
1394         DIV.csc-textpic DIV.csc-textpic-imagewrap DL.csc-textpic-image DD IMG { border: none; } /* FE-Editing Icons */
1395         DL.csc-textpic-image { margin: 0; }
1396         DL.csc-textpic-image DT { margin: 0; display: inline; }
1397         DL.csc-textpic-image DD { margin: 0; }
1398
1399         /* Clearer */
1400         DIV.csc-textpic-clear { clear: both; }
1401
1402         /* Margins around images: */
1403
1404         /* Pictures on left, add margin on right */
1405         DIV.csc-textpic-left DIV.csc-textpic-imagewrap .csc-textpic-image,
1406         DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap .csc-textpic-image,
1407         DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap .csc-textpic-image {
1408                 display: inline; /* IE fix for double-margin bug */
1409                 margin-right: {$styles.content.imgtext.colSpace}px;
1410         }
1411
1412         /* Pictures on right, add margin on left */
1413         DIV.csc-textpic-right DIV.csc-textpic-imagewrap .csc-textpic-image,
1414         DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap .csc-textpic-image,
1415         DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap .csc-textpic-image {
1416                 display: inline; /* IE fix for double-margin bug */
1417                 margin-left: {$styles.content.imgtext.colSpace}px;
1418         }
1419
1420         /* Pictures centered, add margin on left */
1421         DIV.csc-textpic-center DIV.csc-textpic-imagewrap .csc-textpic-image {
1422                 display: inline; /* IE fix for double-margin bug */
1423                 margin-left: {$styles.content.imgtext.colSpace}px;
1424         }
1425         DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image .csc-textpic-caption { margin: 0; }
1426         DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image IMG { margin: 0; }
1427
1428         /* Space below each image (also in-between rows) */
1429         DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-image { margin-bottom: 5px; }
1430         DIV.csc-textpic-equalheight DIV.csc-textpic-imagerow { margin-bottom: 5px; display: block; }
1431         DIV.csc-textpic DIV.csc-textpic-imagerow { clear: both; }
1432
1433         /* No margins around the whole image-block */
1434         DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-firstcol { margin-left: 0px !important; }
1435         DIV.csc-textpic DIV.csc-textpic-imagewrap .csc-textpic-lastcol { margin-right: 0px !important; }
1436
1437         /* Add margin from image-block to text (in case of "Text w/ images") */
1438         DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap,
1439         DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap {
1440                 margin-right: {$styles.content.imgtext.textMargin}px !important;
1441         }
1442         DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap,
1443         DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap {
1444                 margin-left: {$styles.content.imgtext.textMargin}px !important;
1445         }
1446
1447         /* Positioning of images: */
1448
1449         /* Above */
1450         DIV.csc-textpic-above DIV.csc-textpic-text { clear: both; }
1451
1452         /* Center (above or below) */
1453         DIV.csc-textpic-center { text-align: center; /* IE-hack */ }
1454         DIV.csc-textpic-center DIV.csc-textpic-imagewrap { margin: 0 auto; }
1455         DIV.csc-textpic-center DIV.csc-textpic-imagewrap .csc-textpic-image { text-align: left; /* Remove IE-hack */ }
1456         DIV.csc-textpic-center DIV.csc-textpic-text { text-align: left; /* Remove IE-hack */ }
1457
1458         /* Right (above or below) */
1459         DIV.csc-textpic-right DIV.csc-textpic-imagewrap { float: right; }
1460         DIV.csc-textpic-right DIV.csc-textpic-text { clear: right; }
1461
1462         /* Left (above or below) */
1463         DIV.csc-textpic-left DIV.csc-textpic-imagewrap { float: left; }
1464         DIV.csc-textpic-left DIV.csc-textpic-text { clear: left; }
1465
1466         /* Left (in text) */
1467         DIV.csc-textpic-intext-left DIV.csc-textpic-imagewrap { float: left; }
1468
1469         /* Right (in text) */
1470         DIV.csc-textpic-intext-right DIV.csc-textpic-imagewrap { float: right; }
1471
1472         /* Right (in text, no wrap around) */
1473         DIV.csc-textpic-intext-right-nowrap DIV.csc-textpic-imagewrap { float: right; clear: both; }
1474         /* Hide from IE5-mac. Only IE-win sees this. \*/
1475         * html DIV.csc-textpic-intext-right-nowrap .csc-textpic-text { height: 1%; }
1476         /* End hide from IE5/mac */
1477
1478         /* Left (in text, no wrap around) */
1479         DIV.csc-textpic-intext-left-nowrap DIV.csc-textpic-imagewrap { float: left; clear: both; }
1480         /* Hide from IE5-mac. Only IE-win sees this. \*/
1481         * html DIV.csc-textpic-intext-left-nowrap .csc-textpic-text { height: 1%; }
1482         /* End hide from IE5/mac */
1483 )
1484
1485 [END]
1486
1487
1488 # TYPO3 CVS ID: $Id$