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