[!!!][TASK] Gifbuilder: Always use full filename of original file as prefix
[Packages/TYPO3.CMS.git] / typo3 / sysext / t3editor / res / tsref / tsref.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <tsRef>
3 <type id="cObj"/>
4 <type id="array"/>
5 <type id="int"/>
6 <type id="intList"/>
7 <type id="double"/>
8 <type id="boolean"/>
9 <type id="string"/>
10 <type id="ADMPANEL"/>
11 <type id="ARR_languages_strings" name="ARR_languages_strings">
12 <property name="default" type="string"/>
13 <property name="en" type="string"/>
14 <property name="dk" type="string"/>
15 <property name="de" type="string"/>
16 <property name="no" type="string"/>
17 <property name="it" type="string"/>
18 <property name="fr" type="string"/>
19 <property name="nl" type="string"/>
20 <property name="cz" type="string"/>
21 <property name="pl" type="string"/>
22 <property name="si" type="string"/>
23 <property name="fi" type="string"/>
24 <property name="tr" type="string"/>
25 <property name="se" type="string"/>
26 <property name="pt" type="string"/>
27 <property name="ru" type="string"/>
28 <property name="ro" type="string"/>
29 <property name="ch" type="string"/>
30 <property name="sk" type="string"/>
31 <property name="lt" type="string"/>
32 <property name="is" type="string"/>
33 <property name="hr" type="string"/>
34 <property name="hu" type="string"/>
35 <property name="gl" type="string"/>
36 <property name="th" type="string"/>
37 <property name="gr" type="string"/>
38 <property name="hk" type="string"/>
39 <property name="eu" type="string"/>
40 <property name="bg" type="string"/>
41 <property name="br" type="string"/>
42 <property name="et" type="string"/>
43 <property name="ar" type="string"/>
44 <property name="he" type="string"/>
45 <property name="ua" type="string"/>
46 <property name="lv" type="string"/>
47 <property name="jp" type="string"/>
48 <property name="vn" type="string"/>
49 <property name="ca" type="string"/>
50 <property name="ba" type="string"/>
51 <property name="kr" type="string"/>
52 <property name="eo" type="string"/>
53 <property name="my" type="string"/>
54 <property name="hi" type="string"/>
55 </type>
56 <type id="CARRAY" extends="stdWrap" name="CARRAY">
57 <property name="1" type="cObj">
58 <description><![CDATA[This is a numerical "array" of content-objects (cObjects). The order by which you specific the objects is not important as the array will be sorted before it's parsed!
59
60 ]]></description>
61 </property>
62 <property name="2" type="cObj">
63 <description><![CDATA[This is a numerical "array" of content-objects (cObjects). The order by which you specific the objects is not important as the array will be sorted before it's parsed!
64
65 ]]></description>
66 </property>
67 <property name="3" type="cObj">
68 <description><![CDATA[This is a numerical "array" of content-objects (cObjects). The order by which you specific the objects is not important as the array will be sorted before it's parsed!
69
70 ]]></description>
71 </property>
72 <property name="4" type="cObj">
73 <description><![CDATA[This is a numerical "array" of content-objects (cObjects). The order by which you specific the objects is not important as the array will be sorted before it's parsed!
74
75 ]]></description>
76 </property>
77 </type>
78 <type id="CARRAY+TDParams" extends="CARRAY" name="CARRAY+TDParams">
79 <property name="TDParams" type="string">
80 <description><![CDATA[<TD>-params
81 NOTE: This applies ONLY if "CARRAY +TDParams" is set to be data type
82 This property is used only in some cases where CARRAY is used. Please look out for a note about that in the various cases.
83 ]]></description>
84 <default><![CDATA[
85 ]]></default>
86 </property>
87 </type>
88 <type id="CASE" extends="cObjArray" name="CASE">
89 <property name="default" type="cObj">
90 <description><![CDATA[The default object, if not defined, nothing is returned in the default case.
91 ]]></description>
92 </property>
93 <property name="if" type="if">
94 <description><![CDATA[if "if" returns false nothing is returned
95
96 ]]></description>
97 </property>
98 <property name="key" type="stdWrap">
99 <description><![CDATA[If the value of this key is defined, that object will be returned, otherwise the default-object will be returned.
100 <pre>key = helloWorld
101 helloWorld = <a href="/index.php/TSref/TEXT" title="TSref/TEXT">TEXT</a>
102
103 helloWorld.value = this item will be returned
104 </pre>
105 ]]></description>
106 </property>
107 <property name="setCurrent" type="stdWrap">
108 <description><![CDATA[Sets the "current"-value.
109
110 ]]></description>
111 </property>
112 <property name="stdWrap" type="stdWrap">
113 <description><![CDATA[stdwrap properties, applied on the returned object.
114 ]]></description>
115 </property>
116 </type>
117 <type id="CLEARGIF" name="CLEARGIF">
118 <property name="height" type="stdWrap">
119 <description><![CDATA[<img>-data:height /stdWrap
120 ]]></description>
121 <default><![CDATA[1]]></default>
122 </property>
123 <property name="width" type="stdWrap">
124 <description><![CDATA[<img>-data:width /stdWrap
125 ]]></description>
126 <default><![CDATA[1]]></default>
127 </property>
128 <property name="wrap" type="stdWrap">
129 <description><![CDATA[wrap/stdWrap
130 ]]></description>
131 <default><![CDATA[ | <BR>]]></default>
132 </property>
133 </type>
134 <type id="cObjArray">
135 <property name="1" type="cObj">
136 <description><![CDATA[This is a numerical "array" of content-objects (cObjects).
137 ]]></description>
138 </property>
139 <property name="2" type="cObj">
140 <description><![CDATA[This is a numerical "array" of content-objects (cObjects).
141 ]]></description>
142 </property>
143 <property name="3" type="cObj">
144 <description><![CDATA[This is a numerical "array" of content-objects (cObjects).
145 ]]></description>
146 </property>
147 <property name="4" type="cObj">
148 <description><![CDATA[This is a numerical "array" of content-objects (cObjects).
149 ]]></description>
150 </property>
151 </type>
152 <type id="COBJ_ARRAY" extends="cObjArray">
153 <property name="if" type="if">
154 <description><![CDATA[if "if" returns false the COA is NOT rendered]]></description>
155 <default><![CDATA[
156 ]]></default>
157 </property>
158 <property name="stdWrap" type="stdWrap">
159 <description><![CDATA[
160 ]]></description>
161 <default><![CDATA[
162 ]]></default>
163 </property>
164 <property name="wrap" type="stdWrap">
165 <description><![CDATA[wrap/stdWrap
166 ]]></description>
167 <default><![CDATA[
168 ]]></default>
169 </property>
170 </type>
171 <type id="COA" extends="COBJ_ARRAY">
172 </type>
173 <type id="COA_INT" extends="COBJ_ARRAY">
174 <property name="includeLibs" type="stdWrap">
175 <description><![CDATA[list of resources/stdWrap
176 (This property is used only if the object is COA_INT!, See introduction.)
177 This is a comma-separated list of resources that are included as PHP-scripts (with include_once() function) if this script is included.
178 This is possible to do because any include-files will be known before the scripts are included.]]></description>
179 <default><![CDATA[
180 ]]></default>
181 </property>
182 </type>
183 <type id="COLUMNS">
184 <property name="TDparams" type="stdWrap">
185 <description><![CDATA[<TD>-params/stdWrap
186 ]]></description>
187 <default><![CDATA[valign=top]]></default>
188 </property>
189 <property name="1" type="cObj">
190 <description><![CDATA[This is the content-object for each column!!]]></description>
191 <default><![CDATA[
192 ]]></default>
193 </property>
194 <property name="2" type="cObj">
195 <description><![CDATA[This is the content-object for each column!!]]></description>
196 <default><![CDATA[
197 ]]></default>
198 </property>
199 <property name="3" type="cObj">
200 <description><![CDATA[This is the content-object for each column!!]]></description>
201 <default><![CDATA[
202 ]]></default>
203 </property>
204 <property name="4" type="cObj">
205 <description><![CDATA[This is the content-object for each column!!]]></description>
206 <default><![CDATA[
207 ]]></default>
208 </property>
209 <property name="after" type="cObj">
210 <description><![CDATA[This is a cObject placed after the columns-table!!]]></description>
211 <default><![CDATA[
212 ]]></default>
213 </property>
214 <property name="gapBgCol" type="stdWrap">
215 <description><![CDATA[HTML-color /stdWrap
216 background-color for the gap-tablecells]]></description>
217 <default><![CDATA[
218 ]]></default>
219 </property>
220 <property name="gapLineCol" type="stdWrap">
221 <description><![CDATA[HTML-color /stdWrap
222 Line color]]></description>
223 <default><![CDATA[black]]></default>
224 </property>
225 <property name="gapLineThickness" type="stdWrap">
226 <description><![CDATA[int /stdWrap
227 lineThickness of the dividerline in the gap between cells
228 0 = no line]]></description>
229 <default><![CDATA[
230 ]]></default>
231 </property>
232 <property name="gapWidth" type="stdWrap">
233 <description><![CDATA[int /stdWrap
234 Width of the gap between columns.
235 0 = no gap]]></description>
236 <default><![CDATA[
237 ]]></default>
238 </property>
239 <property name="if" type="if">
240 <description><![CDATA[if "if" returns false the columns are not rendered!]]></description>
241 <default><![CDATA[
242 ]]></default>
243 </property>
244 <property name="rows" type="stdWrap">
245 <description><![CDATA[int (Range: 2-20)/stdWrap
246 The number of rows  in the columns.]]></description>
247 <default><![CDATA[2]]></default>
248 </property>
249 <property name="stdWrap" type="stdWrap">
250 <description><![CDATA[
251 ]]></description>
252 <default><![CDATA[
253 ]]></default>
254 </property>
255 <property name="tableParams" type="stdWrap">
256 <description><![CDATA[<TABLE>-params/stdWrap
257 ]]></description>
258 <default><![CDATA[border=0 cellspacing=0 cellpadding=0]]></default>
259 </property>
260 <property name="totalWidth" type="stdWrap">
261 <description><![CDATA[int/stdWrap
262 The total-width of the columns+gaps]]></description>
263 <default><![CDATA[
264 ]]></default>
265 </property>
266 </type>
267 <type id="CONFIG">
268 <property name="ATagParams" type="string">
269 <description><![CDATA[<A>-params
270 Additional parameters to all links in TYPO3 (excluding menu-links)
271 ]]></description>
272 <default><![CDATA[
273 ]]></default>
274 </property>
275 <property name="MP_defaults" type="string">
276 <description><![CDATA[Allows you to set a list of page id numbers which will always have a certain "&MP=..." parameter added.
277
278 Syntax:
279 [id],[id],... : [MP-var] | [id],[id],... : [MP-var] | ...
280
281 Example:
282 config.MP_defaults = 36,37,48 : 2-207
283
284 This will by default add "&MP=2-207" to all links pointing to pages 36,37 and 48]]></description>
285 <default><![CDATA[
286 ]]></default>
287 </property>
288 <property name="MP_disableTypolinkClosestMPvalue" type="boolean">
289 <description><![CDATA[If set, the typolink function will not try to find the closest MP value for the id.]]></description>
290 <default><![CDATA[
291 ]]></default>
292 </property>
293 <property name="MP_mapRootPoints" type="string">
294 <description><![CDATA[list of PIDs/string
295 Defines a list of ID numbers from which the MP-vars are automatically calculated for the branch.
296 The result is used just like MP_defaults are used to find MP-vars if none has been specified prior to the call to \TYPO3\CMS\Core\TypoScript\TemplateService::linkData().
297 You can specify "root" as a special keyword in the list of IDs and that will create a map-tree for the whole site (but this may be VERY processing intensive if there are many pages!).
298 The order of IDs specified may have a significance; Any ID in a branch which is processed already (by a previous ID root point) will not be processed again.]]></description>
299 <default><![CDATA[
300 ]]></default>
301 </property>
302 <property name="USERNAME_substToken" type="string">
303 <description><![CDATA[The is the token used on the page, which should be substituted with the current username IF a front-end user is logged in! If no login, the substitution will not happen.]]></description>
304 <default><![CDATA[<!--###USERNAME###-->]]></default>
305 </property>
306 <property name="USERUID_substToken" type="string">
307 <description><![CDATA[The is the token used on the page, which should be substituted with the current users UID IF a front-end user is logged in! If no login, the substitution will not happen.
308 This value has no default value and only if you specify a value for this token will a substitution process take place.]]></description>
309 <default><![CDATA[
310 ]]></default>
311 </property>
312 <property name="absRefPrefix" type="string">
313 <description><![CDATA[If this value is set, then all relative links in TypoScript are prepended with this string. Used to convert relative paths to absolute paths.
314
315 Note: If you're working on a server where you have both internal and external access, you might to yourself a favour and set the absRefPrefix to the url and path of you site, eg. http://www.typo3.org/. If you do not, you risk to render pages to cache from the internal network and thereby prefix image-references and links with a non-accessible path from outside.]]></description>
316 <default><![CDATA[
317 ]]></default>
318 </property>
319 <property name="additionalHeaders" type="string">
320 <description><![CDATA[strings divided by "|"
321 This is additional headers. You separate each header by a vertical line "|".  Normally TYPO3 does not send any headers with the Header()-function in PHP.
322
323 Examples:
324 Content-type: text/vnd.wap.wml
325 (this will sent a content-header for a WAP-site)
326
327 Content-type: image/gif | Expires: Mon, 26 Jul 1997 05:00:00 GMT
328 (this will sent a content-header for a GIF-file and a Expires header)
329
330 Location: www.typo3.org
331 (This redirects the page to www.typo3.org)]]></description>
332 <default><![CDATA[
333 ]]></default>
334 </property>
335 <property name="admPanel" type="ADMPANEL">
336 <description><![CDATA[boolean / ADMPANEL properties
337 If set, the admin panel appears in the bottom of pages.
338
339 NOTE: In addition the panel must be enabled for the user as well, using the TSconfig for the user! See adminguide documentation.
340
341 SEE: Admin Panel section]]></description>
342 <default><![CDATA[
343 ]]></default>
344 </property>
345 <property name="baseURL" type="string">
346 <description><![CDATA[This writes the <base> tag in the header of the document. Set this to the value that is expected to be the URL, and append a "/" to the end of the string.
347
348 Example:
349 config.baseURL = http://typo3.org/sub_dir/]]></description>
350 <default><![CDATA[
351 ]]></default>
352 </property>
353 <property name="beLoginLinkIPList" type="string">
354 <description><![CDATA[[IP-number]
355 If set and REMOTE_ADDR matches one of the listed IP-numbers (Wild-card, *, allowed) then a link to the typo3/ login scrip with redirect pointing back to the page is shown.
356
357 NOTE: beLoginLinkIPList_login and/or beLoginLinkIPList_logout (see below) must be defined if the link should show up!]]></description>
358 <default><![CDATA[
359 ]]></default>
360 </property>
361 <property name="beLoginLinkIPList_login" type="string">
362 <description><![CDATA[HTML code wrapped with the login link, see 'beLoginLinkIPList'
363
364 Example:
365 <HR><B>LOGING</B>]]></description>
366 <default><![CDATA[
367 ]]></default>
368 </property>
369 <property name="beLoginLinkIPList_logout" type="string">
370 <description><![CDATA[HTML code wrapped with the logout link, see above]]></description>
371 <default><![CDATA[
372 ]]></default>
373 </property>
374 <property name="cache" type="array">
375 <description><![CDATA[The maximum cache lifetime of a page can not only be determined the start and stop times of content elements on the page itself, but also by arbitrary records on any other page. However, the page has to be configured so that TYPO3 knows, which records' start and stop times to include. Otherwise, the cache entry will be used although a start/stop date already passed by.
376
377 To include records of type <tablename> on page <pid> into the cache lifetime calculation of page <page-id>, add the following TypoScript:
378 config.cache.<page-id> = <tablename>:<pid>
379
380 Thus, if you want to include the fe_users records on page 2 in the cache lifetime calculation for page 10, add the following TypoScript:
381 config.cache.10 = fe_users:2
382
383 Multiple record sources can be added as comma-separated list, e.g.
384 config.cache.10 = fe_users:2,tt_news:11
385
386 In order to consider records for the cache lifetime of all pages, use the *all* keyword:
387 config.cache.all = fe_users:2]]></description>
388 <default><![CDATA[]]></default>
389 </property>
390 <property name="cache_clearAtMidnight" type="boolean">
391 <description><![CDATA[With this setting the cache always expires at midnight of the day, the page is scheduled to expire.]]></description>
392 <default><![CDATA[false]]></default>
393 </property>
394 <property name="cache_period" type="int">
395 <description><![CDATA[int, seconds
396 The number of second a page may remain in cache.
397 This value is overridden by the value set in the page-record (field="cache_timeout") if this value is greater than zero.]]></description>
398 <default><![CDATA[86400 (=24H)]]></default>
399 </property>
400 <property name="compensateFieldWidth" type="double">
401 <description><![CDATA[this floating point value will be used by the FORMS cObject to compensate the length of the formfields text and input.
402 Netscape renders formfields much longer than IE. If you want the two browsers to display the same size formfields, use a value of approx "0.6" for netscape-browsers.
403
404 Example:
405 [browser = netscape]
406   config.compensateFieldWidth = 0.6
407 [global]
408
409 This option may be overridden in the FORMS-cObject.]]></description>
410 <default><![CDATA[
411 ]]></default>
412 </property>
413 <property name="content_from_pid_allowOutsideDomain" type="boolean">
414 <description><![CDATA[Using the "Show content from this page instead" feature allows you to insert content from the current domain only. Setting this option will allow content included from anywhere in the page tree!]]></description>
415 <default><![CDATA[
416 ]]></default>
417 </property>
418 <property name="debug" type="boolean">
419 <description><![CDATA[If set any debug-information in the TypoScript code is output. Currently this applies only to the menu-objects]]></description>
420 <default><![CDATA[
421 ]]></default>
422 </property>
423 <property name="defaultGetVars" type="array">
424 <description><![CDATA[Allows to set default values for GET parameters. Default value is taken only if the GET parameter isn't defined. Array notation is done with dots, e.g.:
425
426 test[var1] will be written as text.var1
427
428 Example:
429
430 config.defaultgetVars {
431 test.var1.var2.p3 = 15
432 L = 3
433 }
434 ]]></description>
435 <default><![CDATA[
436 ]]></default>
437 </property>
438 <property name="disableAllHeaderCode" type="boolean">
439 <description><![CDATA[If this is set, none of the features of the PAGE-object is processed and the content of the page will be the result of the cObject array (1,2,3,4...) of the PAGE-object.  This means that the result of the cObject should include everything from the <HTML> .... to the </HTML> tag !!
440 Use this feature in templates supplying other content-types than HTML. That could be an image or a WAP-page!]]></description>
441 <default><![CDATA[false]]></default>
442 </property>
443 <property name="disableCharsetHeader" type="boolean">
444 <description><![CDATA[By default a header "content-type:text/html; charset..." is sent. This option will disable that.]]></description>
445 <default><![CDATA[
446 ]]></default>
447 </property>
448 <property name="disablePageExternalUrl" type="boolean">
449 <description><![CDATA[If set, pages with doktype "External Url" will not trigger jumpUrl in TSFE. This may help you to have external urls open inside you framesets.]]></description>
450 <default><![CDATA[
451 ]]></default>
452 </property>
453 <property name="disablePrefixComment" type="boolean">
454 <description><![CDATA[If set, the stdWrap property "prefixComment" will be disabled, thus preventing any revealing and spaceconsuming comments in the HTML source code.]]></description>
455 <default><![CDATA[
456 ]]></default>
457 </property>
458 <property name="disablePreviewNotification" type="boolean">
459 <description><![CDATA[Disables the "preview" notification box completely]]></description>
460 <default><![CDATA[
461 ]]></default>
462 </property>
463 <property name="doctype" type="string">
464 <description><![CDATA[If set, then a document type declaration (and an XML prologue) will be generated. The value can either be a complete doctype or one of the following keywords:
465
466 "xhtml_trans" for XHTML 1.0 Transitional doctype.
467 "xhtml_frames" for XHTML 1.0 Frameset doctype.
468 "xhtml_strict" for XHTML 1.0 Strict doctype.
469 "xhtml_basic" for XHTML basic doctype.
470 "xhtml_11" for XHTML 1.1 doctype.
471 "xhtml+rdf_10" for XHTML+RDFa 1.0 doctype.
472 "xhtml_2" for XHTML 2 doctype.
473 "html5" for HTML5
474 "none" for NO doctype at all.
475
476 Note that the keywords also change the way TYPO3 generates some of the XHTML tags to ensure valid XML. If you set doctype to a string, then you must also set config.xhtmlDoctype (see below).
477
478 See "config.htmlTag_setParams" and "config.htmlTag_langKey" for more details on the effect on the html tag.
479 ]]></description>
480 <default><![CDATA[Default is a DOCTYPE like this:
481 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
482 ]]></default>
483 </property>
484 <property name="doctypeSwitch" type="boolean">
485 <description><![CDATA[If set, the order of <?xml...> and <!DOCTYPE...> will be reversed. This is needed for MSIE to be standards compliant with XHTML.
486
487 Background:
488 By default TYPO3 outputs the XML/DOCTYPE in compliance with the standards of XHTML. However a browser like MSIE will still run in "quirks-mode" unless the <?xml> and <DOCTYPE> tags are ordered opposite. But this breaks CSS validation...
489 With this option designers can decide for themselves what they want then.
490
491 If you want to check the compatibility-mode of your webbrowser you can do so with a simple JavaScript that can be inserted on a TYPO3 page like this:
492
493 page.headerData.1 = TEXT
494 page.headerData.1.value = <script>alert(document.compatMode);</script>
495
496 If your browser has detected the DOCTYPE correctly it will report "CSS1Compat"
497 If you are not running in compliance mode you will get some other message. MSIE will report "BackCompat" for instance - this means it runs in quirks-mode, supporting all the old "browser-bugs".]]></description>
498 <default><![CDATA[
499 ]]></default>
500 </property>
501 <property name="enableContentLengthHeader" type="boolean">
502 <description><![CDATA[If set, a header "content-length: [bytes of content]" is sent.]]></description>
503 <default><![CDATA[
504 ]]></default>
505 </property>
506 <property name="extTarget" type="string">
507 <description><![CDATA[default external target. Used by typolink if no extTarget is set]]></description>
508 <default><![CDATA[_top]]></default>
509 </property>
510 <property name="fileTarget" type="string">
511 <description><![CDATA[Default file link target. Used by typolink if no fileTarget is set. ]]></description>
512 <default><![CDATA[
513 ]]></default>
514 </property>
515 <property name="forceTypeValue" type="int">
516 <description><![CDATA[Force the &type value of all TYPO3 generated links to a specific value (except if overruled by local forceTypeValue values).
517 Useful if you run a template with special content at - say &type=95 - but still wants to keep your targets neutral. Then you set your targets to blank and this value to the type value you wish.]]></description>
518 <default><![CDATA[
519 ]]></default>
520 </property>
521 <property name="frameReloadIfNotInFrameset" type="boolean">
522 <description><![CDATA[If set, then the current page will check if the page object name (eg. "page" or "frameset") exists as "parent.[name]" (eg. "parent.page") and if not the page will be reloaded in top frame. This secures that links from search engines to pages inside a frameset will load the frameset.
523 Works only with type-values different from zero.]]></description>
524 <default><![CDATA[
525 ]]></default>
526 </property>
527 <property name="ftu" type="boolean">
528 <description><![CDATA[If set, the "&ftu=...." GET-fallback identification is inserted.
529 "&ftu=[hash]" is always inserted in the links on the first page a user hits. If it turns out in the next hit that the user has cookies enabled, this variable is not set anymore as the cookies does the job. If no cookies is accepted the "ftu" remains set for all links on the site and thereby we can still track the user.
530
531 You should not set this feature if grabber-spiders like Teleport are going to grab your site!
532 You should not set this feature if you want search-engines to index your site.
533
534 You can also ignore this feature if you're certain, website users will use cookies.
535  "ftu" means fe_typo_user ("fe" is "frontend").]]></description>
536 <default><![CDATA[false]]></default>
537 </property>
538 <property name="headerComment " type="string">
539 <description><![CDATA[The content is added before the "TYPO3 Content Management Framework" comment in the <head> section of the page. Use this to insert a note like that "Programmed by My-Agency" ...]]></description>
540 <default><![CDATA[
541 ]]></default>
542 </property>
543 <property name="htmlTag_dir" type="string">
544 <description><![CDATA[Sets text direction for whole document (useful for display of Arabic, Hebrew pages).
545
546 Basically the value becomes the attribute value of "dir" for the <html> tag.
547
548 Values:
549 rtl = Right-To-Left (for Arabic / Hebrew)
550 ltr = Left-To-Right (Default for other languages)
551
552 Example:
553 config.htmlTag_dir = rtl]]></description>
554 <default><![CDATA[
555 ]]></default>
556 </property>
557 <property name="htmlTag_langKey" type="string">
558 <description><![CDATA[Allows you to set the language value for the attributes "xml:lang" and "lang" in the <html> tag (when using "config.doctype = xhtml*").
559
560 The values must follow the format specified in IETF RFC 3066
561
562 Example:
563 config.htmlTag_langKey = en-US]]></description>
564 <default><![CDATA[en]]></default>
565 </property>
566 <property name="htmlTag_setParams" type="string">
567 <description><![CDATA[Sets the attributes for the <html> tag on the page. If you set "config.doctype" to a keyword enabling XHTML then some attributes are already set. This property allows you to override any preset attributes with you own content if needed.
568
569 Special: If you set it to "none" then no attributes will be set at any event.
570
571 Example:
572 config.htmlTag_setParams =  xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"]]></description>
573 <default><![CDATA[
574 ]]></default>
575 </property>
576 <property name="includeLibrary" type="string">
577 <description><![CDATA[This includes a phpfile.]]></description>
578 <default><![CDATA[
579 ]]></default>
580 </property>
581 <property name="index_descrLgd" type="int">
582 <description><![CDATA[This indicates how many chars to preserve as description for an indexed page. This may be used in the search result display.]]></description>
583 <default><![CDATA[200]]></default>
584 </property>
585 <property name="index_enable" type="boolean">
586 <description><![CDATA[Enables cached pages to be indexed.]]></description>
587 <default><![CDATA[
588 ]]></default>
589 </property>
590 <property name="index_externals" type="boolean">
591 <description><![CDATA[If set, external media linked to on the pages is indexed as well.]]></description>
592 <default><![CDATA[
593 ]]></default>
594 </property>
595 <property name="inlineStyle2TempFile" type="boolean">
596 <description><![CDATA[If set, the inline styles TYPO3 controls in the core are written to a file,  typo3temp/stylesheet_[hashstring].css, and the header will only contain the link to the stylesheet.
597 The file hash is based solely on the content of the styles.
598
599 Depends on the compatibility mode (see Tools>Install>Update wizard):
600 compatibility mode < 4.0:   0
601 compatibility mode >= 4.0:   1
602
603 Example:
604 config.inlineStyle2TempFile = 1]]></description>
605 <default><![CDATA[
606 ]]></default>
607 </property>
608 <property name="insertDmailerBoundaries" type="boolean">
609 <description><![CDATA[If set, boundary marks will be set around all records inserted on the page with cObjects CONTENT and RECORD. They are inserted as HTML-comments and do no harm.
610 Used by the Direct Mail module in TYPO3 to segmentize a page by categories.]]></description>
611 <default><![CDATA[
612 ]]></default>
613 </property>
614 <property name="intTarget" type="string">
615 <description><![CDATA[default internal target. Used by typolink if no target is set]]></description>
616 <default><![CDATA[
617 ]]></default>
618 </property>
619 <property name="jumpurl_enable" type="boolean">
620 <description><![CDATA[Jumpurl is a concept where external links are redirected from the index_ts.php script, which first logs which url it was. This logging of external links is only interesting if you use the internal stat-table in TYPO3.]]></description>
621 <default><![CDATA[0]]></default>
622 </property>
623 <property name="jumpurl_mailto_disable" type="boolean">
624 <description><![CDATA[Disables the use of jumpUrl when linking to email-adresses.]]></description>
625 <default><![CDATA[0]]></default>
626 </property>
627 <property name="language" type="string">
628 <description><![CDATA[Language key. See stdWrap.lang for more information.
629 Select between:
630 English  (default) = [empty]
631 Danish = dk
632 German = de
633 Norwegian = no
634 Italian = it
635 etc...
636
637 Value must correspond with the key used for backend system language if there is one. Look at the translation page on TYPO3.org for the official 2-byte key for a given language. Notice that selecting the official key is important if you want labels in the correct language from "locallang" files.
638 If the language you need is not yet a system language in TYPO3 you can use an artificial string of your choice and provide values for it via the TypoScript template where the property "_LOCAL_LANG" for most plugins will provide a way to override/add values for labels. The keys to use must be looked up in the locallang-file used by the plugin of course.]]></description>
639 <default><![CDATA[
640 ]]></default>
641 </property>
642 <property name="language_alt" type="string">
643 <description><![CDATA[If "config.language" (above) is used, this can be set to another language key which will be used for labels if a label was not found for the main language. For instance a brazil portuguese website might specify "pt" as alternative language which means the portuguese label will be shown if none was available in the main language, brazil portuguese. This feature makes sense if one language is incompletely translated and close to another language.]]></description>
644 <default><![CDATA[
645 ]]></default>
646 </property>
647 <property name="linkVars" type="string">
648 <description><![CDATA[HTTP_GET_VARS, which should be passed on with links in TYPO3. This is compiled into a string stored in $GLOBALS["TSFE"]->linkVars
649
650 The values are rawurlencoded in PHP.
651
652 You can specify a range of valid values by appending a () after each value. If this range does not match, the variable won't be appended to links. This is very important to prevent that the cache system gets flooded with forged values.
653
654 The range may containing one of these values:
655 [a]-[b] - A range of allowed integer valuesint - Only integer values are allowed[a]|[b]|[c] - A list of allowed strings (whitespaces will be removed)/[regex]/ - Match against a regular expression (PCRE style)
656
657 Example:
658 config.linkVars = L, print
659 This will add "&L=[L-value]&print=[print-value]" to all links in TYPO3.
660
661 config.linkVars = L(1-3), print
662 Same as above, but "&L=[L-value]" will only be added if the current value is 1, 2 or 3.
663 ]]></description>
664 <default><![CDATA[
665 ]]></default>
666 </property>
667 <property name="locale_all" type="string">
668 <description><![CDATA[PHP: setlocale("LC_ALL", [value]);
669 value-examples: deutsch, de_DE, danish, portuguese, spanish, french, norwegian, italian. See www.php.net for other value. Also on linux, look at /usr/share/locale/
670
671 TSFE->localeCharset is intelligently set to the assumed charset of the locale strings. This is used in stdWrap.strftime to convert locale strings to the renderCharset of the frontend.
672
673 Example:
674 This will render dates in danish made with stdWrap/strftime:
675 locale_all = danish
676 locale_all = da_DK]]></description>
677 <default><![CDATA[
678 ]]></default>
679 </property>
680 <property name="lockFilePath" type="string">
681 <description><![CDATA[This is used to lock paths to be "inside" this path.
682 Used by "filelist" in stdWrap]]></description>
683 <default><![CDATA[fileadmin/]]></default>
684 </property>
685 <property name="mainScript" type="string">
686 <description><![CDATA[This lets you specify an alternative "mainScript" which is the document that TYPO3 expects to be the default doc. This is used in form-tags and other places where TYPO3 needs to refer directly to the main-script of the application]]></description>
687 <default><![CDATA[index.php]]></default>
688 </property>
689 <property name="message_page_is_being_generated" type="string">
690 <description><![CDATA[Alternative HTML message that appears if a page is being generated.
691 Normally when a page is being generated a temporary copy is stored in the cache-table with an expire-time of 30 seconds.
692
693 It is possible to use some keywords that are replaced with the corresponding values. Possible keywords are: ###TITLE###, ###REQUEST_URI###]]></description>
694 <default><![CDATA[
695 ]]></default>
696 </property>
697 <property name="message_preview" type="string">
698 <description><![CDATA[Alternative message in HTML that appears when the preview function is active!]]></description>
699 <default><![CDATA[
700 ]]></default>
701 </property>
702 <property name="message_preview_workspace" type="string ">
703 <description><![CDATA[Alternative message in HTML that appears when the preview function is active in a draft workspace. You can use sprintf() placeholders for Workspace title (first) and number (second).
704
705 Examples:
706 config.message_preview_workspace = <div class="previewbox">Displaying workspace named "%s" (number %s)!</div>
707 config.message_preview_workspace = <div class="previewbox">Displaying workspace number %2$s named "%1$s"!</div>]]></description>
708 <default><![CDATA[
709 ]]></default>
710 </property>
711 <property name="metaCharset" type="string">
712 <description><![CDATA[Charset used for the output document. For example in the meta tag:
713 <meta http-equiv="Content-Type" content="text/html; charset=...>
714
715 Is used for a) HTML meta-tag, b) HTTP header (unless disabled with .disableCharsetHeader) and c) xhtml prologues (if available)
716
717 If renderCharset and metaCharset are different the output content is automatically converted to metaCharset before output and likewise are values posted back to the page converted from metaCharset to renderCharset for internal processing. This conversion takes time of course so there is another good reason to use the same charset for both.]]></description>
718 <default><![CDATA[value of ".renderCharset"]]></default>
719 </property>
720 <property name="moveJsFromHeaderToFooter" type="boolean">
721 <description><![CDATA[
722 If set, all Javascript (includes and inline) will be moved to the bottom of the HTML document, which is after content and before the closing body tag
723 ]]></description>
724 <default><![CDATA[
725 ]]></default>
726 </property>
727 <property name="namespaces" type="array">
728 <description><![CDATA[array of strings
729 This property enables you to add xml namespaces (xmlns) to the html tag. The configuration
730
731 namespaces.dc = http://purl.org/dc/elements/1.1/
732 namespaces.foaf = http://xmlns.com/foaf/0.1/
733
734 will result in a html tag like
735
736 <html xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:foaf="http://xmlns.com/foaf/0.1/">
737
738 This is especially useful if you want to add RDFa or microformats to your html.
739 ]]></description>
740 <default><![CDATA[
741 ]]></default>
742 </property>
743 <property name="noPageTitle" type="int">
744 <description><![CDATA[If you only want to have the sitename (from the template record) in your <title> tag, set this to 1. If the value is 2 then the <title> tag is not printed at all.
745 Please take note that this tag is required for XHTML compliant output, so you should only disable this tag if you generate it manually already.]]></description>
746 <default><![CDATA[0]]></default>
747 </property>
748 <property name="noScaleUp" type="boolean">
749 <description><![CDATA[Normally images are scaled to the size specified via TypoScript. This also forces small images to be scaled to a larger size. This is not always a good thing.
750 If this property is set, images are not allowed to be scaled up in size. This parameter clears the $this->mayScaleUp var of the class \TYPO3\CMS\Core\Imaging\GraphicalFunctions (often "gifbuilder").]]></description>
751 <default><![CDATA[
752 ]]></default>
753 </property>
754 <property name="no_cache" type="boolean">
755 <description><![CDATA[If this is set to true, the page will not be cached. If set to false, it's ignored. Other parameters may have set it to true of other reasons.]]></description>
756 <default><![CDATA[-]]></default>
757 </property>
758 <property name="pageGenScript" type="string">
759 <description><![CDATA[Alternative page generation script for applications using index_ts.php for initialization, caching, stating and so on. This script is included in the global scope of index_ts.php-script and thus you may include libraries here. Always use include_once for libraries.
760 Remember not to output anything from such an included script. All content must be set into $TSFE->content. Take a look at typo3/sysext/cms/tslib/pagegen.php
761
762 NOTE: This option is ignored if
763
764 $TYPO3_CONF_VARS["FE"]["noPHPscriptInclude"]=1;
765
766 is set in localconf.php.]]></description>
767 <default><![CDATA[typo3/sysext/cms/tslib/pagegen.php]]></default>
768 </property>
769 <property name="pageRendererTemplateFile" type="string">
770 <description><![CDATA[
771 Sets the template for page renderer class (\TYPO3\CMS\Core\Page\PageRenderer).
772
773 Example:
774
775 pageRendererTemplateFile = fileadmin/test_pagerender.html
776 ]]></description>
777 <default><![CDATA[
778 ]]></default>
779 </property>
780 <property name="pageTitleFirst" type="boolean">
781 <description><![CDATA[If set (and the page title is printed) then the page-title will be printed BEFORE the template title.]]></description>
782 <default><![CDATA[
783 ]]></default>
784 </property>
785 <property name="pageTitleSeparator" type="string">
786 <description><![CDATA[The signs which should be printed in the title tag between the website name and the page title.]]></description>
787 <default><![CDATA[:]]></default>
788 </property>
789 <property name="prefixLocalAnchors" type="string">
790 <description><![CDATA[If set to one of the keywords, the content will have all local anchors in links prefixed with the path of the script. Basically this means that <a href="#"> will be transformed to <a href="path/path/script?params#">. This procedure is necessary if the <base> tag is set in the script (eg. if "realurl" extension is used to produce Speaking URLs).
791
792 Keywords are the same as for "xhtml_cleaning", see above.]]></description>
793 <default><![CDATA[
794 ]]></default>
795 </property>
796 <property name="removeDefaultCss" type="boolean">
797 <description><![CDATA[Remove CSS generated by _CSS_DEFAULT_STYLE configuration of extensions.]]></description>
798 <default><![CDATA[false]]></default>
799 </property>
800 <property name="removePageCss" type="boolean">
801 <description><![CDATA[Remove CSS generated by _CSS_PAGE_STYLE configuration of extensions.]]></description>
802 <default><![CDATA[false]]></default>
803 </property>
804 <property name="removeDefaultJS" type="string">
805 <description><![CDATA[If set, the default JavaScript in the header will be removed.
806 The default JavaScript is the decryption function for email addresses.
807
808 Special case: if the value is "external" then the default JavaScript is written to a temporary file and included from that file. See "inlineStyle2TempFile" below.
809
810 Depends on the compatibility mode (see Tools>Install>Update wizard):
811 compatibility mode < 4.0:   0
812 compatibility mode >= 4.0:   1
813
814 Example:
815 config.removeDefaultJS = external
816 config.removeDefaultJS = 1]]></description>
817 <default><![CDATA[
818 ]]></default>
819 </property>
820 <property name="compressJs" type="boolean">
821 <description><![CDATA[Enabling this option together with $TYPO3_CONF_VARS['FE']['compressionLevel'] in the Install Tool delivers Frontend JavaScript files using GZIP compression.
822
823 This can significantly reduce file sizes of linked JavaScript files and thus decrease loading times.
824
825 Please not that this requires .htaccess to be adjusted, as otherwise the files will not be readable by the user agent. Please see the description of $TYPO3_CONF_VARS['FE']['compressionLevel'] in the Install Tool.
826
827 Example:
828
829 config.compressJs = 1
830 ]]></description>
831 <default><![CDATA[false]]></default>
832 </property>
833 <property name="compressCss" type="boolean">
834 <description><![CDATA[If set, CSS files will be minified and compressed.
835
836 Minification will remove all excess space. The more significant compression step (using Gzip compression) requires $TYPO3_CONF_VARS['FE']['compressionLevel'] to be enabled in the Install Tool together with the gzip-related compressionLevel options in .htaccess, as otherwise the files will not be readable by the user agent.
837
838 Example:
839
840 config.compressCss = 1]]></description>
841 <default><![CDATA[false]]></default>
842 </property>
843 <property name="concatenateJs" type="boolean">
844 <description><![CDATA[Setting config.concatenateJs merges Javascript files referenced in the Frontend together.
845
846 Example:
847
848 config.concatenateJs = 1
849
850 Note: TYPO3 comes with a built-in concatenation handler, but you can also register your own one using $GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler'].
851
852 Example:
853
854 $GLOBALS['TYPO3_CONF_VARS']['FE']['jsConcatenateHandler'] = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Classes/class.tx_myext_jsConcatenateHandler.php:tx_myext_jsConcatenateHandler->concatenateJs';]]></description>
855 <default><![CDATA[false]]></default>
856 </property>
857 <property name="concatenateCss" type="boolean">
858 <description><![CDATA[Setting config.concatenateCss merges Stylesheet files referenced in the Frontend together.
859
860 Example:
861
862 config.concatenateCss = 1
863
864 Note: TYPO3 comes with a built-in concatenation handler, but you can also register your own using $GLOBALS['TYPO3_CONF_VARS']['FE']['cssConcatenateHandler'].
865
866 Example:
867
868 $GLOBALS['TYPO3_CONF_VARS']['FE']['cssConcatenateHandler'] = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Classes/class.tx_myext_cssConcatenateHandler.php:tx_myext_cssConcatenateHandler->concatenateCss';]]></description>
869 <default><![CDATA[false]]></default>
870 </property>
871 <property name="renderCharset" type="string">
872 <description><![CDATA[Charset used for rendering internally of the page content. It is highly recommended that this value is the same as the charset of the content coming from the main data source (eg. the database). Thus you don't need to do any other conversion.
873 All strings from locallang files and locale strings are (and should be) converted to "renderCharset" during rendering.
874
875 If you need another output charset than the render charset, see "metaCharset" below.
876
877 ]]></description>
878 <default><![CDATA[UTF-8]]></default>
879 </property>
880 <property name="sendCacheHeaders" type="boolean">
881 <description><![CDATA[If set, TYPO3 will output cache-control headers to the client based mainly on  whether the page was cached internally. This feature allows client browsers and/or reverse proxies to take load of TYPO3 websites.
882
883 The conditions for allowing client caching are:
884 page was cachedNo *_INT or *_EXT objects were on the page (eg. USER_INT)No frontend user is logged inNo backend user is logged in
885
886 If these conditions are met, the headers sent are:
887 Last-Modified [SYS_LASTCHANGED of page id]Expires [expire time of page cache]Etag [md5 of content]Cache-Control: max-age: [seconds til expiretime]Pragma: public
888
889 In case caching is not allowed, these headers are sent to avoid client caching:
890 Cache-Control: private
891
892 Notice that enabling the browser caches means you have to consider how log files are written. Because when a page is cached on the client it will not invoke a request to the webserver, thus not writing the request to the log. There should be ways to circumvent these problems but they are outside the domain of TYPO3 in any case.
893
894 Tip: Enabling cache-control headers might confuse editors seeing old content served from the browser cache. "Shift-Reload" will bypass both browser- and reverse-proxy caches and even make TYPO3 regenerate the page. Teach them that trick!
895
896 Thanks to Ole Tange, www.forbrug.dk for co-authoring this feature.]]></description>
897 <default><![CDATA[
898 ]]></default>
899 </property>
900 <property name="sendCacheHeaders_onlyWhenLoginDeniedInBranch" type="boolean">
901 <description><![CDATA[If this is set, then cache-control headers allowing client caching is sent only if user-logins are disabled for the branch. This feature makes it easier to manage client caching on sites where you have a mixture of static pages and dynamic sections with user logins.
902
903 The background problem is this: In TYPO3 the same URL can show different content depending on whether a user is logged in or not. If a user is logged in, cache-headers will never allow client caching. But if the same URL was visited without a login prior to the login (allowing caching) the user will still see the page from cache when logged in (and so thinks he is not logged in anyway)! The only general way to prevent this is to have a different URL for pages when users are logged in (which the extension "realurl" can accomplish).
904
905 Another way to solve the problem is using this option in combination with disabling and enabling logins in various sections of the site. In the page records ("Advanced" page types) you can disable frontend user logins for branches of the page tree. Since many sites only needs the login in a certain branch of the page tree, disabling it in all other branches makes it much easier to use cache-headers in combination with logins; Cache-headers should simply be sent when logins are not allowed and never be send when logins are allowed! Then there will never be problems with logins and same-URLs.]]></description>
906 <default><![CDATA[
907 ]]></default>
908 </property>
909 <property name="setJS_mouseOver" type="boolean">
910 <description><![CDATA[If set, the over() and out() JavaScript functions are forced to be included]]></description>
911 <default><![CDATA[
912 ]]></default>
913 </property>
914 <property name="setJS_openPic" type="boolean">
915 <description><![CDATA[If set, the openPic JavaScript function is forced to be included]]></description>
916 <default><![CDATA[
917 ]]></default>
918 </property>
919 <property name="spamProtectEmailAddresses" type="string">
920 <description><![CDATA["ascii" / -10 to 10
921 If set, then all email addresses in typolinks will be encrypted so spam bots cannot detect them.
922
923 If you set this value to a number, then the encryption is simply an
924 offset of character values. If you set this value to "-2" then all
925 characters will have their ASCII value offset by "-2". To make this
926 possible, a little JavaScript code is added to every generated web page!
927 (It is recommended to set the value in the range from -5 to 1 since setting it to >= 2 means a "z" is converted to "|" which is a special character in TYPO3 tables syntax – and that might confuse columns in tables. Now hardcoded range)
928
929 Alternatively you can set this value to the keyword "ascii". This way every
930 character of the "mailto:" address will be translated to a Unicode HTML
931 notation. Have a look at the example to see how this works.
932
933 Example:
934 mailto:a@b.c will be converted to
935 mailto:&#97;&#64;&#98;&#46;&#99;
936 The big advantage of this method is that it doesn't need any JavaScript!]]></description>
937 <default><![CDATA[
938 ]]></default>
939 </property>
940 <property name="spamProtectEmailAddresses_atSubst" type="string">
941 <description><![CDATA[Substitute label for the at-sign (@).]]></description>
942 <default><![CDATA[(at)]]></default>
943 </property>
944 <property name="spamProtectEmailAddresses_lastDotSubst" type="string">
945 <description><![CDATA[Substitute label for the last dot in the email address.
946 Example: (dot)]]></description>
947 <default><![CDATA[Default: . ( <= just a simple dot)]]></default>
948 </property>
949 <property name="sword_noMixedCase" type="boolean">
950 <description><![CDATA[Used by the parseFunc-substitution of search Words (sword):
951 If set, the words MUST be the exact same case as the search word was.]]></description>
952 <default><![CDATA[
953 ]]></default>
954 </property>
955 <property name="sword_standAlone" type="boolean">
956 <description><![CDATA[Used by the parseFunc-substitution of search Words (sword):
957 If set, the words MUST be surrounded by whitespace in order to be marked up.]]></description>
958 <default><![CDATA[
959 ]]></default>
960 </property>
961 <property name="sys_language_mode" type="string">
962 <description><![CDATA[Setting various modes of handling localization.
963 The syntax is "[keyword] ; [value]".
964
965 Possible keywords are:
966
967 [default] - The system will look for a translation of the page (from "Alternative Page Language" table) and if it is not found it will fall back to the default language and display that.
968
969 content_fallback - [ Recommended ] The system will always operate with the selected language even if the page is not translated with a page overlay record. This will keep menus etc. translated. However, the content on the page can still fall back to another language, defined by the value of this keyword, eg. "content_fallback ; 1,0" to fall back to the content of sys_language_uid 1 and if that is not present either, to default (0)
970
971 strict - The system will report an error if the requested translation does not exist. Basically this means that all pages with gray background in the Web>Info / Localization overview module will fail (they would otherwise fall back to default language in one or another way)
972
973 ignore - The system will stay with the selected language even if the page is not translated and there's no content available in this language, so you can handle that situation on your own then.]]></description>
974 <default><![CDATA[
975 ]]></default>
976 </property>
977 <property name="sys_language_overlay" type="string">
978 <description><![CDATA[boolean / keyword
979 If set, records from certain tables selected by the CONTENT cObject using the "languageField" setting will select the default language (0) instead of any language set by sys_language_uid / sys_language_mode. In addition the system will look for a translation of the selected record and overlay configured fields.
980 The requirements for this is that the table is configured with "languageField" and "transOrigPointerField" in the [ctrl] section of $TCA. Also, exclusion of certain fields can be done with the "l10n_mode" directive in the field-configuration of $TCA.
981
982 For backend administration this requires that you configure the "Web>Page" module to display content elements accordingly; That each default element is shown and next to it any translation found. This configuration can be done with Page TSconfig for a section of the website using the object path "mod.web_layout.defLangBinding = 1".
983
984 Keyword:
985 hideNonTranslated : If this keyword is used a record that has no translation will not be shown. The default is that records with no translation will show up in the default language.]]></description>
986 <default><![CDATA[
987 ]]></default>
988 </property>
989 <property name="sys_language_softExclude" type="string">
990 <description><![CDATA[Setting additional "exclude" flags for l10n_mode in TCA for frontend rendering. Works exactly like sys_language_softMergeIfNotBlank (see that for details - same Syntax!).
991
992 Fields set in this property will override if the same field is set for "sys_language_softMergeIfNotBlank".]]></description>
993 <default><![CDATA[
994 ]]></default>
995 </property>
996 <property name="sys_language_softMergeIfNotBlank" type="string">
997 <description><![CDATA[Setting additional "mergeIfNotBlank" fields from TypoScript.
998
999 Background:
1000 In TCA you can configure "l10n_mode" - localization mode - for each field. Two of the options affect how the frontend displays content; The values "exclude" and "mergeIfNotBlank" (see "TYPO3 Core API" document for details). The first ("exclude") simply means that the field when found in a translation of a record will not be overlaid the default records field value. The second ("mergeIfNotBlank") means that it will be overlaid only if it has a non-blank value.
1001 Since it might be practical to set up fields for "mergeIfNotBlank" on a per-site basis this options allows you to override additional fields from tables.
1002
1003 Syntax:
1004  [table]:[field],  [table]:[field],  [table]:[field], ...
1005
1006 Example:
1007 config.sys_language_softMergeIfNotBlank = tt_content:image , tt_content:header
1008
1009 This setting means that the header and image field of content elements will be used from the translation only if they had a non-blank value. For the image field this might be very practical because it means that the image(s) from the default translation will be used unless other images are inserted!]]></description>
1010 <default><![CDATA[
1011 ]]></default>
1012 </property>
1013 <property name="sys_language_uid" type="int">
1014 <description><![CDATA[This value points to the uid of a record from the "sys_language" table and if set, this means that various parts of the frontend display code will select records which are assigned to this language. See ->SELECT
1015
1016 Internally, the value is depending on whether a Alternative Page Language record can be found with that language. If not, the value will default to zero (default language) except if "sys_language_mode" is set to a value like "content_fallback".]]></description>
1017 <default><![CDATA[
1018 ]]></default>
1019 </property>
1020 <property name="titleTagFunction " type="string">
1021 <description><![CDATA[function-name
1022 Passes the default <title>-tag content to this function. No typoScript parameters are passed though.]]></description>
1023 <default><![CDATA[
1024 ]]></default>
1025 </property>
1026 <property name="typolinkCheckRootline" type="boolean">
1027 <description><![CDATA[If set, then every "typolink" is checked whether it's linking to a page within the current rootline of the site.
1028 If not, then TYPO3 searches for the first found domain record (without redirect) in that rootline from out to in.
1029 If found (another domain), then that domain is prepended the link, the external target is used instead and thus the link jumps to the page in the correct domain.]]></description>
1030 <default><![CDATA[
1031 ]]></default>
1032 </property>
1033 <property name="typolinkEnableLinksAcrossDomains" type="boolean">
1034 <description><![CDATA[This option enables to create links across domains using current domain's linking scheme.
1035
1036 If this option is not set, then all cross-domain links will be generated as
1037
1038 "http://domain.tld/index.php?id=12345" (where 12345 is page id). Setting this option requires that domains, where pages are linked, have the same configuration for:
1039
1040 - linking scheme (i.e. all use RealURL or CoolURI but not any mixture)
1041 - all domains have identical localization settings (config.sys_language_XXX directives)
1042 - all domains have the same set of languages defined
1043
1044 This option implies "config.typolinkCheckRootline=1", which will be activated automatically. Setting value of "config. typolinkCheckRootline" inside TS template will have no effect.
1045
1046 Disclaimer: it must be understood that while link is generated to another domain, it is still generated in the context of current domain. No side effects are known at the time of writing of this documentation but they may exist. If any side effects are found, this documentation will be updated to include them.]]></description>
1047 <default><![CDATA[
1048 ]]></default>
1049 </property>
1050 <property name="typolinkLinkAccessRestrictedPages" type="string">
1051 <description><![CDATA[integer (page id) / keyword "NONE"
1052 If set, typolinks pointing to access restricted pages will still link to the page even though the page cannot be accessed. If the value of this setting is an integer it will be interpreted as a page id to which the link will be directed.
1053 If the value is "NONE" the original link to the page will be kept although it will generate a page-not-found situation (which can of course be picked up properly by the page-not-found handler and present a nice login form).
1054
1055 See "showAccessRestrictedPages" for menu objects as well (similar feature for menus)
1056
1057 Example:
1058 config.typolinkLinkAccessRestrictedPages = 29
1059 config.typolinkLinkAccessRestrictedPages_addParams = &return_url=###RETURN_URL###&pageId=###PAGE_ID###
1060
1061 Will create a link to page with id 29 and add GET parameters where the return URL and original page id is a part of it.]]></description>
1062 <default><![CDATA[
1063 ]]></default>
1064 </property>
1065 <property name="typolinkLinkAccessRestrictedPages_addParams" type="string">
1066 <description><![CDATA[See "typolinkLinkAccessRestrictedPages" above]]></description>
1067 <default><![CDATA[
1068 ]]></default>
1069 </property>
1070 <property name="xhtmlDoctype" type="string">
1071 <description><![CDATA[Sets the document type for the XHTML version of the generated page.
1072
1073 If config.doctype is set to a string then config.xhtmlDoctype must be set to one of these keywords:
1074
1075 "xhtml_trans" for XHTML 1.0 Transitional doctype.
1076 "xhtml_frames" for XHTML 1.0 Frameset doctype.
1077 "xhtml_strict" for XHTML 1.0 Strict doctype.
1078 "xhtml_basic" for XHTML basic doctype.
1079 "xhtml_11" for XHTML 1.1 doctype.
1080 "xhtml_2" for XHTML 2 doctype.
1081
1082
1083 This is an example to use MathML 2.0 in an XHTML 1.1 document:
1084
1085 config.doctype (
1086 <!DOCTYPE html
1087 PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN"
1088 "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd">
1089 )
1090 config.xhtmlDoctype = xhtml_11
1091
1092 Default:
1093 same as config.doctype if set to a keyword]]></description>
1094 <default><![CDATA[
1095 ]]></default>
1096 </property>
1097 <property name="xhtml_cleaning" type="string">
1098 <description><![CDATA[Tries to clean up the output to make it XHTML compliant and a bit more. THIS IS NOT COMPLETE YET, but a "pilot" to see if it makes sense anyways. For now this is what is done:
1099
1100 What it does at this point:
1101 - All tags (img,br,hr) is ended with "/>" - others?
1102 - Lowercase for elements and attributes
1103 - All attributes in quotes
1104 - Add "alt" attribute to img-tags if it's not there already.
1105
1106 What it does NOT do (yet) according to XHTML specs.:
1107 - Wellformedness: Nesting is NOT checked
1108 - name/id attribute issue is not observed at this point.
1109 - Certain nesting of elements not allowed. Most interesting, <PRE> cannot contain img, big,small,sub,sup ...
1110 - Wrapping scripts and style element contents in CDATA - or alternatively they should have entitites converted.
1111 - Setting charsets may put some special requirements on both XML declaration/ meta-http-equiv. (C.9)
1112 - UTF-8 encoding is in fact expected by XML!!
1113 - stylesheet element and attribute names are NOT converted to lowercase
1114 - ampersands (and entities in general I think) MUST be converted to an entity reference! (&amps;). This may mean further conversion of non-tag content before output to page. May be related to the charset issue as a whole.
1115 - Minimized values not allowed: Must do this: selected="selected"
1116
1117 Please see the class \TYPO3\CMS\Core\Html\HtmlParser for details.
1118 You can enable this function by the following values:
1119
1120 all = the content is always processed before it may be stored in cache.
1121 cached = only if the page is put into the cache,
1122 output = only the output code just before it's echoed out.]]></description>
1123 <default><![CDATA[
1124 ]]></default>
1125 </property>
1126 <property name="xmlprologue" type="string">
1127 <description><![CDATA[If empty (not set) then the default XML 1.0 prologue is set, when the doctype is set to a known keyword (eg xhtml_11):
1128
1129 <?xml version="1.0" encoding="[config.renderCharset]">
1130
1131 If set to one of the know keywords then a standard prologue will be set:
1132 "xml_10" XML 1.0 prologue (see above)
1133 "xml_11" XML 1.1 prologue
1134
1135 If "none" then the default XML prologue is not set.
1136 Any other string is used as the XML prologue itself.]]></description>
1137 <default><![CDATA[
1138 ]]></default>
1139 </property>
1140 </type>
1141 <type id="CONTENT">
1142 <property name="renderObj" type="cObj">
1143 <description><![CDATA[
1144 ]]></description>
1145 <default><![CDATA[< [tablename]]]></default>
1146 </property>
1147 <property name="select" type="select">
1148 <description><![CDATA[The SQL-statement is set here!]]></description>
1149 <default><![CDATA[
1150 ]]></default>
1151 </property>
1152 <property name="slide" type="slide">
1153 <description><![CDATA[int/stdWrap
1154 If set and no content element is found by the select command, then the rootLine will be traversed back until some content is found.
1155
1156 Possible values are "-1" (slide back up to the siteroot), "1" (only the current level) and "2" (up from one level back).
1157
1158 Use -1 in combination with collect.
1159
1160 .collect (integer/stdWrap): If set, all content elements found on current and parent pages will be collected. Otherwise, the sliding would stop after the first hit. Set this value to the amount of levels to collect on, or use "-1" to collect up to the siteroot.
1161 .collectFuzzy (boolean/stdWrap): Only useful in collect mode. If no content elements have been found for the specified depth in collect mode, traverse further until at least one match has occurred.
1162 .collectReverse (boolean/stdWrap): Change order of elements in collect mode. If set, elements of the current page will be on the bottom.]]></description>
1163 <default><![CDATA[
1164 ]]></default>
1165 </property>
1166 <property name="stdWrap" type="stdWrap">
1167 <description><![CDATA[
1168 ]]></description>
1169 <default><![CDATA[
1170 ]]></default>
1171 </property>
1172 <property name="table" type="stdWrap">
1173 <description><![CDATA[TableName/stdWrap
1174 The table, the content should come from.
1175 In standard-configurations this will be "tt_content"
1176 NOTE: Only tables allowed are "pages" or tables prefixed with one of these: "tt_", "tx_", "ttx_", "fe_", "user_" or "static_"]]></description>
1177 <default><![CDATA[
1178 ]]></default>
1179 </property>
1180 <property name="wrap" type="stdWrap">
1181 <description><![CDATA[wrap/stdWrap
1182 Wrap the whole content-story...]]></description>
1183 <default><![CDATA[
1184 ]]></default>
1185 </property>
1186 </type>
1187 <type id="slide" extends="stdWrap">
1188 <property name="collect" type="stdWrap">
1189 <description><![CDATA[int/stdWrap
1190 If set, all content elements found on current and parent pages will be collected. Otherwise, the sliding would stop after the first hit. Set this value to the amount of levels to collect on, or use “-1” to collect up to the siteroot.
1191 ]]></description>
1192 <default><![CDATA[
1193 ]]></default>
1194 </property>
1195 <property name="collectFuzzy" type="stdWrap">
1196 <description><![CDATA[boolean/stdWrap
1197 Only useful in collect mode. If no content elements have been found for the specified depth in collect mode, traverse further until at least one match has occurred.
1198 ]]></description>
1199 <default><![CDATA[
1200 ]]></default>
1201 </property>
1202 <property name="collectReverse" type="stdWrap">
1203 <description><![CDATA[boolean/stdWrap
1204 Change order of elements in collect mode. If set, elements of the current page will be at the bottom.
1205 ]]></description>
1206 <default><![CDATA[
1207 ]]></default>
1208 </property>
1209 </type>
1210 <type id="CTABLE">
1211 <property name="bm" type="stdWrap">
1212 <description><![CDATA[CARRAY + TDParams/stdWrap
1213 bottomMenu]]></description>
1214 <default><![CDATA[
1215 ]]></default>
1216 </property>
1217 <property name="c" type="stdWrap">
1218 <description><![CDATA[CARRAY + TDParams/stdWrap
1219 content-cell ]]></description>
1220 <default><![CDATA[
1221 ]]></default>
1222 </property>
1223 <property name="cMargins" type="stdWrap">
1224 <description><![CDATA[margins/stdWrap
1225 Distance around the content-cell "c"]]></description>
1226 <default><![CDATA[0,0,0,0]]></default>
1227 </property>
1228 <property name="cWidth" type="stdWrap">
1229 <description><![CDATA[pixels/stdWrap
1230 Width of the content-cell "c"]]></description>
1231 <default><![CDATA[
1232 ]]></default>
1233 </property>
1234 <property name="lm" type="stdWrap">
1235 <description><![CDATA[CARRAY+TDParams/stdWrap
1236 leftMenu]]></description>
1237 <default><![CDATA[
1238 ]]></default>
1239 </property>
1240 <property name="offset" type="stdWrap">
1241 <description><![CDATA[x,y/stdWrap
1242 Offset from upper left corner]]></description>
1243 <default><![CDATA[0,0 = intet]]></default>
1244 </property>
1245 <property name="rm" type="stdWrap">
1246 <description><![CDATA[CARRAY+TDParams/stdWrap
1247 rightMenu]]></description>
1248 <default><![CDATA[
1249 ]]></default>
1250 </property>
1251 <property name="tableParams" type="stdWrap">
1252 <description><![CDATA[<TABLE>-params/stdWrap
1253 ]]></description>
1254 <default><![CDATA[border=0 cellspacing=0 cellpadding=0]]></default>
1255 </property>
1256 <property name="tm" type="stdWrap">
1257 <description><![CDATA[CARRAY+TDParams/stdWrap
1258 topMenu]]></description>
1259 <default><![CDATA[
1260 ]]></default>
1261 </property>
1262 <property name="stdWrap" type="stdWrap">
1263 <description><![CDATA[
1264 ]]></description>
1265 <default><![CDATA[
1266 ]]></default>
1267 </property>
1268 </type>
1269 <type id="EDITPANEL">
1270 <property name="allow" type="string">
1271 <description><![CDATA[Define which functions are accessible. Further this list may be reduced, if the BE_USER does not have permission to perform the action
1272 Values should be listed separated by comma. This is the options you can choose between:
1273 toolbar,edit,new,delete,move,hide
1274 (toolbar is a general list of icons regarding the page, so use this for pagerecords only)]]></description>
1275 <default><![CDATA[
1276 ]]></default>
1277 </property>
1278 <property name="edit.displayRecord" type="boolean">
1279 <description><![CDATA[If set, then the record edited is displayed above the editing form.]]></description>
1280 <default><![CDATA[
1281 ]]></default>
1282 </property>
1283 <property name="innerWrap" type="wrap">
1284 <description><![CDATA[Wraps the edit panel]]></description>
1285 <default><![CDATA[
1286 ]]></default>
1287 </property>
1288 <property name="label" type="string">
1289 <description><![CDATA[Title for the panel. You can insert the record title with %s
1290
1291 Example:
1292 Section: <B>%s</B>]]></description>
1293 <default><![CDATA[
1294 ]]></default>
1295 </property>
1296 <property name="line" type="int">
1297 <description><![CDATA[boolean / int
1298 If set, a black line will appear after the panel. This value will indicate the distance from the black line to the panel]]></description>
1299 <default><![CDATA[
1300 ]]></default>
1301 </property>
1302 <property name="newRecordFromTable" type="string">
1303 <description><![CDATA[Will display a panel for creation of new element (in the top of list) on the page from that table.]]></description>
1304 <default><![CDATA[
1305 ]]></default>
1306 </property>
1307 <property name="newRecordInPid" type="int">
1308 <description><![CDATA[Define a page ID where new records (except new pages) will be created.]]></description>
1309 <default><![CDATA[
1310 ]]></default>
1311 </property>
1312 <property name="onlyCurrentPid" type="boolean">
1313 <description><![CDATA[If set, only records with a pid matching the current id (TSFE->id) will be shown with the panel.]]></description>
1314 <default><![CDATA[
1315 ]]></default>
1316 </property>
1317 <property name="outerWrap" type="wrap">
1318 <description><![CDATA[Wraps the whole edit panel including the black line (if configured)]]></description>
1319 <default><![CDATA[
1320 ]]></default>
1321 </property>
1322 <property name="previewBorder" type="int">
1323 <description><![CDATA[boolean / int
1324 If set, the hidden/starttime/endtime/fe_user elements which are previewed will have a border around.
1325 The integer value denotes the thickness of the border]]></description>
1326 <default><![CDATA[
1327 ]]></default>
1328 </property>
1329 <property name="previewBorder.innerWrap" type="string">
1330 <description><![CDATA[wrap / HTML color
1331 innerWrap wraps the content elements (including the icons) inside the preview border (an HTML table).
1332
1333 outerWrap wraps the whole content element including the border.
1334
1335 color denotes the color of the border.]]></description>
1336 <default><![CDATA[
1337 ]]></default>
1338 </property>
1339 </type>
1340 <type id="FILE">
1341 <property name="altText" type="stdWrap">
1342 <description><![CDATA[For <img> output only!
1343
1344 If no alttext is specified, it will use an empty alttext]]></description>
1345 <default><![CDATA[
1346 ]]></default>
1347 </property>
1348 <property name="emptyTitleHandling" type="string">
1349 <description><![CDATA[Value can be "keepEmpty" to preserve an empty title attribute, or "useAlt" to use the alt attribute instead.
1350 ]]></description>
1351 <default><![CDATA[useAlt
1352 ]]></default>
1353 </property>
1354 <property name="file" type="stdWrap">
1355 <description><![CDATA[resource/stdWrap
1356 If the resource is jpg,gif,jpeg,png the image is inserted as an image-tag. Al other formats is read and inserted into the HTML-code.
1357 The maximum filesize of documents to be read is set to 1024 kb internally!]]></description>
1358 <default><![CDATA[
1359 ]]></default>
1360 </property>
1361 <property name="linkWrap" type="stdWrap">
1362 <description><![CDATA[wrap/stdWrap
1363 (before ".wrap")]]></description>
1364 <default><![CDATA[
1365 ]]></default>
1366 </property>
1367 <property name="longdescURL" type="stdWrap">
1368 <description><![CDATA[For <img> output only!
1369
1370 "longdesc" attribute (URL pointing to document with extensive details about image).]]></description>
1371 <default><![CDATA[
1372 ]]></default>
1373 </property>
1374 <property name="stdWrap" type="stdWrap">
1375 <description><![CDATA[
1376 ]]></description>
1377 <default><![CDATA[
1378 ]]></default>
1379 </property>
1380 <property name="wrap" type="stdWrap">
1381 <description><![CDATA[wrap/stdWrap
1382 ]]></description>
1383 <default><![CDATA[
1384 ]]></default>
1385 </property>
1386 </type>
1387 <type id="FILES">
1388 <property name="references" type="stdWrap">
1389 <description><![CDATA[string/stdWrap or array
1390 Provides a way to load files from a file field (of type IRRE with sys_file_reference as child table).
1391 You can either provide a UID or a comma-separated list of UIDs from the database table sys_file_reference
1392 or you have to specify a table, uid and field name in the according sub-properties of "references".
1393 See further documentation of these sub-properties in the table below.]]></description>
1394 <default><![CDATA[]]></default>
1395 </property>
1396 <property name="files" type="stdWrap">
1397 <description><![CDATA[string/stdWrap
1398 Comma-separated list of sys_file UIDs, which are loaded into the FILES object.]]></description>
1399 <default><![CDATA[]]></default>
1400 </property>
1401 <property name="collections" type="stdWrap">
1402 <description><![CDATA[string/stdWrap
1403 Comma-separated list of sys_file_collection UIDs, which are loaded into the FILES object.]]></description>
1404 <default><![CDATA[]]></default>
1405 </property>
1406 <property name="folders" type="stdWrap">
1407 <description><![CDATA[string/stdWrap
1408 Comma-separated list of combined folder identifiers which are loaded into the FILES object.
1409 A combined folder identifier looks like this: [storageUid]:[folderIdentifier].
1410 The first part is the UID of the storage and the second part the identifier of the folder.
1411 The identifier of the folder is often equivalent to the relative path of the folder.]]></description>
1412 <default><![CDATA[]]></default>
1413 </property>
1414 <property name="sorting" type="stdWrap">
1415 <description><![CDATA[string/stdWrap
1416 You can sort in revers order with: sorting.direction = DESC]]></description>
1417 <default><![CDATA[]]></default>
1418 </property>
1419 <property name="begin" type="integer">
1420 <description><![CDATA[integer]]></description>
1421 <default><![CDATA[]]></default>
1422 </property>
1423 <property name="maxItems" type="integer">
1424 <description><![CDATA[integer]]></description>
1425 <default><![CDATA[]]></default>
1426 </property>
1427 <property name="renderObj" type="cObj">
1428 <description><![CDATA[cObject + optionSplit
1429 The cObject used for rendering the files. It is executed once for every file.
1430 Note that during each execution you can find information about the current file using
1431 the getText property "file" with the "current" keyword.]]></description>
1432 <default><![CDATA[]]></default>
1433 </property>
1434 <property name="stdWrap" type="stdWrap">
1435 <description><![CDATA[stdWrap]]></description>
1436 <default><![CDATA[]]></default>
1437 </property>
1438 </type>
1439 <type id="FORM_dataArray">
1440 <property name="10" type="FORM_dataArray_element">
1441 <description><![CDATA[alternative way to define form Elements]]></description>
1442 <default><![CDATA[]]></default>
1443 </property>
1444 <property name="20" type="FORM_dataArray_element">
1445 <description><![CDATA[alternative way to define form Elements]]></description>
1446 <default><![CDATA[]]></default>
1447 </property>
1448 <property name="30" type="FORM_dataArray_element">
1449 <description><![CDATA[alternative way to define form Elements]]></description>
1450 <default><![CDATA[]]></default>
1451 </property>
1452 <property name="40" type="FORM_dataArray_element">
1453 <description><![CDATA[alternative way to define form Elements]]></description>
1454 <default><![CDATA[]]></default>
1455 </property>
1456 </type>
1457 <type id="FORM_dataArray_element">
1458 <property name="label" type="string">
1459 <description><![CDATA[]]></description>
1460 <default><![CDATA[]]></default>
1461 </property>
1462 <property name="type" type="string">
1463 <description><![CDATA[]]></description>
1464 <default><![CDATA[]]></default>
1465 </property>
1466 <property name="name" type="string">
1467 <description><![CDATA[]]></description>
1468 <default><![CDATA[]]></default>
1469 </property>
1470 <property name="value" type="string">
1471 <description><![CDATA[]]></description>
1472 <default><![CDATA[]]></default>
1473 </property>
1474 <property name="required" type="boolean">
1475 <description><![CDATA[]]></description>
1476 <default><![CDATA[]]></default>
1477 </property>
1478 </type>
1479 <type id="FORM">
1480 <property name="CHECK.layout" type="string">
1481 <description><![CDATA[Alternative layout for checkboxes]]></description>
1482 <default><![CDATA[the "layout"-property]]></default>
1483 </property>
1484 <property name="COMMENT.layout" type="string">
1485 <description><![CDATA[Alternative layout for comments.]]></description>
1486 <default><![CDATA[the "layout"-property]]></default>
1487 </property>
1488 <property name="LABEL.layout" type="string">
1489 <description><![CDATA[Alternative layout for label types]]></description>
1490 <default><![CDATA[the "layout"-property]]></default>
1491 </property>
1492 <property name="RADIO.layout" type="string">
1493 <description><![CDATA[Alternative layout for radiobuttons]]></description>
1494 <default><![CDATA[the "layout"-property]]></default>
1495 </property>
1496 <property name="REQ" type="REQ">
1497 <description><![CDATA[boolean
1498 Defines if required-fields should be checked and marked up]]></description>
1499 <default><![CDATA[
1500 ]]></default>
1501 </property>
1502 <property name="accessibility" type="boolean">
1503 <description><![CDATA[If set, then the form will be compliant with accessibility guidelines (XHTML compliant). This includes:
1504
1505 label string will be wrapped in <label for="formname[fieldname-hash]"> ... </label>All form elements will have an id-attribute carrying the formname with the md5-hashed fieldname appended
1506
1507 Notice: In TYPO3 4.0 and later, CSS Styled Content is configured to produce accessible forms by default.]]></description>
1508 <default><![CDATA[
1509 ]]></default>
1510 </property>
1511 <property name="arrayReturnMode" type="boolean">
1512 <description><![CDATA[If set, the <form> tags and the form content will be returned in an array as separate elements including other pratical values. This mode is for use in extensions where the array return value can be more useful.]]></description>
1513 <default><![CDATA[
1514 ]]></default>
1515 </property>
1516 <property name="badMess" type="string">
1517 <description><![CDATA[Prefixed Message for the formevaluation in case of missing required fields.
1518 This message is shown above the list of fields.
1519
1520 NOTE: May be overridden by the property override feature of the formdata (see above)]]></description>
1521 <default><![CDATA[No message]]></default>
1522 </property>
1523 <property name="commentWrap" type="stdWrap">
1524 <description><![CDATA[Comments: Wrap for comments IF you use ###COMMENT###]]></description>
1525 <default><![CDATA[
1526 ]]></default>
1527 </property>
1528 <property name="compensateFieldWidth" type="double">
1529 <description><![CDATA[Overriding option to the config-value of the same name. See "CONFIG" above.]]></description>
1530 <default><![CDATA[
1531 ]]></default>
1532 </property>
1533 <property name="data" type="stdWrap">
1534 <description><![CDATA[This is the data that sets up the form. See above.
1535 "||" can be used instead of linebreaks]]></description>
1536 <default><![CDATA[
1537 ]]></default>
1538 </property>
1539 <property name="dataArray" type="FORM_dataArray">
1540 <description><![CDATA[This is an alternative way to define the form-fields. Instead of using the syntax with vertical separator bars suggested by the .data property, you can define the elements in regular TypoScript style arrays.
1541 .dataArray is added to the input in .data if any.
1542 Every entry in the dataArray is numeric and has three main properties, label, type, value and required. 'label' and 'value' has stdWrap properties.
1543 There is an alternative property to .value, which is .valueArray. This is also an array in the same style with numeric entries which has properties label, value and selected. 'label' has stdWrap properties.
1544
1545 Example:
1546   dataArray {
1547     10.label = Name:
1548     10.type = name=input
1549     10.value = [Enter name]
1550     10.required = 1
1551     20.label = Eyecolor
1552     20.type = eyecolor=select
1553     20.valueArray {
1554       10.label = Blue
1555       10.value = 1
1556       20.label = Red
1557       20.value = 2
1558       20.selected = 1
1559     }
1560     40.type = submit=submit
1561     40.value = Submit
1562   }
1563
1564
1565 This is the same as this line in the .data property:
1566
1567 Name: | *name=input | [Enter name]
1568 Eyecolor: | eyecolor=select | Blue=1, *Red=2
1569 | submit=submit | Submit
1570
1571 Why do it this way?  Good question, but doing it this way has a tremendous advantage because labels are all separated from the codes. In addition it's much easier to pull out or insert new elements in the form.
1572 Inserting an email-field after the name field would be like this:
1573   dataArray {
1574     15.label = Email:
1575     15.type = input
1576     15.value = your@email.com
1577     15.specialEval = EMAIL
1578   }
1579
1580 Or translating the form to danish (setting config.language to 'dk'):
1581
1582   dataArray {
1583     10.label.lang.dk = Navn:
1584     10.value.lang.dk = [Indtast dit navn]
1585     20.label.lang.dk = Øjenfarve
1586     20.valueArray {
1587       10.label.lang.dk = Blå
1588       20.label.lang.dk = Rød
1589     }
1590     40.value.lang.dk = Send
1591   }
1592 ]]></description>
1593 <default><![CDATA[
1594 ]]></default>
1595 </property>
1596 <property name="dontMd5FieldNames" type="boolean">
1597 <description><![CDATA[The IDs generated for all elements in a form are md5 hashes from the fieldname. Setting this to true will disable this behaviour and use a cleaned fieldname, prefixed with the form name as the ID, instead.
1598 This can be useful to style specifically named fields with CSS.]]></description>
1599 <default><![CDATA[
1600 ]]></default>
1601 </property>
1602 <property name="emailMess" type="string">
1603 <description><![CDATA[Message if a field evaluated to be an email adresse did not validate.
1604
1605 NOTE: May be overridden by the property override feature of the formdata (see above)]]></description>
1606 <default><![CDATA[
1607 ]]></default>
1608 </property>
1609 <property name="fieldPrefix" type="string">
1610 <description><![CDATA[Alternative prefix for the name of the fields in this form. Otherwise, all fields are prefixed with the form name (either a unique hash or the name set in the "formName" property). If set to "0", there will be no prefix at all.]]></description>
1611 <default><![CDATA[
1612 ]]></default>
1613 </property>
1614 <property name="fieldWrap" type="stdWrap">
1615 <description><![CDATA[Field: Wraps the fields]]></description>
1616 <default><![CDATA[
1617 ]]></default>
1618 </property>
1619 <property name="formName" type="string">
1620 <description><![CDATA[An alternative name for this form. Default will be a unique (random) hash.
1621
1622 <form name="...">]]></description>
1623 <default><![CDATA[
1624 ]]></default>
1625 </property>
1626 <property name="goodMess" type="string">
1627 <description><![CDATA[Message for the formevaluation function in case of correctly filled form.
1628
1629 NOTE: May be overridden by the property override feature of the formdata (see above)]]></description>
1630 <default><![CDATA[No message]]></default>
1631 </property>
1632 <property name="hiddenFields" type="cObjArray">
1633 <description><![CDATA[Used to set hiddenFields from TS.
1634
1635 Example:
1636 hiddenFields.pid = TEXT
1637 hiddenFields.pid.value = 2
1638
1639 This makes a hidden-field with the name "pid" and value "2".]]></description>
1640 <default><![CDATA[
1641 ]]></default>
1642 </property>
1643 <property name="image" type="IMAGE">
1644 <description><![CDATA[If this is a valid image the submitbutton is rendered as this image!!
1645
1646 NOTE: CurrentValue is set to the caption-label before generating the image.]]></description>
1647 <default><![CDATA[
1648 ]]></default>
1649 </property>
1650 <property name="labelWrap" type="stdWrap">
1651 <description><![CDATA[Labels: Wraps the label]]></description>
1652 <default><![CDATA[
1653 ]]></default>
1654 </property>
1655 <property name="layout" type="string">
1656 <description><![CDATA[This defines how the label and the field are placed towards each other.
1657
1658 Example:
1659 This substitutes the "###FIELD###" with the field data and the "###LABEL###' with labeldata.
1660
1661 <tr><td>###FIELD###</td><td> ###LABEL###</td></tr>
1662
1663 You can also use the marker ###COMMENT### which is ALSO the label value inserted, but wrapped in .commentWrap stdWrap-properties (see below)]]></description>
1664 <default><![CDATA[
1665 ]]></default>
1666 </property>
1667 <property name="locationData" type="string">
1668 <description><![CDATA[boolean / string
1669 If this value is true, then a hidden-field called "locationData" is added to the form. This field wil be loaded with a value like this:
1670 [page id]:[current record table]:[current record id]
1671 For example, if a formfield is inserted on page with uid = "100", as a page-content item from the table "tt_content" with id "120", then the value would be "100:tt_content:120".
1672 The value is use by eg. the cObject SEARCHRESULT. If the value $GLOBALS["HTTP_POST_VARS"]["locationData"] is detected here, the search is done as if it was performed on this page! This is very useful if you want a search functionality implemented on a page with the "stype" field set to "L1" which means that the search is carried out from the first level in the rootline.
1673 Suppose you want the search to submit to a dedicated searchpage where ever. This page will then know - because of locationData - that the search was submittet from another place on the website.
1674 If "locationData" is not only true but also set to "HTTP_POST_VARS" then the value will insert the content of $GLOBALS["HTTP_POST_VARS"]["locationData"] instead of the true location data of the page. This should be done with search-fields as this will carry the initial searching start point with.
1675 NOTE: May be overridden by the property override feature of the formdata (see above)]]></description>
1676 <default><![CDATA[
1677 ]]></default>
1678 </property>
1679 <property name="method" type="string">
1680 <description><![CDATA[form-method
1681
1682 Example:
1683 GET]]></description>
1684 <default><![CDATA[POST]]></default>
1685 </property>
1686 <property name="noValueInsert" type="boolean">
1687 <description><![CDATA[By default values that are submitted to the same page (and thereby same form, eg. at searchforms) are re-inserted in the form instead of any default-data that might be set up.
1688 This, however, applies ONLY if the "no_cache=1" is set! (a page being cached may not include user-specific defaults in the fields of course...)
1689 If you set this flag, "noValueInsert", the content will always be the default content.]]></description>
1690 <default><![CDATA[
1691 ]]></default>
1692 </property>
1693 <property name="noWrapAttr" type="boolean">
1694 <description><![CDATA[If this value is true then all wrap attributes of textarea elements are suppressed. This is needed for XHTML-compliancy.
1695
1696 The wrap attributes can also be disabled on a per-field basis by using the special keyword "disabled" as the value of the wrap attribute.]]></description>
1697 <default><![CDATA[
1698 ]]></default>
1699 </property>
1700 <property name="no_cache" type="string">
1701 <description><![CDATA[Default no_cache-option]]></description>
1702 <default><![CDATA[
1703 ]]></default>
1704 </property>
1705 <property name="params" type="string">
1706 <description><![CDATA[form-element tag parameters
1707 Extra parameters to form elements
1708
1709 Example:
1710 params = style="width:200px;"
1711 params.textarea = style="width:300px;"
1712 params.check =
1713
1714 This sets the default to 200 px width, but excludes check-boxes and sets textareas to 300.]]></description>
1715 <default><![CDATA[
1716 ]]></default>
1717 </property>
1718 <property name="radioWrap" type="stdWrap">
1719 <description><![CDATA[Wraps the labels for radiobuttons]]></description>
1720 <default><![CDATA[
1721 ]]></default>
1722 </property>
1723 <property name="radioWrap.accessibilityWrap" type="wrap">
1724 <description><![CDATA[Defines how radio buttons are wrapped when accessibility mode is turned on (see below “accessibility” property)
1725 default:
1726
1727 <fieldset###RADIO_FIELD_ID###><legend>###RADIO_GROUP_LABEL###</legend>|</fieldset>
1728 ]]></description>
1729 <default><![CDATA[<fieldset###RADIO_FIELD_ID###><legend>###RADIO_GROUP_LABEL###</legend>|</fieldset>
1730 ]]></default>
1731 </property>
1732 <property name="radioInputWrap" type="stdWrap">
1733 <description><![CDATA[Wraps the input element and label of a radio button.]]></description>
1734 <default><![CDATA[
1735 ]]></default>
1736 </property>
1737 <property name="recipient" type="stdWrap">
1738 <description><![CDATA[(list of) string /stdWrap
1739 Email recipient of the formmail content (generates the hiddenfield "recipient")]]></description>
1740 <default><![CDATA[No email]]></default>
1741 </property>
1742 <property name="redirect" type="stdWrap">
1743 <description><![CDATA[URL to redirect to (generates the hidden field "redirect")
1744
1745 Integer: this is regarded to be a page in TYPO3
1746 String: this is regarded to be a normal url
1747 Empty; the current page is chosen.
1748
1749 NOTE: If this value is set the target of this overriddes the target of the "type".]]></description>
1750 <default><![CDATA[
1751 ]]></default>
1752 </property>
1753 <property name="stdWrap" type="stdWrap">
1754 <description><![CDATA[Wraps the hole form (before formtags is added)]]></description>
1755 <default><![CDATA[
1756 ]]></default>
1757 </property>
1758 <property name="target" type="string">
1759 <description><![CDATA[target
1760 Default target of the form. ]]></description>
1761 <default><![CDATA[
1762 ]]></default>
1763 </property>
1764 <property name="type" type="int">
1765 <description><![CDATA[Type (action="" of the form):
1766
1767 Integer: this is regarded to be a page in TYPO3
1768 String: this is regarded to be a normal URL (eg. "formmail.php")
1769 Empty: the current page is chosen.
1770
1771 NOTE: If type is integer/empty the form will be submitted to a page in TYPO3 and if this page has a value for target/no_cache, then this will be used instead of the default target/no_cache below.
1772
1773 NOTE: If the redirect-value is set, the redirect-target overrides the target set by the action-url
1774
1775 NOTE: May be overridden by the property override feature of the formdata (see above)]]></description>
1776 <default><![CDATA[
1777 ]]></default>
1778 </property>
1779 <property name="wrapFieldName" type="wrap">
1780 <description><![CDATA[This wraps  the fieldnames before they are applied to the form-field tags.
1781
1782 Example:
1783 If value is tx_myextension[input][  |  ]  then the fieldname "email" would be wrapped to this value: tx_myextension[input][email]]]></description>
1784 <default><![CDATA[
1785 ]]></default>
1786 </property>
1787 </type>
1788 <type id="REQ">
1789 <property name="fieldWrap" type="stdWrap">
1790 <description><![CDATA[Field: Wraps the fields, but for reuired fields]]></description>
1791 <default><![CDATA[the "fieldWrap"-property]]></default>
1792 </property>
1793 <property name="labelWrap" type="stdWrap">
1794 <description><![CDATA[Labels: Wraps the label, but for reuired fields]]></description>
1795 <default><![CDATA[the "labelWrap"-property]]></default>
1796 </property>
1797 <property name="layout" type="string">
1798 <description><![CDATA[The same as "layout" above, but for reuired fields]]></description>
1799 <default><![CDATA[the "layout"-property]]></default>
1800 </property>
1801 </type>
1802 <type id="FRAMESET">
1803 <property name="1" type="FRAME">
1804 <description><![CDATA[Configuration of frames and nested framesets.]]></description>
1805 <default><![CDATA[
1806 ]]></default>
1807 </property>
1808 <property name="2" type="FRAME">
1809 <description><![CDATA[Configuration of frames and nested framesets.]]></description>
1810 <default><![CDATA[
1811 ]]></default>
1812 </property>
1813 <property name="3" type="FRAME">
1814 <description><![CDATA[Configuration of frames and nested framesets.]]></description>
1815 <default><![CDATA[
1816 ]]></default>
1817 </property>
1818 <property name="4" type="FRAME">
1819 <description><![CDATA[Configuration of frames and nested framesets.]]></description>
1820 <default><![CDATA[
1821 ]]></default>
1822 </property>
1823 <property name="cols" type="string">
1824 <description><![CDATA[<frameset>-data:cols
1825 Cols]]></description>
1826 <default><![CDATA[
1827 ]]></default>
1828 </property>
1829 <property name="params" type="string">
1830 <description><![CDATA[<frameset>-params
1831 Example:
1832 border="0" framespacing="0" frameborder="NO"]]></description>
1833 <default><![CDATA[
1834 ]]></default>
1835 </property>
1836 <property name="rows" type="string">
1837 <description><![CDATA[<frameset>-data:rows
1838 Rows]]></description>
1839 <default><![CDATA[
1840 ]]></default>
1841 </property>
1842 </type>
1843 <type id="FRAME">
1844 <property name="name" type="string">
1845 <description><![CDATA[<frame>-data:name
1846 Manually set name of frame
1847
1848 NOTE: Is set automatically and should not be overridden under normal conditions!]]></description>
1849 <default><![CDATA[value of ".obj"]]></default>
1850 </property>
1851 <property name="obj" type="string">
1852 <description><![CDATA[pointer to toplevel object-name
1853 toplevel object-name of a PAGE / FRAMESET
1854
1855 Example:
1856 "left", "page", "frameset"]]></description>
1857 <default><![CDATA[
1858 ]]></default>
1859 </property>
1860 <property name="options" type="string">
1861 <description><![CDATA[url-parameters
1862 Example:
1863 print=1&othervar=anotherthing
1864 would add '&print=1&othervar=anotherthing' to the ".src"-content (if not ".src" is set manually!!)]]></description>
1865 <default><![CDATA[
1866 ]]></default>
1867 </property>
1868 <property name="params" type="string">
1869 <description><![CDATA[<frame>-params
1870 Example:
1871 scrolling="AUTO" noresize frameborder="NO"]]></description>
1872 <default><![CDATA[
1873 ]]></default>
1874 </property>
1875 <property name="src" type="string">
1876 <description><![CDATA[<frame>-data:src
1877 Manually set the src of the frame
1878
1879 NOTE: Is set automatically and should not be overridden under normal conditions!]]></description>
1880 <default><![CDATA[could be index.php?$id&$type ]]></default>
1881 </property>
1882 </type>
1883 <type id="GifBuilderObj">
1884 <property name="if" type="if">
1885 <description><![CDATA[.if (->if) is a property of all gifbuilder-objects. If the property is present and NOT set, the object is NOT rendered! This corresponds to the functionallity of ".if" of the stdWrap-function.]]></description>
1886 </property>
1887 </type>
1888 <type id="GIFBUILDER">
1889 <property name="1" type="GifBuilderObj">
1890 <description><![CDATA[.if (->if) is a property of all gifbuilder-objects. If the property is present and NOT set, the object is NOT rendered! This corresponds to the functionallity of ".if" of the stdWrap-function.]]></description>
1891 <default><![CDATA[
1892 ]]></default>
1893 </property>
1894 <property name="2" type="GifBuilderObj">
1895 <description><![CDATA[.if (->if) is a property of all gifbuilder-objects. If the property is present and NOT set, the object is NOT rendered! This corresponds to the functionallity of ".if" of the stdWrap-function.]]></description>
1896 <default><![CDATA[
1897 ]]></default>
1898 </property>
1899 <property name="3" type="GifBuilderObj">
1900 <description><![CDATA[.if (->if) is a property of all gifbuilder-objects. If the property is present and NOT set, the object is NOT rendered! This corresponds to the functionallity of ".if" of the stdWrap-function.]]></description>
1901 <default><![CDATA[
1902 ]]></default>
1903 </property>
1904 <property name="4" type="GifBuilderObj">
1905 <description><![CDATA[.if (->if) is a property of all gifbuilder-objects. If the property is present and NOT set, the object is NOT rendered! This corresponds to the functionallity of ".if" of the stdWrap-function.]]></description>
1906 <default><![CDATA[
1907 ]]></default>
1908 </property>
1909 <property name="XY" type="string">
1910 <description><![CDATA[x,y +calc
1911 Size of the gif-file. ]]></description>
1912 <default><![CDATA[100,20]]></default>
1913 </property>
1914 <property name="backColor" type="string">
1915 <description><![CDATA[GraphicColor
1916 Background color for the gif]]></description>
1917 <default><![CDATA[white]]></default>
1918 </property>
1919 <property name="format" type="string">
1920 <description><![CDATA["gif" / "jpg"
1921 Output type.
1922 "jpg"/"jpeg" = jpg-image]]></description>
1923 <default><![CDATA[gif]]></default>
1924 </property>
1925 <property name="maxHeight" type="int">
1926 <description><![CDATA[pixels
1927 Maximal heigth of gif-file]]></description>
1928 <default><![CDATA[
1929 ]]></default>
1930 </property>
1931 <property name="maxWidth" type="int">
1932 <description><![CDATA[pixels
1933 Maximal width of gif-file]]></description>
1934 <default><![CDATA[
1935 ]]></default>
1936 </property>
1937 <property name="offset" type="string">
1938 <description><![CDATA[x,y +calc
1939 Offset all objects on the gif.]]></description>
1940 <default><![CDATA[0,0]]></default>
1941 </property>
1942 <property name="quality" type="int">
1943 <description><![CDATA[posint (10-100)
1944 JPG-quality (if ".format" = jpg/jpeg)]]></description>
1945 <default><![CDATA[
1946 ]]></default>
1947 </property>
1948 <property name="reduceColors" type="int">
1949 <description><![CDATA[posint (1-255)
1950 Reduce the number of colors (if gif-file)]]></description>
1951 <default><![CDATA[
1952 ]]></default>
1953 </property>
1954 <property name="transparentBackground" type="boolean">
1955 <description><![CDATA[Set this flag to render the background transparent. TYPO3 makes the color found at position 0,0 of the image (upper left corner) transparent.
1956 If you render text you should leave the niceText option OFF as the result with probably be more precise without the niceText antialiasing hack]]></description>
1957 <default><![CDATA[
1958 ]]></default>
1959 </property>
1960 <property name="transparentColor" type="stdWrap">
1961 <description><![CDATA[HTMLColor /stdWrap
1962 Specify a color that should be transparent
1963
1964 Example-values:
1965 #ffffcc
1966 red
1967 255,255,127
1968
1969 Option:
1970 transparentColor.closest = 1
1971 This will allow for the closest color to be matched instead. You may need this if you image is not garanteed "clean".
1972
1973 NOTE: You may experience that this doesn't work if you use reduceColors-option or render text with niceText-option.]]></description>
1974 <default><![CDATA[
1975 ]]></default>
1976 </property>
1977 <property name="workArea" type="string">
1978 <description><![CDATA[x,y,w,h + calc
1979 Define the workarea on the giffile. All the GifBuilderObj's will see this as the dimensions of the gif-file regarding alignment, overlaying of images an so on. Only will TEXT-objects exceeding the boundaries of the workarea print outside this area.]]></description>
1980 <default><![CDATA[
1981 ]]></default>
1982 </property>
1983 </type>
1984 <type id="ADJUST" extends="GifBuilderObj">
1985 <property name="value" type="string">
1986 <description><![CDATA[This lets you adjust the input-levels like in Photoshops "levels"-dialog. If you need to adjust gamma, look at the EFFECT-object.
1987 Example:
1988
1989 20 = ADJUST
1990 20.value = inputLevels = 13,230
1991
1992 properties:
1993
1994 inputLevels: low,high
1995 outputLevels: low, high
1996 autoLevels: -
1997 ]]></description>
1998 <default><![CDATA[
1999 ]]></default>
2000 </property>
2001 </type>
2002 <type id="BOX" extends="GifBuilderObj">
2003 <property name="align" type="string">
2004 <description><![CDATA[VHalign
2005 ]]></description>
2006 <default><![CDATA[
2007 ]]></default>
2008 </property>
2009 <property name="color" type="string">
2010 <description><![CDATA[GraphicColor
2011 fill-color]]></description>
2012 <default><![CDATA[black]]></default>
2013 </property>
2014 <property name="dimensions" type="string">
2015 <description><![CDATA[x,y,w,h +calc
2016 Dimensions of a filled box.
2017 x,y    is the offset.
2018 w,h    is the dimensions. Dimensions of 1 will result in 1-pixel wide lines!]]></description>
2019 <default><![CDATA[
2020 ]]></default>
2021 </property>
2022 <property name="opacity" type="int">
2023 <description><![CDATA[pos-int (1-100)
2024 Dimensions of a filled box.
2025 Opacity (i.e. inverse of transparency, e.g. 100% opacity = 0% transparency)]]></description>
2026 <default><![CDATA[100
2027 ]]></default>
2028 </property>
2029 </type>
2030 <type id="CROP" extends="GifBuilderObj">
2031 <property name="align" type="string">
2032 <description><![CDATA[VHalign
2033 ]]></description>
2034 <default><![CDATA[
2035 ]]></default>
2036 </property>
2037 <property name="backColor" type="string">
2038 <description><![CDATA[GraphicColor
2039 ]]></description>
2040 <default><![CDATA[The original backColor]]></default>
2041 </property>
2042 <property name="crop" type="string">
2043 <description><![CDATA[x,y,v,h + calc
2044 x,y is offset of the crop-frame,
2045 v,h  is the dimensions]]></description>
2046 <default><![CDATA[
2047 ]]></default>
2048 </property>
2049 </type>
2050 <type id="ELLIPSE" extends="GifBuilderObj">
2051 <property name="dimensions" type="string">
2052 <description><![CDATA[x,y,w,h +calc
2053 Dimensions of a filled ellipse.
2054 x,y is the offset.
2055 w,h is the dimensions. Dimensions of 1 will result in 1-pixel wide lines!
2056
2057 Example:
2058 file = GIFBUILDER
2059 file {
2060 XY = 200,200
2061 format = jpg
2062 quality = 100
2063 10 = ELLIPSE
2064 10.dimensions = 100,100,50,50
2065 10.color = red
2066
2067 ]]></description>
2068 <default><![CDATA[
2069 ]]></default>
2070 </property>
2071 <property name="color" type="string">
2072 <description><![CDATA[GraphicColor
2073 fill-color
2074
2075 Example:
2076 file = GIFBUILDER
2077 file {
2078 XY = 200,200
2079 format = jpg
2080 quality = 100
2081 10 = ELLIPSE
2082 10.dimensions = 100,100,50,50
2083 10.color = red
2084
2085 ]]></description>
2086 <default><![CDATA[
2087 ]]></default>
2088 </property>
2089 </type>
2090 <type id="EFFECT" extends="GifBuilderObj">
2091 <property name="value" type="string">
2092 <description><![CDATA[.value = [Varnavn] = [value] | [Varnavn] = [value]
2093
2094 Example:
2095 20 = EFFECT
2096 20.value = gamme=1.3 | flip | rotate=180
2097
2098
2099 gamma: 0.5 - 3.0
2100 blur: 1-99
2101 sharpen: 1-99
2102 solarize: 0-99
2103 swirl: 0-100
2104 wave: ampli , length
2105 charcoal: 0-100
2106 gray: -
2107 edge: 0-99
2108 emboss: -
2109 flip: - (Vertical flipping)
2110 flop: - (Horizontal flipping)
2111 rotate: 0-360 (Rotation)
2112 colors: 2-255
2113 shear: -90 - 90 (Horizontal shearing)
2114 invert: - (invert the colors)
2115 ]]></description>
2116 <default><![CDATA[
2117 ]]></default>
2118 </property>
2119 </type>
2120 <type id="EMBOSS" extends="GifBuilderObj">
2121 <property name="blur" type="int">
2122 <description><![CDATA[posint (1-99)
2123 Blurring of the shadow. Above 40 only values of 40,50,60,70,80,90 means something.]]></description>
2124 <default><![CDATA[
2125 ]]></default>
2126 </property>
2127 <property name="highColor" type="string">
2128 <description><![CDATA[GraphicColor
2129 Upper border-color]]></description>
2130 <default><![CDATA[
2131 ]]></default>
2132 </property>
2133 <property name="intensity" type="int">
2134 <description><![CDATA[posint(0-100)
2135 How "massive" the emboss is. This value can - if it has a high value combined with a blurred shadow - create a kind of soft-edged outline.]]></description>
2136 <default><![CDATA[
2137 ]]></default>
2138 </property>
2139 <property name="lowColor" type="string">
2140 <description><![CDATA[GraphicColor
2141 lower border-color]]></description>
2142 <default><![CDATA[
2143 ]]></default>
2144 </property>
2145 <property name="offset" type="string">
2146 <description><![CDATA[x,y
2147 Offset of the emboss]]></description>
2148 <default><![CDATA[
2149 ]]></default>
2150 </property>
2151 <property name="opacity" type="int">
2152 <description><![CDATA[posint (1-100)
2153 Opacity (transparency^-1)
2154 100% opacity = 0% transparency). Only active with a value for blur.]]></description>
2155 <default><![CDATA[
2156 ]]></default>
2157 </property>
2158 <property name="textObjNum" type="int">
2159 <description><![CDATA[pos-int
2160 Must point to the TEXT-object if these shadow-properties are not properties to a TEXT-object directly ("stand-alone-shadow"). Then the shadow needs to know which TEXT-object it should be a shadow of!
2161 If - on the other hand - the shadow is a property to a text-object, this property is not needed.]]></description>
2162 <default><![CDATA[
2163 ]]></default>
2164 </property>
2165 </type>
2166 <type id="GB_IMAGE" extends="GifBuilderObj">
2167 <property name="align" type="string">
2168 <description><![CDATA[VHalign
2169 ]]></description>
2170 <default><![CDATA[
2171 ]]></default>
2172 </property>
2173 <property name="file" type="imgResource">
2174 <description><![CDATA[The imagefile]]></description>
2175 <default><![CDATA[
2176 ]]></default>
2177 </property>
2178 <property name="mask" type="imgResource">
2179 <description><![CDATA[Optional mask-image for the imagefile.]]></description>
2180 <default><![CDATA[
2181 ]]></default>
2182 </property>
2183 <property name="offset" type="string">
2184 <description><![CDATA[x,y +calc
2185 Offset ]]></description>
2186 <default><![CDATA[0,0]]></default>
2187 </property>
2188 <property name="tile" type="string">
2189 <description><![CDATA[x,y
2190 tile x,y times.
2191 Maximum times is 20 each direction. If you need more, use a larger image.]]></description>
2192 <default><![CDATA[
2193 ]]></default>
2194 </property>
2195 </type>
2196 <type id="OUTLINE" extends="GifBuilderObj">
2197 <property name="color" type="string">
2198 <description><![CDATA[GraphicColor
2199 Outline color]]></description>
2200 <default><![CDATA[
2201 ]]></default>
2202 </property>
2203 <property name="textObjNum" type="int">
2204 <description><![CDATA[pos-int
2205 Must point to the TEXT-object if these shadow-properties are not properties to a TEXT-object directly ("stand-alone-shadow"). Then the shadow needs to know which TEXT-object it should be a shadow of!
2206 If - on the other hand - the shadow is a property to a text-object, this property is not needed.]]></description>
2207 <default><![CDATA[
2208 ]]></default>
2209 </property>
2210 <property name="thickness" type="string">
2211 <description><![CDATA[x,y
2212 Thickness in each direction, range 1-2]]></description>
2213 <default><![CDATA[
2214 ]]></default>
2215 </property>
2216 </type>
2217 <type id="SCALE" extends="GifBuilderObj">
2218 <property name="height" type="string">
2219 <description><![CDATA[pixels + calc
2220 ]]></description>
2221 <default><![CDATA[
2222 ]]></default>
2223 </property>
2224 <property name="params" type="string">
2225 <description><![CDATA[ImageMagickParams
2226 ]]></description>
2227 <default><![CDATA[
2228 ]]></default>
2229 </property>
2230 <property name="width" type="string">
2231 <description><![CDATA[pixels + calc
2232 ]]></description>
2233 <default><![CDATA[
2234 ]]></default>
2235 </property>
2236 </type>
2237 <type id="SHADOW" extends="GifBuilderObj">
2238 <property name="blur" type="int">
2239 <description><![CDATA[posint (1-99)
2240 Blurring of the shadow. Above 40 only values of 40,50,60,70,80,90 means something.
2241
2242 NOTE: Unfortunately the blurring capabilities of ImageMagick is not very mature in the version 4.2.9. This is addressed in the later version 5.2.0 where a gaussian blur-function is added. BUT as we do cannot use the latest ImageMagick development yet, this is not utilized so far.]]></description>
2243 <default><![CDATA[
2244 ]]></default>
2245 </property>
2246 <property name="color" type="string">
2247 <description><![CDATA[GraphicColor
2248 Shadow color]]></description>
2249 <default><![CDATA[
2250 ]]></default>
2251 </property>
2252 <property name="intensity" type="int">
2253 <description><![CDATA[posint(0-100)
2254 How "massive" the shadow is. This value can - if it has a high value combined with a blurred shadow - create a kind of soft-edged outline.]]></description>
2255 <default><![CDATA[
2256 ]]></default>
2257 </property>
2258 <property name="offset" type="string">
2259 <description><![CDATA[x,y
2260 Shadow offset]]></description>
2261 <default><![CDATA[
2262 ]]></default>
2263 </property>
2264 <property name="opacity" type="int">
2265 <description><![CDATA[posint (1-100)
2266 Opacity (transparency^-1)
2267 100% opacity = 0% transparency). Only active with a value for blur.]]></description>
2268 <default><![CDATA[
2269 ]]></default>
2270 </property>
2271 <property name="textObjNum" type="int">
2272 <description><![CDATA[pos-int
2273 Must point to the TEXT-object if these shadow-properties are not properties to a TEXT-object directly ("stand-alone-shadow"). Then the shadow needs to know which TEXT-object it should be a shadow of!
2274 If - on the other hand - the shadow is a property to a text-object, this property is not needed.]]></description>
2275 <default><![CDATA[
2276 ]]></default>
2277 </property>
2278 </type>
2279 <type id="GB_TEXT" extends="GifBuilderObj">
2280 <property name="align" type="string">
2281 <description><![CDATA[align
2282 Alignment of the text]]></description>
2283 <default><![CDATA[left]]></default>
2284 </property>
2285 <property name="angle" type="string">
2286 <description><![CDATA[degree
2287 Rotation degrees of the text.
2288
2289 NOTE: Angle is not available if spacing/wordSpacing is set.]]></description>
2290 <default><![CDATA[0
2291 Range: -90 til 90]]></default>
2292 </property>
2293 <property name="antiAlias" type="boolean">
2294 <description><![CDATA[FreeType antialiasing. Notice, the default mode is "on"!
2295
2296 Note: This option is not available if .niceText is enabled]]></description>
2297 <default><![CDATA[1]]></default>
2298 </property>
2299 <property name="breakWidth" type="int">
2300 <description><![CDATA[Defines the maximum width for an object, overlapping elements will force an automatic line break.
2301 ]]></description>
2302 <default><![CDATA[
2303 ]]></default>
2304 </property>
2305 <property name="breakSpace" type="float">
2306 <description><![CDATA[Defines a value that is multiplied by the line height of the current element.
2307 ]]></description>
2308 <default><![CDATA[1.0]]></default>
2309 </property>
2310 <property name="doNotStripHTML" type="boolean">
2311 <description><![CDATA[If set, HTML-tags in the string inserted are NOT removed. Any other way HTML-code is removed by default!]]></description>
2312 <default><![CDATA[0]]></default>
2313 </property>
2314 <property name="emboss" type="EMBOSS">
2315 <description><![CDATA[
2316 ]]></description>
2317 <default><![CDATA[
2318 ]]></default>
2319 </property>
2320 <property name="fontColor" type="stdWrap">
2321 <description><![CDATA[GraphicColor /stdWrap
2322 Font color]]></description>
2323 <default><![CDATA[black]]></default>
2324 </property>
2325 <property name="fontFile" type="string">
2326 <description><![CDATA[Font face (truetype font you can upload!!)]]></description>
2327 <default><![CDATA[Nimbus (Arial-clone)]]></default>
2328 </property>
2329 <property name="fontSize" type="int">
2330 <description><![CDATA[posint
2331 Font size]]></description>
2332 <default><![CDATA[12]]></default>
2333 </property>
2334 <property name="hide" type="boolean">
2335 <description><![CDATA[If this is true, the text is NOT printed.
2336 This feature may be used if you need a shadow-object to base a shadow on the text, but do not want the text to print.]]></description>
2337 <default><![CDATA[0]]></default>
2338 </property>
2339 <property name="hideButCreateMap" type="boolean">
2340 <description><![CDATA[If this option is set, the text will not be rendered. Shadows and emboss will, though, so don't apply these!! But this feature is also meant only to enable a text to generate the imageMap coordinates without rendering itself.]]></description>
2341 <default><![CDATA[
2342 ]]></default>
2343 </property>
2344 <property name="imgMap" type="IMGMAP">
2345 <description><![CDATA[
2346 ]]></description>
2347 <default><![CDATA[
2348 ]]></default>
2349 </property>
2350 <property name="iterations" type="int">
2351 <description><![CDATA[posint
2352 How many times the text should be "printed" onto it self. This will add the effect of bold text.
2353
2354 Note: This option is not available if .niceText is enabled]]></description>
2355 <default><![CDATA[1]]></default>
2356 </property>
2357 <property name="maxWidth" type="int">
2358 <description><![CDATA[pixels
2359 Sets the maximum width in pixels, the text must be. Reduces the fontSize if the text does not fit within this width.
2360
2361 Does not support setting alternative fontSizes in splitRendering options.
2362
2363 (By Rene Fritz <r.fritz@colorcube.de>)]]></description>
2364 <default><![CDATA[
2365 ]]></default>
2366 </property>
2367 <property name="niceText" type="boolean">
2368 <description><![CDATA[This is a very popular feature that helps to render small letters much nicer than the freetype library can normally do. But it also loads the system very much!
2369 The principle of this function is to create a black/white giffile in twice or more times the size of the actual gif-file and then print the text onto this is a scaled dimension. Afterwards ImageMagick (IM) scales down the mask and masks the font color down on the original gif-file through the temporary mask.
2370 The fact that the font  is  actually rendered in the double size and scaled down adds a more homogenous shape to the lettes. Some fonts are more critical than others though.  If you do not need the quality, then don't use the function.
2371
2372 Some properties:
2373 .before = IM-params before scale
2374 .after = IM-params after scale
2375 .sharpen = sharpen-value for the mask (after scaling), integer 0-99 (this enables you to make the text crisper if it's too blurred!)
2376 .scaleFactor = scaling-factor, int 2-5]]></description>
2377 <default><![CDATA[
2378 ]]></default>
2379 </property>
2380 <property name="offset" type="string">
2381 <description><![CDATA[x,y +calc
2382 Offset of the text]]></description>
2383 <default><![CDATA[0,0]]></default>
2384 </property>
2385 <property name="outline" type="OUTLINE">
2386 <description><![CDATA[
2387 ]]></description>
2388 <default><![CDATA[
2389 ]]></default>
2390 </property>
2391 <property name="shadow" type="SHADOW">
2392 <description><![CDATA[
2393 ]]></description>
2394 <default><![CDATA[
2395 ]]></default>
2396 </property>
2397 <property name="spacing" type="int">
2398 <description><![CDATA[posint
2399 Pixel-distance between letters. This may render ugly!]]></description>
2400 <default><![CDATA[0]]></default>
2401 </property>
2402 <property name="splitRendering.compX" type="string">
2403 <description><![CDATA[Split the rendering of a string into separate processes with individual configurations. By this method a certain range of characters can be rendered with another font face or size. This is very useful if you want to use separate fonts for strings where you have latin characters combined with eg. Japanese and there is a separate font file for each.
2404 You can also render keywords in another font/size/color.
2405
2406 Properties:
2407 splitRendering.compX = Additional pixelspace between parts, x direction
2408 splitRendering.compY = Additional pixelspace between parts, y direction
2409 splitRendering.[array] = keyword  [charRange, highlightWord]
2410 splitRendering.[array] {
2411   fontFile = Alternative font file for this rendering
2412   fontSize = Alternative font size for this rendering
2413   color = Alternative color for this rendering, works ONLY without "niceText"
2414   xSpaceBefore = x-Space before this part
2415   xSpaceAfter = x-Space after this part
2416   ySpaceBefore = y-Space before this part
2417   ySpaceAfter =  y-Space after this part
2418 }
2419
2420 Keyword: charRange
2421 splitRendering.[array].value = Commaseparated list of character ranges (eg. "100-200") given as Unicode character numbers. The list accepts optional starting and ending points, eg. " - 200" or " 200 -" and single values, eg. "65, 66, 67"
2422
2423 Keyword: highlightWord
2424 splitRendering.[array].value = Word to highlight, makes a case sensitive search for this.
2425
2426 Limitations:
2427 The pixelcompensation values are not corrected for scale factor used with niceText. Basically this means that when niceText is used, these values will have only the half effect.When word spacing is used the "highlightWord" mode doesn't work.The color override works only without "niceText".
2428
2429 Example:
2430   10.splitRendering.compX = 2
2431   10.splitRendering.compY = -2
2432   10.splitRendering.10 = charRange
2433   10.splitRendering.10 {
2434     value = 200-380 , 65, 66
2435     fontSize = 50
2436     fontFile =  typo3/sysext/core/Resources/Private/Font/nimbus.ttf
2437     xSpaceBefore = 30
2438   }
2439   10.splitRendering.20 = highlightWord
2440   10.splitRendering.20 {
2441     value = TheWord
2442     color = red
2443   }]]></description>
2444 <default><![CDATA[
2445 ]]></default>
2446 </property>
2447 <property name="splitRendering.compY" type="string">
2448 <description><![CDATA[Split the rendering of a string into separate processes with individual configurations. By this method a certain range of characters can be rendered with another font face or size. This is very useful if you want to use separate fonts for strings where you have latin characters combined with eg. Japanese and there is a separate font file for each.
2449 You can also render keywords in another font/size/color.
2450
2451 Properties:
2452 splitRendering.compX = Additional pixelspace between parts, x direction
2453 splitRendering.compY = Additional pixelspace between parts, y direction
2454 splitRendering.[array] = keyword  [charRange, highlightWord]
2455 splitRendering.[array] {
2456   fontFile = Alternative font file for this rendering
2457   fontSize = Alternative font size for this rendering
2458   color = Alternative color for this rendering, works ONLY without "niceText"
2459   xSpaceBefore = x-Space before this part
2460   xSpaceAfter = x-Space after this part
2461   ySpaceBefore = y-Space before this part
2462   ySpaceAfter =  y-Space after this part
2463 }
2464
2465 Keyword: charRange
2466 splitRendering.[array].value = Commaseparated list of character ranges (eg. "100-200") given as Unicode character numbers. The list accepts optional starting and ending points, eg. " - 200" or " 200 -" and single values, eg. "65, 66, 67"
2467
2468 Keyword: highlightWord
2469 splitRendering.[array].value = Word to highlight, makes a case sensitive search for this.
2470
2471 Limitations:
2472 The pixelcompensation values are not corrected for scale factor used with niceText. Basically this means that when niceText is used, these values will have only the half effect.When word spacing is used the "highlightWord" mode doesn't work.The color override works only without "niceText".
2473
2474 Example:
2475   10.splitRendering.compX = 2
2476   10.splitRendering.compY = -2
2477   10.splitRendering.10 = charRange
2478   10.splitRendering.10 {
2479     value = 200-380 , 65, 66
2480     fontSize = 50
2481     fontFile =  typo3/sysext/core/Resources/Private/Font/nimbus.ttf
2482     xSpaceBefore = 30
2483   }
2484   10.splitRendering.20 = highlightWord
2485   10.splitRendering.20 {
2486     value = TheWord
2487     color = red
2488   }]]></description>
2489 <default><![CDATA[
2490 ]]></default>
2491 </property>
2492 <property name="text" type="stdWrap">
2493 <description><![CDATA[This is text text-string on the gif-file. The item is rendered only if this string is not empty.
2494 The cObj->data-array is loaded with the page-record, if for example the GIFBUILDER-object is used by GMENU or IMGMENU]]></description>
2495 <default><![CDATA[
2496 ]]></default>
2497 </property>
2498 <property name="textMaxLength" type="int">
2499 <description><![CDATA[The maximum length of the text.  This is just a natural break that prevents incidental rendering of very long texts!]]></description>
2500 <default><![CDATA[100]]></default>
2501 </property>
2502 <property name="wordSpacing" type="int">
2503 <description><![CDATA[posint
2504 Pixel-distance between words.]]></description>
2505 <default><![CDATA[= ".spacing"*2]]></default>
2506 </property>
2507 </type>
2508 <type id="WORKAREA" extends="GifBuilderObj">
2509 <property name="clear" type="string">(isset)
2510 <description><![CDATA[
2511 ]]></description>
2512 <default><![CDATA[
2513 ]]></default>
2514 </property>
2515 <property name="set" type="string">
2516 <description><![CDATA[x,y,w,h + calc
2517 Sets another workarea
2518 ]]></description>
2519 <default><![CDATA[
2520 ]]></default>
2521 </property>
2522 </type>
2523 <type id="HMENU">
2524 <property name="1" type="mObj">
2525 <description><![CDATA[Required!
2526 Defines which menuObj that should render the menuitems on the various levels.
2527 1 is the first level, 2 is the second level, 3 is the third level, 4 is ....
2528
2529 Example:
2530 temp.sidemenu = HMENU
2531 temp.sidemenu.1 = GMENU  ]]></description>
2532 <default><![CDATA[ (no menu)]]></default>
2533 </property>
2534 <property name="2" type="mObj">
2535 <description><![CDATA[Defines which menuObj that should render the menuitems on the various levels.
2536 1 is the first level, 2 is the second level, 3 is the third level, 4 is ....
2537
2538 Example:
2539 temp.sidemenu = HMENU
2540 temp.sidemenu.1 = GMENU  ]]></description>
2541 <default><![CDATA[ (no menu)]]></default>
2542 </property>
2543 <property name="3" type="mObj">
2544 <description><![CDATA[Defines which menuObj that should render the menuitems on the various levels.
2545 1 is the first level, 2 is the second level, 3 is the third level, 4 is ....
2546
2547 Example:
2548 temp.sidemenu = HMENU
2549 temp.sidemenu.1 = GMENU  ]]></description>
2550 <default><![CDATA[ (no menu)]]></default>
2551 </property>
2552 <property name="4" type="mObj">
2553 <description><![CDATA[Defines which menuObj that should render the menuitems on the various levels.
2554 1 is the first level, 2 is the second level, 3 is the third level, 4 is ....
2555
2556 Example:
2557 temp.sidemenu = HMENU
2558 temp.sidemenu.1 = GMENU  ]]></description>
2559 <default><![CDATA[ (no menu)]]></default>
2560 </property>
2561 <property name="addQueryString" type="string">
2562 <description><![CDATA[see typolink.addQueryString
2563
2564 Notice: This works only for special=language.]]></description>
2565 <default><![CDATA[
2566 ]]></default>
2567 </property>
2568 <property name="alwaysActivePIDlist" type="stdWrap">
2569 <description><![CDATA[List of Integers /stdWrap
2570 This is a list of page UID numbers that will always be regarded as active menu items and thereby automatically opened regardless of the rootline.]]></description>
2571 <default><![CDATA[
2572 ]]></default>
2573 </property>
2574 <property name="begin" type="int">
2575 <description><![CDATA[int +calc
2576 The first item in the menu.
2577
2578 Example:
2579 This results in a menu, where the first two items are skipped starting with item number 3:
2580   begin = 3  
2581
2582 Notice: Affects all sub menus as well. (See "minItems" for notice)]]></description>
2583 <default><![CDATA[
2584 ]]></default>
2585 </property>
2586 <property name="entryLevel" type="int">
2587 <description><![CDATA[Defines at which level in the rootLine, the menu should start.
2588 Default is "0" which gives us a menu of the very first pages on the site.
2589 If the value is < 0, entryLevel is chosen from "behind" in the rootLine. Thus "-1" is a menu with items from the outermost level, "-2" is the level before the outermost...]]></description>
2590 <default><![CDATA[0]]></default>
2591 </property>
2592 <property name="excludeDoktypes" type="intList">
2593 <description><![CDATA[list of integers
2594 Enter the list of page document types (doktype) to exclude from menus. By default pages that are "not in menu" (5) are excluded and those marked for backend user access only (6). ]]></description>
2595 <default><![CDATA[5,6]]></default>
2596 </property>
2597 <property name="excludeUidList" type="int">
2598 <description><![CDATA[list of integers
2599 This is a list of page uid's to exclude when the select statement is done. Comma-separated. You may add "current" to the list to exclude the current page.
2600
2601 Example:
2602 The pages with these uid-number will NOT be within the menu!! Additionally the current page is always excluded too.
2603   excludeUidList = 34,2,current]]></description>
2604 <default><![CDATA[
2605 ]]></default>
2606 </property>
2607 <property name="if" type="if">
2608 <description><![CDATA[If "if" returns false, the menu is not generated]]></description>
2609 <default><![CDATA[
2610 ]]></default>
2611 </property>
2612 <property name="includeNotInMenu" type="boolean">
2613 <description><![CDATA[If set, pages with type "Not in menu" will be included in menus.
2614 The number "5" will simply be removed from the current dok-type list (which is by default "5,6" but can be changed by "excludeDoktypes", see above).]]></description>
2615 <default><![CDATA[
2616 ]]></default>
2617 </property>
2618 <property name="maxItems" type="int">
2619 <description><![CDATA[The maximum items in the menu. More items will be ignored.
2620
2621 Notice: Affects all sub menus as well. (See "minItems" for notice)]]></description>
2622 <default><![CDATA[
2623 ]]></default>
2624 </property>
2625 <property name="minItems" type="int">
2626 <description><![CDATA[The minimum items in the menu. If the number of pages does not reach this level, a dummy-page with the title "..." and uid=[currentpage_id] is inserted.
2627
2628 Notice: Affects all sub menus as well. To set the value for each menu level individually, set the properties in the menu objects (see "Common properties" table).]]></description>
2629 <default><![CDATA[
2630 ]]></default>
2631 </property>
2632 <property name="protectLvar" type="string">
2633 <description><![CDATA[boolean / keyword
2634 If set, then for each page in the menu it will be checked if an Alternative Page Language record for the language defined in "config.sys_language_uid" (typically defined via &L) exists for the page. If that is not the case and the pages "Localization settings" have the "Hide page if no translation for current language exists" flag set, then the menu item will link to a non accessible page that will yield an error page to the user. Setting this option will prevent that situation by simply adding "&L=0" for such pages, meaning that they will switch to the default language rather than keeping the current language.
2635 The check is only carried out if a translation is requested ("config.sys_language_uid" is not zero).
2636
2637 Keyword: "all"
2638 When set to "all" the same check is carried out but it will not look if "Hide page if no translation for current language exists" is set - it always reverts to default language if no translation is found.
2639
2640 For these options to make sense, they should only be used when "config.sys_language_mode" is not set to "content_fallback".]]></description>
2641 <default><![CDATA[
2642 ]]></default>
2643 </property>
2644 <property name="special" type="HMENU_SPECIAL">
2645 <description><![CDATA["directory" / "list" / "updated" / "browse" / "rootline" / "keywords" / "language"
2646 (See tsref for details:
2647 <a href="http://typo3.org/documentation/document-library/references/doc_core_tsref/4.1.0/view/8/11/#id4080403">
2648 http://typo3.org/documentation/document-library/references/doc_core_tsref/4.1.0/view/8/11/#id4080403</a> )]]></description>
2649 <default><![CDATA[
2650 ]]></default>
2651 </property>
2652 <property name="stdWrap" type="stdWrap">
2653 <description><![CDATA[
2654 ]]></description>
2655 <default><![CDATA[
2656 ]]></default>
2657 </property>
2658 <property name="wrap" type="stdWrap">
2659 <description>wrap/stdWrap<![CDATA[
2660 ]]></description>
2661 <default><![CDATA[
2662 ]]></default>
2663 </property>
2664 </type>
2665 <type id="HMENU_SPECIAL">
2666 <property name="value" type="stdWrap">
2667 <description><![CDATA[list of page-uid's /stdWrap]]></description>
2668 <default><![CDATA[
2669 ]]></default>
2670 </property>
2671 </type>
2672 <type id="directory" extends="HMENU_SPECIAL"/>
2673 <type id="list" extends="HMENU_SPECIAL"/>
2674 <type id="updated" extends="HMENU_SPECIAL">
2675 <property name="mode" type="string">
2676 <description><![CDATA[Which field in the pages-table to use. Default is "SYS_LASTCHANGED" (which is updated when a page is generated to the youngest tstamp of the records on the page), "manual" or "lastUpdated" will use the field "lastUpdated" (set manually in the page-record) and "tstamp" will use the "tstamp"-field of the pagerecord, which is set automatically when the record is changed. "crdate" will use "crdate"-field of the pagerecord. "starttime" will use the starttime field.
2677
2678 Fields with zero value is not selected anyway.]]></description>
2679 <default><![CDATA[
2680 ]]></default>
2681 </property>
2682 <property name="depth" type="string">
2683 <description><![CDATA[By default (if the value is not an integer) the depth is 20 levels. The range is 1-20. A depth of 1 means only the start id, depth of 2 means start-id + first level. NOTE: depth is relative to beginAtLevel.
2684 ]]></description>
2685 <default><![CDATA[
2686 ]]></default>
2687 </property>
2688 <property name="beginAtLevel" type="int">
2689 <description><![CDATA[Determines starting level for the pagetrees generated based on .value and .depth. Zero is default and includes the start id. 1=starts with the first row of subpages, 2=starts with the second row of subpages. Depth is relative to this starting point.
2690 ]]></description>
2691 <default><![CDATA[
2692 ]]></default>
2693 </property>
2694 <property name="maxAge" type="string">
2695 <description><![CDATA[Seconds+calc.
2696 Pages with update-dates older than currenttime minus this number of seconds will not be shown in the menu no matter what. Default is "not used". You may use +-*/ for calculations.
2697 ]]></description>
2698 <default><![CDATA[
2699 ]]></default>
2700 </property>
2701 <property name="limit" type="int">
2702 <description><![CDATA[Max number of items in the menu. Default is 10, max is 100.
2703 ]]></description>
2704 <default><![CDATA[10
2705 ]]></default>
2706 </property>
2707 <property name="excludeNoSearchPages" type="boolean">
2708 <description><![CDATA[If set, pages marked "No search" is not included into special-menus.
2709 Support for Mount Pages: Yes.
2710 ]]></description>
2711 <default><![CDATA[
2712 ]]></default>
2713 </property>
2714 </type>
2715 <type id="rootline" extends="HMENU_SPECIAL">
2716 <property name="range" type="string">
2717 <description><![CDATA[rootline creates a menu with pages from the "rootline" (see earlier in this reference)
2718
2719 .range = [begin-level] | [end-level] (same way as you reference the .entryLevel for HMENU)
2720
2721 This...
2722
2723 page.2 = HMENU
2724 page.2.special = rootline
2725 page.2.special.range = 1|-2
2726 page.2.special.targets.3 = page
2727 page.2.1 = TMENU
2728 page.2.1.target = _top
2729 page.2.1.wrap = <HR> | <HR>
2730 page.2.1.NO {
2731 linkWrap = | >
2732 }
2733 ... creates a menu like this:
2734
2735 Page level 1 > Page level 2 > Page level 3 > Page level 4 >
2736
2737 (The menu starts at level 1 and does NOT link to the current page (-2 is the level before). Further all pages on level 3 will have "page" as target and all other "_top")
2738 ]]></description>
2739 <default><![CDATA[
2740 ]]></default>
2741 </property>
2742 <property name="reverseOrder" type="boolean">
2743 <description><![CDATA[If set to true, the order of the rootline menu elements will be reversed.
2744 ]]></description>
2745 <default><![CDATA[false]]></default>
2746 </property>
2747 <property name="targets" type="string">
2748 <description><![CDATA[.targets.[0-x] targets
2749
2750 This...
2751
2752 page.2 = HMENU
2753 page.2.special = rootline
2754 page.2.special.range = 1|-2
2755 page.2.special.targets.3 = page
2756 page.2.1 = TMENU
2757 page.2.1.target = _top
2758 page.2.1.wrap = <HR> | <HR>
2759 page.2.1.NO {
2760 linkWrap = | >
2761 }
2762
2763 ... creates a menu like this:
2764
2765 Page level 1 > Page level 2 > Page level 3 > Page level 4 >
2766
2767 (The menu starts at level 1 and does NOT link to the current page (-2 is the level before). Further all pages on level 3 will have "page" as target and all other "_top")
2768
2769 ]]></description>
2770 <default><![CDATA[
2771 ]]></default>
2772 </property>
2773 </type>
2774 <type id="browse" extends="HMENU_SPECIAL">
2775 <property name="items" type="string">
2776 <description><![CDATA[.items ( "|" separated list of "itemnames")
2777 This kind of menu is built of items given by a list from the property ".item". Each element in the list (sep. by "|") is either a reserved itemname (see list) with a predefined function or a userdefined name which you can assign a link to any page. Note that the current page cannot be the root-page of a site.
2778 ]]></description>
2779 <default><![CDATA[
2780 ]]></default>
2781 </property>
2782 <property name="items.prevnextToSection" type="boolean">
2783 <description><![CDATA[items.prevnextToSection (boolean) - if set, the "prev" and "next" navigation will jump to the next section when it reaches the end of pages in the current section.
2784 ]]></description>
2785 <default><![CDATA[
2786 ]]></default>
2787 </property>
2788 <property name="next" type="HMENU_SPECIAL_browseItem">
2789 <description><![CDATA[next / prev : links to next page / previous page. Next and previous pages are from the same "pid" as the current page id (or "value") - that is the next item in a menu with the current page. Also referred to as current level.
2790
2791 If ".prevnextToSection" is set then next/prev will link to the first page of next section / last page of previous section.
2792 ]]></description>
2793 <default><![CDATA[
2794 ]]></default>
2795 </property>
2796 <property name="prev" type="HMENU_SPECIAL_browseItem">
2797 <description><![CDATA[next / prev : links to next page / previous page. Next and previous pages are from the same "pid" as the current page id (or "value") - that is the next item in a menu with the current page. Also referred to as current level.
2798
2799 If ".prevnextToSection" is set then next/prev will link to the first page of next section / last page of previous section.
2800 ]]></description>
2801 <default><![CDATA[
2802 ]]></default>
2803 </property>
2804 <property name="nextsection" type="HMENU_SPECIAL_browseItem">
2805 <description><![CDATA[nextsection / prevsection : links to next section / previous section. A section is defined as the subpages of a page on the same level as the parent (pid) page of the current page. Will not work if parent page of current page is the root page of the site.
2806 ]]></description>
2807 <default><![CDATA[
2808 ]]></default>
2809 </property>
2810 <property name="prevsection" type="HMENU_SPECIAL_browseItem">
2811 <description><![CDATA[nextsection / prevsection : links to next section / previous section. A section is defined as the subpages of a page on the same level as the parent (pid) page of the current page. Will not work if parent page of current page is the root page of the site.
2812 ]]></description>
2813 <default><![CDATA[
2814 ]]></default>
2815 </property>
2816 <property name="nextsection_last" type="HMENU_SPECIAL_browseItem">
2817 <description><![CDATA[Where nextsection/prevsection links to the first page in a section, these links to the last pages. If there is only one page in the section that will be both first and last. Will not work if parent page of current page is the root page of the site.
2818 ]]></description>
2819 <default><![CDATA[
2820 ]]></default>
2821 </property>
2822 <property name="prevsection_last" type="HMENU_SPECIAL_browseItem">
2823 <description><![CDATA[Where nextsection/prevsection links to the first page in a section, these links to the last pages. If there is only one page in the section that will be both first and last. Will not work if parent page of current page is the root page of the site.
2824 ]]></description>
2825 <default><![CDATA[
2826 ]]></default>
2827 </property>
2828 <property name="first" type="HMENU_SPECIAL_browseItem">
2829 <description><![CDATA[First / Last page on current level. If there is only one page on the current level that page will be both first and last.
2830 ]]></description>
2831 <default><![CDATA[
2832 ]]></default>
2833 </property>
2834 <property name="last" type="HMENU_SPECIAL_browseItem">
2835 <description><![CDATA[First / Last page on current level. If there is only one page on the current level that page will be both first and last.
2836 ]]></description>
2837 <default><![CDATA[
2838 ]]></default>
2839 </property>
2840 <property name="up" type="HMENU_SPECIAL_browseItem">
2841 <description><![CDATA[Links to the parent (pid) page of the current page. (up 1 level) Will always be available
2842 ]]></description>
2843 <default><![CDATA[
2844 ]]></default>
2845 </property>
2846 <property name="index" type="HMENU_SPECIAL_browseItem">
2847 <description><![CDATA[Links to the parent of the parent page of the current page (up 2 levels). May not be available if that page is out of the rootline.
2848 ]]></description>
2849 <default><![CDATA[
2850 ]]></default>
2851 </property>
2852 </type>
2853 <type id="HMENU_SPECIAL_browseItem">
2854 <property name="target" type="string">
2855 <description><![CDATA[optional/alternative target of the item]]></description>
2856 <default><![CDATA[
2857 ]]></default>
2858 </property>
2859 <property name="uid" type="int">
2860 <description><![CDATA[. (uid of page) - optional/alternative page-uid to link to
2861 ]]></description>
2862 <default><![CDATA[
2863 ]]></default>
2864 </property>
2865 <property name="fields" type="string">
2866 <description><![CDATA[.[itemnames].fields.[fieldname] (string)
2867 override field "fieldname" in pagerecord.]]></description>
2868 <default><![CDATA[
2869 ]]></default>
2870 </property>
2871 </type>
2872 <type id="keywords" extends="HMENU_SPECIAL">
2873 <property name="mode" type="string">
2874 <description><![CDATA[Which field in the pages-table to use for sorting. Default is "SYS_LASTCHANGED" (which is updated when a page is generated to the youngest tstamp of the records on the page), "manual" or "lastUpdated" will use the field "lastUpdated" (set manually in the page-record) and "tstamp" will use the "tstamp"-field of the pagerecord, which is set automatically when the record is changed. "crdate" will use "crdate"-field of the pagerecord. "starttime" will use the starttime field.
2875 ]]></description>
2876 <default><![CDATA[
2877 ]]></default>
2878 </property>
2879 <property name="depth" type="string">
2880 <description><![CDATA[By default (if the value is not an integer) the depth is 20 levels. The range is 1-20. A depth of 1 means only the start id, depth of 2 means start-id + first level. NOTE: depth is relative to beginAtLevel.
2881 ]]></description>
2882 <default><![CDATA[
2883 ]]></default>
2884 </property>
2885 <property name="beginAtLevel" type="int">
2886 <description><![CDATA[Determines starting level for the pagetrees generated based on .value and .depth. Zero is default and includes the start id. 1=starts with the first row of subpages, 2=starts with the second row of subpages. Depth is relative to this starting point.
2887 ]]></description>
2888 <default><![CDATA[
2889 ]]></default>
2890 </property>
2891 <property name="limit" type="int">
2892 <description><![CDATA[Max number of items in the menu. Default is 10, max is 100.
2893 ]]></description>
2894 <default><![CDATA[10
2895 ]]></default>
2896 </property>
2897 <property name="excludeNoSearchPages" type="boolean">
2898 <description><![CDATA[If set, pages marked "No search" is not included into special-menus.
2899 Support for Mount Pages: Yes.
2900 ]]></description>
2901 <default><![CDATA[
2902 ]]></default>
2903 </property>
2904 <property name="entryLevel" type="string">
2905 <description><![CDATA[.entryLevel = where in the rootline the search begins. Standard rootline syntax (-x to x)]]></description>
2906 <default><![CDATA[
2907 ]]></default>
2908 </property>
2909 <property name="setKeywords" type="stdWrap">
2910 <description><![CDATA[.setKeywords (/stdWrap) = lets you define the keywords manually by defining them as a commaseparated list. If this property is defined, it overrides the default, which is the keywords of the current page.
2911 ]]></description>
2912 <default><![CDATA[
2913 ]]></default>
2914 </property>
2915 <property name="keywordsField" type="string">
2916 <description><![CDATA[.keywordsField = defines the field in the pages-table in which to search for the keywords. Default is the fieldname "keyword". No check is done to see if the field you enter here exists, so enter an existing field, OK?!]]></description>
2917 <default><![CDATA["keyword"
2918 ]]></default>
2919 </property>
2920 <property name="keywordsField.sourceField" type="string">
2921 <description><![CDATA[.keywordsField.sourceField = defines the field from the current page from which to take the keywords being matched. The default is "keyword". (Notice that ".keywordsField" is only setting the page-record field to search in !)]]></description>
2922 <default><![CDATA["keyword"
2923 ]]></default>
2924 </property>
2925 </type>
2926 <type id="language" extends="HMENU_SPECIAL"/>
2927 <type id="userdefined" extends="HMENU_SPECIAL">
2928 <property name="file" type="string">
2929 <description><![CDATA[.file [resource] = filename of the php-file to include.
2930 ]]></description>
2931 <default><![CDATA[
2932 ]]></default>
2933 </property>
2934 </type>
2935 <type id="userfunction" extends="HMENU_SPECIAL">
2936 <property name="userFunc" type="string">
2937 <description><![CDATA[.userFunc = function-name
2938 Calls a user function/method in class which should (as with "userdefined" above) return an array with page records for the menu.
2939 ]]></description>
2940 <default><![CDATA[
2941 ]]></default>
2942 </property>
2943 </type>
2944 <type id="mObj">
2945 <property name="alternativeSortingField" type="string">
2946 <description><![CDATA[Normally the menuitems are sorted by the fields "sorting" in the pages- and tt_content-table. Here you can enter a list of fields that is used in the SQL- "ORDER BY" statement instead.
2947
2948 Examples (for "pages" table):
2949 alternativeSortingField = title desc
2950 (This will render the menu in reversed alphabetical order)
2951
2952 LIMITATIONS:
2953 This property works with normal menus, sectionsIndex menus and special-menus of type "directory".]]></description>
2954 <default><![CDATA[
2955 ]]></default>
2956 </property>
2957 <property name="begin" type="int">
2958 <description><![CDATA[int +calc
2959 The first item in the menu.
2960
2961 Example:
2962 This results in a menu, where the first two items are skipped starting with item number 3:
2963   begin = 3  
2964
2965 Takes precedence over HMENU.begin]]></description>
2966 <default><![CDATA[
2967 ]]></default>
2968 </property>
2969 <property name="imgNameNotRandom" type="boolean">
2970 <description><![CDATA[If set, the image names of menuitems is not randomly assigned. Useful switch if you're manipulating these images with some external JavaScript
2971
2972 NOTE: Don't set this if you're working with a menu with sectionIndex! In that case you need special unique names of items based on something else than the uid of the parent page of course!]]></description>
2973 <default><![CDATA[
2974 ]]></default>
2975 </property>
2976 <property name="imgNamePrefix" type="string">
2977 <description><![CDATA[prefix for the imagenames. This prefix is appended with the uid of the page.]]></description>
2978 <default><![CDATA["img"]]></default>
2979 </property>
2980 <property name="itemArrayProcFunc" type="string">
2981 <description><![CDATA[function-name
2982 The first variable passed to this function is the "menuArr" array with the menuitems as they are collected based on the type of menu.
2983 You're free to manipulate or add to this array as you like. Just remember to return the array again!
2984
2985 Note:
2986 .parentObj property is hardcoded to be a reference to the calling AbstractMenuContentObject object. Here you'll find eg. ->id to be the uid of the menu item generating a submenu and such.
2987
2988 Presetting element state
2989 You can override element states like SPC, IFSUB, ACT, CUR or USR by setting the key ITEM_STATE in the page records. See cObject HMENU/special=userdefined for more information.]]></description>
2990 <default><![CDATA[
2991 ]]></default>
2992 </property>
2993 <property name="maxItems" type="int">
2994 <description><![CDATA[The maximum items in the menu. More items will be ignored.
2995
2996 Takes precedence over HMENU.maxItems]]></description>
2997 <default><![CDATA[
2998 ]]></default>
2999 </property>
3000 <property name="minItems" type="int">
3001 <description><![CDATA[The minimum items in the menu. If the number of pages does not reach this level, a dummy-page with the title "..." and uid=[currentpage_id] is inserted.
3002
3003 Takes precedence over HMENU.minItems]]></description>
3004 <default><![CDATA[
3005 ]]></default>
3006 </property>
3007 <property name="sectionIndex" type="string">
3008 <description><![CDATA[This is a property that all menuObj's share. If it's set, then the menu will not consist of links to pages on the "next level" but rather links to the parent page to the menu, but in addition "#"-links to the cObjects rendered on the page. In other words, the menuitems will be links to the content elements (with colPos=0!) on the page. A section index.
3009
3010 .sectionIndex = [boolean]
3011
3012 If you set this, all content elements (from tt_content table) of "Column" = "Normal" and the "Index"-check box clicked are selected. This corresponds to the "Menu/Sitemap" content element when "Section index" is selected as type.
3013
3014 .sectionIndex.type = "all" / "header"
3015
3016 If you set this additional property to "all", then the "Index"-checkbox is not considered and all content elements with colPos=0 is selected.
3017
3018 If this property is "header" then only content elements with a visible header-layout (and a non-empty 'header'-field!) is selected. In other words, if the header layout of an element is set to "Hidden" then the page will not appear in the menu.
3019
3020 The data-record /Behind the scene:
3021
3022 When the menu-records are selected it works like this: The parent page record is used as the "base" for the menu-record. That means that any "no_cache" or "target"-properties of the parent page is used for the whole menu.
3023
3024 But of course some fields from the tt_content records are transferred: This is how it mapped:
3025
3026 $temp[$row[uid]]=$basePageRow;
3027
3028 $temp[$row[uid]]["title"]=$row["header"];
3029
3030 $temp[$row[uid]]["subtitle"]=$row["subheader"];
3031
3032 $temp[$row[uid]]["starttime"]=$row["starttime"];
3033
3034 $temp[$row[uid]]["endtime"]=$row["endtime"];
3035
3036 $temp[$row[uid]]["fe_group"]=$row["fe_group"];
3037
3038 $temp[$row[uid]]["media"]=$row["media"];
3039
3040 $temp[$row[uid]]["header_layout"]=$row["header_layout"];
3041
3042 $temp[$row[uid]]["bodytext"]=$row["bodytext"];
3043
3044 $temp[$row[uid]]["image"]=$row["image"];
3045
3046 $temp[$row[uid]]["sectionIndex_uid"]=$row["uid"];
3047
3048 Basically this shows that
3049
3050 - the field "header" and "subheader" from tt_content are mapped to "title" and "subtitle" in the pages-record. Thus you shouldn't need to change your standard menu-objects to fit this thing...
3051
3052 - the fields "starttime", "endtime", "fe_group", "media" from tt_content are mapped to the same fields in a pages-record.
3053
3054 - the fields "header_layout", "bodytext" and "image" are mapped to non-existing fields in the page-record
3055
3056 - a new field, "sectionIndex_uid" is introduced in the page-record which is detected by the function \TYPO3\CMS\Core\TypoScript\TemplateService->linkData(). If this field is present in a pagerecord, the linkData()-function will prepend a hash-mark and the number of the field.
3057
3058 NOTE:
3059
3060 You cannot create submenus to sectionIndex-menus. That doesn't make any sense as these elements are not pages and thereby have no "childs".
3061 ]]></description>
3062 <default><![CDATA[
3063 ]]></default>
3064 </property>
3065 <property name="showAccessRestrictedPages" type="string">
3066 <description><![CDATA[integer (page id) / keyword "NONE"
3067 If set, pages in the menu will include pages with frontend user group access enabled.  However the page is of course not accessible and therefore the URL in the menu will be linked to the page with the ID of this value. On that page you could put a login form or other message.
3068 If the value is "NONE" the link will not be changed and the site will perform page-not-found handling when clicked (which can be used to capture the event and act accordingly of course).
3069
3070 Properties:
3071 .addParam = Additional parameter for the URL, which can hold two markers; ###RETURN_URL### which will be substituted with the link the page would have had if it had been accessible and ###PAGE_ID### holding the page id of the page coming from (could be used to look up which fe_groups was required for access.
3072
3073 Example:
3074 showAccessRestrictedPages = 22
3075 showAccessRestrictedPages.addParams = &return_url=###RETURN_URL###&pageId=###PAGE_ID###
3076
3077 The example will link access restricted menu items to page id 22 with the return URL in the GET var "return_url" and the page id in the GET var "pageId".]]></description>
3078 <default><![CDATA[
3079 ]]></default>
3080 </property>
3081 <property name="submenuObjSuffixes" type="string">
3082 <description><![CDATA[Defines a suffix for alternative sub-level menu objects. Useful to create special submenus depending on their parent menu element. See example below.
3083
3084 Example:
3085 This example will generate a menu where the menu objects for the second level will differ depending on the number of the first level item for which the submenu is rendered. The second level objects used are "2" (the default), "2a" and "2b" (the alternatives). Which of them is used is defined by "1.submenuObjSuffixes" which has the configuration "a |*| |*| b". This configuration means that the first menu element will use configuration "2a" and the last will use "2b" while anything in between will use "2" (no suffix applied)
3086
3087 page.200 = HMENU
3088 page.200 {
3089   1 = TMENU
3090   1.wrap = <div style="width:200px; border: 1px solid;">|</div>
3091   1.expAll = 1
3092   1.submenuObjSuffixes = a |*|  |*| b
3093   1.NO.allWrap = <b>|</b><br/>
3094
3095   2 = TMENU
3096   2.NO.allWrap = <div style="background:red;">|</div>
3097
3098   2a = TMENU
3099   2a.NO.allWrap = <div style="background:yellow;">|</div>
3100
3101   2b = TMENU
3102   2b.NO.allWrap = <div style="background:green;">|</div>
3103 }
3104
3105 The result can be seen in the image below (applied on the testsite package):
3106
3107
3108
3109 Applies to GMENU, TMENU, GMENU_LAYERS, TMENU_LAYERS and GMENU_FOLDOUT on >= 2nd level in a menu.]]></description>
3110 <default><![CDATA[
3111 ]]></default>
3112 </property>
3113 </type>
3114 <type id="GMENU">
3115 <property name="ACT" type="GMENU_itemState">
3116 <description><![CDATA[Boolean / (config)
3117 Enable/Configuration for menu items which are found in the rootLine]]></description>
3118 <default><![CDATA[0]]></default>
3119 </property>
3120 <property name="ACTRO" type="GMENU_itemState">
3121 <description><![CDATA[Boolean / (config)
3122 Enable/Configuration for menu items which are found in the rootLine]]></description>
3123 <default><![CDATA[0]]></default>
3124 </property>
3125 <property name="ACTIFSUB" type="GMENU_itemState">
3126 <description><![CDATA[Boolean / (config)
3127 Enable/Configuration for menu items which are found in the rootLine and has subpages]]></description>
3128 <default><![CDATA[0]]></default>
3129 </property>
3130 <property name="ACTIFSUBRO" type="GMENU_itemState">
3131 <description><![CDATA[Boolean / (config)
3132 Enable/Configuration for menu items which are found in the rootLine and has subpages]]></description>
3133 <default><![CDATA[0]]></default>
3134 </property>
3135 <property name="CUR" type="GMENU_itemState">
3136 <description><![CDATA[Boolean / (config)
3137 Enable/Configuration for a menu item if the item is the current page.]]></description>
3138 <default><![CDATA[0]]></default>
3139 </property>
3140 <property name="CURRO" type="GMENU_itemState">
3141 <description><![CDATA[Boolean / (config)
3142 Enable/Configuration for a menu item if the item is the current page.]]></description>
3143 <default><![CDATA[0]]></default>
3144 </property>
3145 <property name="CURIFSUB" type="GMENU_itemState">
3146 <description><![CDATA[Boolean / (config)
3147 Enable/Configuration for a menu item if the item is the current page and has subpages.]]></description>
3148 <default><![CDATA[0]]></default>
3149 </property>
3150 <property name="CURIFSUBRO" type="GMENU_itemState">
3151 <description><![CDATA[Boolean / (config)
3152 Enable/Configuration for a menu item if the item is the current page and has subpages.]]></description>
3153 <default><![CDATA[0]]></default>
3154 </property>
3155 <property name="IFSUB" type="GMENU_itemState">
3156 <description><![CDATA[Boolean / (config)
3157 Enable/Configuration for menu items which has subpages]]></description>
3158 <default><![CDATA[0]]></default>
3159 </property>
3160 <property name="IFSUBRO" type="GMENU_itemState">
3161 <description><![CDATA[Boolean / (config)
3162 Enable/Configuration for menu items which has subpages]]></description>
3163 <default><![CDATA[0]]></default>
3164 </property>
3165 <property name="NO" type="GMENU_itemState">
3166 <description><![CDATA[Boolean / (config)
3167 The default "Normal" state rendering of Item. This is required for all menus.
3168 If you specify properties for the "NO" property you do not have to set it "1". Otherwise with no properties setting "NO=1" will render the menu anyways (for TMENU this may make sense).
3169
3170 The simplest menu TYPO3 can generate is then:
3171
3172 page.20 = HMENU
3173 page.20.1 = TMENU
3174 page.20.1.NO = 1
3175
3176 That will be pure <a> tags wrapped around page titles.]]></description>
3177 <default><![CDATA[1]]></default>
3178 </property>
3179 <property name="SPC" type="GMENU_itemState">
3180 <description><![CDATA[Boolean / (config)
3181 Enable/Configuration for 'Spacer' pages.
3182 Spacers are pages of the doktype "Spacer". These are not viewable pages but "placeholders" which can be used to divide menuitems.
3183
3184 Note: Rollovers doesn't work with spacers, if you use GMENU!]]></description>
3185 <default><![CDATA[0]]></default>
3186 </property>
3187 <property name="USERDEF1" type="GMENU_itemState">
3188 <description><![CDATA[Boolean / (config)
3189 Userdefined, see .itemArrayProcFunc for details on how to use this.
3190 You can set the ITEM_STATE values USERDEF1 and USERDEF2 (+...RO) from a script/userfunction processing the menu item array. See HMENU/special=userdefined or the property .itemArrayProcFunc of the menu objects.]]></description>
3191 <default><![CDATA[
3192 ]]></default>
3193 </property>
3194 <property name="USERDEF1RO" type="GMENU_itemState">
3195 <description><![CDATA[Boolean / (config)
3196 Userdefined, see .itemArrayProcFunc for details on how to use this.
3197 You can set the ITEM_STATE values USERDEF1 and USERDEF2 (+...RO) from a script/userfunction processing the menu item array. See HMENU/special=userdefined or the property .itemArrayProcFunc of the menu objects.]]></description>
3198 <default><![CDATA[
3199 ]]></default>
3200 </property>
3201 <property name="USERDEF2" type="GMENU_itemState">
3202 <description><![CDATA[Boolean / (config)
3203 (See above)]]></description>
3204 <default><![CDATA[
3205 ]]></default>
3206 </property>
3207 <property name="USERDEF2RO" type="GMENU_itemState">
3208 <description><![CDATA[Boolean / (config)
3209 (See above)]]></description>
3210 <default><![CDATA[
3211 ]]></default>
3212 </property>
3213 <property name="USR" type="GMENU_itemState">
3214 <description><![CDATA[Boolean / (config)
3215 Enable/Configuration for menu items which are access restricted pages that a user has access to.]]></description>
3216 <default><![CDATA[0]]></default>
3217 </property>
3218 <property name="USRRO" type="GMENU_itemState">
3219 <description><![CDATA[Boolean / (config)
3220 Enable/Configuration for menu items which are access restricted pages that a user has access to.]]></description>
3221 <default><![CDATA[0]]></default>
3222 </property>
3223 <property name="addParams" type="string">
3224 <description><![CDATA[Additional parameter for the menu-links.
3225 Example:
3226 "&some_var=some%20value"
3227 Must be rawurlencoded.
3228 Applies to GMENU, TMENU, IMGMENU]]></description>
3229 <default><![CDATA[
3230 ]]></default>
3231 </property>
3232 <property name="IProcFunc" type="string">
3233 <description><![CDATA[The internal array "I" is passed to this function and expected returned as well. Subsequent to this function call the menu item is compiled by implode()'ing the array $I[parts] in the passed array. Thus you may modify this if you need to.
3234 See example on the testsite and in media/scripts/example_itemArrayProcFunc.php]]></description>
3235 <default><![CDATA[
3236 ]]></default>
3237 </property>
3238 <property name="RO" type="boolean">
3239 <description><![CDATA[RollOver configuration enabled / disabled.
3240 If this is true, RO becomes a GIFBUILDER-object defining the layout of the menuitem when the mouse rolls over it]]></description>
3241 <default><![CDATA[0]]></default>
3242 </property>
3243 <property name="[Common Item States, see above]" type="GIFBUILDER">
3244 <description><![CDATA[This is the GIFBUILDER-options for each category of menuitem that can be generated.
3245
3246 NOTE: For the GMENU series you can also define the RollOver configuration for the item states. This means that you define the GIFBUILDER object for the 'Active' state by ACT and the RollOver GIFBUILDER object for the 'Active' state by ACTRO.
3247 This pattern goes for ALL the states except the SPC state.
3248
3249 SPECIAL:
3250 The ->OptionSplit function is run on the whole GIFBUILDER-configuration before the items are generated.]]></description>
3251 <default><![CDATA[
3252 ]]></default>
3253 </property>
3254 <property name="accessKey" type="boolean">
3255 <description><![CDATA[If set access-keys are set on the menu-links]]></description>
3256 <default><![CDATA[
3257 ]]></default>
3258 </property>
3259 <property name="applyTotalH" type="string">
3260 <description><![CDATA[objNumsList (offset)
3261
3262 This adds the total height of the previously generated menuitems to the offset of the GifBuilderObj's mentioned in this list.
3263
3264 Example:
3265 This is useful it you want to create a menu with individual items but a common background image that extends to the whole area behind the menu. Then you should setup the background image in each GIFBUILDER-object and include the object-number in this list.
3266 Look at the implementation in static_template "styles.gmenu.bug"]]></description>
3267 <default><![CDATA[
3268 ]]></default>
3269 </property>
3270 <property name="applyTotalW" type="string">
3271 <description><![CDATA[objNumsList (offset)
3272 This adds the total width of the previously generated menuitems to the offset of the GifBuilderObj's mentioned in this list.]]></description>
3273 <default><![CDATA[
3274 ]]></default>
3275 </property>
3276 <property name="collapse" type="boolean">
3277 <description><![CDATA[If set, "active" menuitems that has expanded the next level on the menu will now collapse that menu again.]]></description>
3278 <default><![CDATA[
3279 ]]></default>
3280 </property>
3281 <property name="debugItemConf" type="string">
3282 <description><![CDATA[Outputs (by the debug()-function) the configuration arrays for each menuitem. Useful to debug optionSplit things and such...
3283 Applies to GMENU, TMENU, IMGMENU]]></description>
3284 <default><![CDATA[
3285 ]]></default>
3286 </property>
3287 <property name="disableAltText" type="boolean">
3288 <description><![CDATA[If set, the alt-parameter of the images are not set. You can do it manually by "imgParams" (see below)]]></description>
3289 <default><![CDATA[
3290 ]]></default>
3291 </property>
3292 <property name="distributeX" type="int">
3293 <description><![CDATA[int+
3294 If set, the total width of all the menuitems will be equal to this number of pixels by adding/subtracting an equal amount of pixels to each menu items width.
3295 Will overrule any setting for ".useLargestItemX"]]></description>
3296 <default><![CDATA[
3297 ]]></default>
3298 </property>
3299 <property name="distributeY" type="int">
3300 <description><![CDATA[int+
3301 If set, the total height of all the menuitems will be equal to this number of pixels by adding/subtracting an equal amount of pixels to each menu items height.
3302 Will overrule any setting for ".useLargestItemY"]]></description>
3303 <default><![CDATA[
3304 ]]></default>
3305 </property>
3306 <property name="expAll" type="Boolean">
3307 <description><![CDATA[If this is true, the menu will always show the menu on the level underneath the menuitem. This corresponds to a situation where a user has clicked a menuitem and the menu folds out the next level. This can enable that to happen on all items as default.]]></description>
3308 <default><![CDATA[
3309 ]]></default>
3310 </property>
3311 <property name="forceTypeValue" type="int">
3312 <description><![CDATA[If set, the &type parameter of the link is forced to this value regardless of target. Overrides the global equivalent in 'config' if set.]]></description>
3313 <default><![CDATA[
3314 ]]></default>
3315 </property>
3316 <property name="JSWindow" type="boolean">
3317 <description><![CDATA[If set, the links of the menu-items will open by JavaScript in a pop-up window.
3318
3319 .newWindow boolean, that lets every menuitem open in its own window opposite to opening in the same window for each click.
3320
3321 .params is the list of parameters sent to the JavaScript open-window function, eg:
3322 width=200,height=300,status=0,menubar=0
3323
3324 NOTE: Does not work with JSMENU's]]></description>
3325 <default><![CDATA[
3326 ]]></default>
3327 </property>
3328 <property name="max" type="string">
3329 <description><![CDATA[x,y (calcInt)"
3330
3331 Forces the menu as a whole to these maximum dimensions]]></description>
3332 <default><![CDATA[
3333 ]]></default>
3334 </property>
3335 <property name="min" type="x,y (calcInt)">
3336 <description><![CDATA[Forces the menu as a whole to these minimum dimensions]]></description>
3337 <default><![CDATA[
3338 ]]></default>
3339 </property>
3340 <property name="overrideId" type="int">
3341 <description><![CDATA[integer (page-id)
3342 If set, then all links in the menu will point to this pageid. Instead the real uid of the page is sent by the parameter "&real_uid=[uid]".
3343 This feature is smart, if you have inserted a menu from somewhere else, perhaps a shared menu, but wants the menuitems to call the same page, which then generates a proper output based on the real_uid.
3344 Applies to GMENU, TMENU, IMGMENU]]></description>
3345 <default><![CDATA[
3346 ]]></default>
3347 </property>
3348 <property name="removeObjectsOfDummy" type="string">
3349 <description><![CDATA[objNumsList
3350
3351 If the menu is forced to a certain minimum dimension, this is a list of objects in the gifbuilder-object that is removed for this last item. This is important to do if the menuitems has elements that should only be applied if the item is actually a menuitem!!]]></description>
3352 <default><![CDATA[
3353 ]]></default>
3354 </property>
3355 <property name="stdWrap" type="stdWrap">
3356 <description><![CDATA[Wraps the whole item using stdWrap
3357
3358 Example:
3359 2 = TMENU
3360 2 {
3361   stdWrap.dataWrap = <ul class="{register :
3362      parentProperty}"> | </ul>
3363   NO {
3364     ...
3365   }
3366 }]]></description>
3367 <default><![CDATA[
3368 ]]></default>
3369 </property>
3370 <property name="target" type="string">
3371 <description><![CDATA[target
3372
3373 Target of the menulinks]]></description>
3374 <default><![CDATA[self]]></default>
3375 </property>
3376 <property name="submenuObjSuffixes" type="string">
3377 <description><![CDATA[Defines a suffix for alternative sub-level menu objects. Useful to create special submenus depending on their parent menu element. See example below.
3378
3379 Example:
3380 This example will generate a menu where the menu objects for the second level will differ depending on the number of the first level item for which the submenu is rendered. The second level objects used are "2" (the default), "2a" and "2b" (the alternatives). Which of them is used is defined by "1.submenuObjSuffixes" which has the configuration "a |*| |*| b". This configuration means that the first menu element will use configuration "2a" and the last will use "2b" while anything in between will use "2" (no suffix applied)
3381
3382 page.200 = HMENU
3383 page.200 {
3384   1 = TMENU
3385   1.wrap = <div style="width:200px; border: 1px solid;">|</div>
3386   1.expAll = 1
3387   1.submenuObjSuffixes = a |*|  |*| b
3388   1.NO.allWrap = <b>|</b><br/>
3389
3390   2 = TMENU
3391   2.NO.allWrap = <div style="background:red;">|</div>
3392
3393   2a = TMENU
3394   2a.NO.allWrap = <div style="background:yellow;">|</div>
3395
3396   2b = TMENU
3397   2b.NO.allWrap = <div style="background:green;">|</div>
3398 }
3399
3400 The result can be seen in the image below (applied on the testsite package):
3401
3402
3403
3404 Applies to GMENU, TMENU, GMENU_LAYERS, TMENU_LAYERS and GMENU_FOLDOUT on >= 2nd level in a menu.]]></description>
3405 <default><![CDATA[
3406 ]]></default>
3407 </property>
3408 <property name="useLargestItemX" type="boolean">
3409 <description><![CDATA[If set, then the width of all menuitems will be equal to the largest of them all.]]></description>
3410 <default><![CDATA[
3411 ]]></default>
3412 </property>
3413 <property name="useLargestItemY" type="boolean">
3414 <description><![CDATA[If set, then the height of all menuitems will be equal to the largest of them all.]]></description>
3415 <default><![CDATA[
3416 ]]></default>
3417 </property>
3418 <property name="wrap" type="wrap">
3419 <description><![CDATA[Wraps only if there were items in the menu!]]></description>
3420 <default><![CDATA[
3421 ]]></default>
3422 </property>
3423 <property name="wrapItemAndSub" type="stdWrap">Wrap/stdWrap
3424 <description><![CDATA[Wraps the whole item and any submenu concatenated to it.]]></description>
3425 <default><![CDATA[
3426 ]]></default>
3427 </property>
3428 </type>
3429 <type id="GMENU_itemState" extends="GIFBUILDER">
3430 <property name="ATagParams" type="string">
3431 <description><![CDATA[Additional parameters]]></description>
3432 <default><![CDATA[
3433 ]]></default>
3434 </property>
3435 <property name="ATagTitle" type="stdWrap">
3436 <description><![CDATA[string /stdWrap
3437
3438 which defines the title attribute of the a-tag. (See TMENUITEM also)]]></description>
3439 <default><![CDATA[
3440 ]]></default>
3441 </property>
3442 <property name="additionalParams" type="string">
3443 <description><![CDATA[string /stdWrap
3444