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