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