ext: htmlarea rte - acta.asso.fr · users manual text formating with inline elements the overall...

54
EXT: htmlArea RTE Table of Contents Copyright..................................................... 2 Credits..........................................................................2 License.........................................................................2 Sponsors......................................................................2 Introduction................................................. 3 What does it do?..........................................................3 Requirements..............................................................3 Support........................................................................3 Users Manual..............................................4 Text formating with inline elements............................4 List of inline elements.................................................4 Labels in the text formating drop-down list................4 Behavior of the text formating drop-down list and of the buttons..................................................................4 Text styling with classes on inline elements..............5 List of inline elements.................................................6 Labels in the text styling drop-down list.....................6 Behavior of the text styling drop-down list..................6 FAQ: How do I insert a line break instead of a paragraph?...................................................................7 FAQ: How do I remove a link?.....................................7 FAQ: How do I delete a table?.....................................7 FAQ: How do I configure the editor to use my CSS styles?..........................................................................7 FAQ: Why does the text style selection list remain empty?.........................................................................8 FAQ: How can I define custom bullet images?..........8 FAQ: Is it possible to style the appearance of links in the RTE itself?.............................................................8 FAQ: How can I use a Bengali Open Type font in the editor?..........................................................................8 FAQ: How do I configure the RTE to keep my custom tag?..............................................................................9 FAQ: Why is the class attribute on table tags always rendered as contenttable in the front end?................9 FAQ: Why are abbr and acronym tags not correctly rendered in the front end?..........................................9 FAQ: What are htmlArea plugins?..............................9 FAQ: Why are popup windows too small when they open?..........................................................................10 FAQ: Why is the editor not displayed with full width when I use the full window wizard?..........................10 FAQ: Is it possible to disable the “New magic image”?......................................................................10 FAQ: Why are images not displayed in the RTE?....10 FAQ: Why do style selector boxes remain disabled in IE?...............................................................................10 FAQ: Why can't I get all buttons to be displayed?...10 FAQ: Why does it take so long to load the editor in Internet Explorer?......................................................11 FAQ: Can I use htmlArea RTE with other RTE's?.....11 FAQ: Can htmlArea RTE be used in the front end?. 11 FAQ: What hotkeys are available in htmlArea RTE?.... 11 FAQ: How do I configure the anchor accessibility feature?......................................................................12 Configuration............................................13 Extension installation................................................13 Extension configuration variables............................13 User TSConfig............................................................14 Page TSConfig...........................................................15 Default Website Language........................................32 Server Configuration.................................................32 Default Configurations.............................33 Default configuration of RTE content transformation. 33 Typical default configuration....................................35 Minimal default configuration...................................38 Demo default configuration......................................39 Image default configuration......................................42 Tutorial....................................................... 44 Working around Internet Explorer caching problem... 44 Known Problems.......................................46 Internet Explorer and HTML tag abbr......................46 Internet Explorer and mod_gzip...............................46 Mozilla 1.3.1 and TCA feature dividers2Tabs...........46 “All-in-One Gestures” Firefox extension and the context menu............................................................46 Safari and CSS class names...................................46 Change Log...............................................47 EXT: htmlArea RTE - 1

Upload: lynga

Post on 15-Apr-2018

220 views

Category:

Documents


2 download

TRANSCRIPT

EXT: htmlArea RTE

Table of ContentsCopyright.....................................................2

Credits..........................................................................2License.........................................................................2Sponsors......................................................................2

Introduction.................................................3What does it do?..........................................................3Requirements..............................................................3Support........................................................................3

Users Manual..............................................4Text formating with inline elements............................4

List of inline elements.................................................4Labels in the text formating drop­down list................4Behavior of the text formating drop­down list and of the buttons..................................................................4

Text styling with classes on inline elements..............5List of inline elements.................................................6Labels in the text styling drop­down list.....................6Behavior of the text styling drop­down list..................6

FAQ: How do I insert a line break instead of a paragraph?...................................................................7FAQ: How do I remove a link?.....................................7FAQ: How do I delete a table?.....................................7FAQ: How do I configure the editor to use my CSS styles?..........................................................................7FAQ: Why does the text style selection list remain empty?.........................................................................8FAQ: How can I define custom bullet images?..........8FAQ: Is it possible to style the appearance of links in the RTE itself?.............................................................8FAQ: How can I use a Bengali Open Type font in the editor?..........................................................................8FAQ: How do I configure the RTE to keep my custom tag?..............................................................................9FAQ: Why is the class attribute on table tags always rendered as contenttable in the front end?................9FAQ: Why are abbr and acronym tags not correctly rendered in the front end?..........................................9FAQ: What are htmlArea plugins?..............................9FAQ: Why are popup windows too small when they open?..........................................................................10FAQ: Why is the editor not displayed with full width 

when I use the full window wizard?..........................10FAQ: Is it possible to disable the “New magic image”?......................................................................10FAQ: Why are images not displayed in the RTE?....10FAQ: Why do style selector boxes remain disabled in IE?...............................................................................10FAQ: Why can't I get all buttons to be displayed?.. .10FAQ: Why does it take so long to load the editor in Internet Explorer?......................................................11FAQ: Can I use htmlArea RTE with other RTE's?.....11FAQ: Can htmlArea RTE be used in the front end?. 11FAQ: What hotkeys are available in htmlArea RTE?....11FAQ: How do I configure the anchor accessibility feature?......................................................................12

Configuration............................................13Extension installation................................................13Extension configuration variables............................13User TSConfig............................................................14Page TSConfig...........................................................15Default Website Language........................................32Server Configuration.................................................32

Default Configurations.............................33Default configuration of RTE content transformation.33Typical default configuration....................................35Minimal default configuration...................................38Demo default configuration......................................39Image default configuration......................................42

Tutorial.......................................................44Working around Internet Explorer caching problem...44

Known Problems.......................................46Internet Explorer and HTML tag abbr......................46Internet Explorer and mod_gzip...............................46Mozilla 1.3.1 and TCA feature dividers2Tabs...........46“All­in­One Gestures” Firefox extension and the context menu............................................................46Safari and CSS class names...................................46

Change Log...............................................47

EXT: htmlArea RTE ­ 1

Copyright

Extension Key: rtehtmlarea

Copyright 2004­2008, Stanislas Rolland, <typo3(arobas)sjbr.ca>

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3 

a GNU/GPL CMS/Framework available from www.typo3.com

CreditsThe open source htmlArea editor was originally developed by Mihai Bazon and sponsored by interactivetools.com. A number of htmlArea plugins were contributed by various authors. Both the base editor and the plugins have been substantially modified for the purpose of this extension.

This extension is a continuation of the work initiated by Kasper Skårhøj and Philipp Borgmann who realized the initial integration using the RTE API introduced in TYPO3 3.6.0 as well as the initial integration of the TYPO3 image insertion and link insertion wizards.

Thanks to Ursula Renziehausen from Universität Erfurt for her great ideas, advice and patient support in improving multiple aspects or the RTE.

The editor uses an adaptation of open source Base script authored by Dean Edwards.

The editor uses an adaptation of open source Event Cache script authored by Mark Wubben.

Thanks to Jan Wulff for analyzing the issues related to Internet Explorer and mod_gzip on Apache servers.

The icons of the anchor accessibility feature are provided by creator and copyright­owner Cornelia Lange (http://www.clkm.de/).

Thanks to Pierre­Yves Gadina for the improved icons of the Insert Image button and of the Table Operations tool bar and Ursula Renziehausen has further improved many of the icons.

The initial toggleborders button logic and the automatic url and email recognition logic originate from Xinha, http://xinha.gogo.co.nz/, a fork of htmlArea.

Thanks to the people at http:www.cablan.net for their help and support in understanding and debugging the interfaces and configuration issues of the various versions of Aspell.

When performing paste operations with Mozilla/Firefox, the extension may trigger the installation of Mozilla/Firefox extension AllowClipboard Helper developed by Petr Simek.

LicenseThe original htmlArea editor was released under so­called “modified BSD” license. The original code was substantially modified. As permitted by the modified­BSD license, and with the permission of the original copyright holders, the modified version included in this extension is released, like all TYPO3 components, under the GNU General Public License.

SponsorsDevelopment of this extension was sponsored in part by the TYPO3 Association, by Universität Erfurt and Technische Universität Ilmenau, as well as by: Carla Froitzheim, Matthias Kappenberg, Ute Luft, Ralf Mertes, Peter Niederlag, Jost Reckmann, Pierre Rouwens, Krystian Szymukowicz, Veldhuizen Interactive, Sacha Vorbeck, Jan Wischnat.

You may sponsor further development of this extension by sending your contribution to stanislas.rolland(at)sjbr.ca through moneybookers.com or PayPal, or by contacting the author.

EXT: htmlArea RTE ­ 2

Introduction

What does it do?The extension offers a Rich Text Editor or RTE with the following features:

• Support for Firefox 0.8+, Mozilla 1.3.1+, Netscape 7.1+ and Safari 3.0.4+ on all platforms, and for IE5.5+ on Windows platforms;

• Integration of TYPO3 image insertion and link insertion browsers, configurable color selector and user element insertion dialog;

• Optional integration with the DAM media browser for image insertion;

• Configuration through TYPO3 Extension Manager, Page and User TSConfig RTE properties; three default sets of Page and User TSConfig configuration settings for typical situations, advanced users or demo environments;

• Integration with the translation facilities of TYPO3;

• Block and inline CSS style selector boxes with style descriptors imported from an external CSS file;

• Integration of the SpellChecker htmlArea plugin providing spell checking in many languages, with optional personal dictionaries for backend users;

• Integration of ContextMenu, TableOperations, InsertSmiley, FindReplace, RemoveFormat, CharacterMap, QuickTag and Acronym htmlArea plugins;

• Anchor accessibility feature;

• Hook on Lorem Ipsum wizard so that dummy content may be inserted when the editor is in wysiwyg mode;

• Optional configurable server­side HTML cleaning when content is pasted into the editor;

• A class that may be used in front end extensions to enable rich text editing of text fields.

RequirementsVersion 1.3.0+ of extension htmlARea RTE (extension key: rtehtmlarea) requires TYPO3 4.0.0+.

Version 1.2.2 is the last version of this extension that will run with TYPO3 3.8.

Version 1.1.6 is the last version of this extension that will run with TYPO3 3.7.

Version 1.0.1 is the last version of this extension that will run with TYPO3 3.6.

In TYPO3 4.0, the extension is included as system extension.

If spell checker feature is enabled in version 1.4.2+, then Static Info Tables version 2.0.0+ is required. If spell checker feature is enabled in versions before 1.4.2, version 1.1.0 (or more recent) of the Static Info Library extension (sr_static_info) is required.

The spell checker feature requires GNU Aspell 0.60+ to be installed on the server.

The spell checker requires PHP to be compiled with mbstring and pspell. If PHP is not compiled with pspell, the spell checker will function in shell_exec mode, if safe_mode is not enabled. However, the personal dictionaries feature is available only if safe_mode is not enabled.

The hook on the Lorem Ipsum wizard requires version 1.1.0+ of the Lorem Ipsum extension (lorem_ipsum).

Integration with DAM requires version 1.0.3+ of the Media (DAM) extension.

SupportYou may get support in the use of this extension by subscribing to news://news.netfielders.de/typo3.projects.rte.

EXT: htmlArea RTE ­ 3

Users Manual

Text formating with inline elementsThe overall idea behind this is to make it as comfortable as possible to write semantic inline markup without having to code. Buttons in general are very easy to access, but if there are too many of them, they are confusing.

Now, which elements you need most often depends on the type of text you are writing.

• If your site is about literature, you need a lot of q, cite, samp, dfn.

• If your site is about typo3, what you need is a lot of code, var, kbd, samp, dfn and and ocassionally q and cite.

• On a university website you have both subjects in different parts of the pagetree.

Therefore the idea is to have those elements as buttons you need most often, and the complete list in a drop­down list. Which buttons are shown and which elements are shown are configurable via Page and/or User TSConfig.

List of inline elementsb, bdo, big, cite, code, del, dfn, em, i, ins, kbd, q, samp, small, span, strike, strong, sub, sup, tt, u, var

Labels in the text formating drop-down listIn the drop­down list, depending on RTE configuration, both, the label and the tagname may be shown.

The label is important for those authors that do not know HTML, the tagname is convenient for the coders and also for the HTML novices, because this way they can learn their meanings and be enabled to use the status bar.

For example, depending on configuration, we may have:

q – Quotation

or

Quotation – q

or

Quotation

Labels are always shown in the author's language regardless of the content's language

The default order is alphabetical but may be configured otherwise.

Behavior of the text formating drop-down list and of the buttonsWhile in case of nested inline markup all buttons may be highlighted, only one of the options will be pre­selected in the drop­down list and therefore be shown in the collapsed drop­down list.

Legend:highlighted (selected) string:This is the string inside the textarea the author has selected using the mouse or keyboard.

| = cursor position inside the textarea.

Case 1: No string is highlighted and the cursor is outside any inline element:a) the option shown in the collapsed drop­down list is 'No text format';

b) the drop­down list and all buttons are disabled.

Case 2: No string is highlighted and the cursor is inside an inline element:Example: <code>wor| d</code>

a) the option shown in the collapsed drop­down list is the type of the inner inline element in which the cursor is positioned;

b) the drop­down list and all buttons are enabled;

c) the button corresponding to the type of the inner inline element in which the cursor is positioned is highlighted by means of  a white background; if the cursor is positioned inside nested inline elements, all corresponding buttons are highlighted by means of a white background;

EXT: htmlArea RTE ­ 4

d) if the author chooses a different markup in the drop­down list or clicks on a button that is not highlighted, the markup of the inner inline element is remapped;

e) if the author chooses 'Remove text format', the markup of the inner inline element is removed;

f) if the author clicks on an highlighted button, the markup of the innermost inline element of the corresponding type is removed;

g) the position of the cursor is unchanged.

Case 3: A string is highlighted and crosses multiple elements:a) the option shown in the collapsed drop­down list is 'No text format' (first option);

b) if the string crosses multiple block elements:

the drop­down list is disabled;

c) if the string crosses multiple inline elements:

the option shown in the collapsed drop­down list is 'No text format';

the drop­down list is enabled;

if the author chooses a markup, the highlighted string is wrapped with the chosen markup;

the resulting marked up string is not highlighted;

the cursor is positioned at the end of the marked up string.

Case 4: The highlighted string is not contained in any inline element:a) the option shown in the collapsed drop­down list is 'No text format';

b) if the author chooses a markup, the highlighted string is wrapped with the chosen markup;

c) the resulting marked up string is not highlighted;

d) the cursor is positioned at the end of the marked up string, so that This is great! becomes <strong> This is great!|</strong>.

Case 5: The highlighted string is contained in an inline element:a) the option shown in the collapsed drop­down list is 'No text format';

b) if the author chooses a markup, the highlighted string is wrapped with the chosen markup;

c) the resulting marked up string is not highlighted;

d) the cursor is positioned at the end of the marked up string.

Example 1:

<q>This is a very good question.</q>

becomes

<q>This is a <strong> very|</strong>question.</q>.

Example 2:

<q>This is great!</q>, he shouted.

becomes

<q><strong>This is great!|</strong></q>, he shouted.

Case 6: The highlighted string contains exactly the complete inline element:Example of highlighted string: <code>word</code>

a) The option shown in the collapsed drop­down list is the type of inline element corresponding to the highlighted string;

b) if the author chooses 'Remove text format', the inline markup gets removed: <code>word</code> becomes word|;

c) if the author chooses another markup, e.g. <var>, the markup wraps the highlighted node, so that <code>word</code> becomes <var><code>word|</code></var>.

EXT: htmlArea RTE ­ 5

Text styling with classes on inline elementsThe text styling drop­down list makes it possible to add a class to an inline element:

● whenever the cursor is put somewhere inside the element;

● when the element is completely selected.

The classes allowed for each type of inline element are configurable.

List of inline elementsIn addition to the inline elements listed under text formating above, classes may be assigned to abbr and acronym elements:

abbr, acronym, b, bdo, big, cite, code, del, dfn, em, i, ins, kbd, q, samp, small, span, strike, strong, sub, sup, tt, u, var

Labels in the text styling drop-down listIn the selectlist, both, the label and the class selector or class name may be shown:

label

class name ­ label

label ­  class name

Labels are always shown in the author's language regardless of the content's language.

The order is alphabetical.

Behavior of the text styling drop-down listOnly one of the classes is pre­selected in the Text Style selectlist and therefore shown in the collapsed selectlist. At all times, only classes allowed by the configuration settings are presented in the selectlist.

Legend:highlighted (selected) string:This is the string inside the textarea the user has selected using the mouse or keyboard.

| = cursor position inside the textarea.

Case 1: No string is highlighted and the cursor is outside any inline element:a) the option shown in the collapsed selectlist is 'No text style';

b) the selectlist is disabled.

Case 2: No string is highlighted and the cursor is inside an inline element:Example: <code>wor| d</code>

a) the option shown in the collapsed selectlist is the current value of the element's class attribute, or 'No text style' when the inline element bears no class attribute;

b) the selectlist is enabled and contains the classes allowed for the type of inline element;

c) if the author chooses a different class, the class attribute gets updated; the position of the cursor is unchanged;

d) if the author chooses 'No text style',  the current class is removed; if the element has no more class, the class attribute gets removed; if the element is a span element and it has no more attribute, the span element is removed; the position of the cursor is unchanged.

Case 3: A string is highlighted and crosses multiple elements:a) the option shown in the collapsed selectlist is 'No text style';

b) if the string crosses multiple block elements:

• the selectlist is disabled;

c) if the string crosses multiple inline elements:

the selectlist is enabled  and contains the classes allowed for the 'span' element;

if the author chooses a class, the highlighted string is wrapped with a 'span' element with the chosen class as value of its class attribute;

EXT: htmlArea RTE ­ 6

the resulting marked up string is not highlighted;

the cursor is positioned at the end of the string.

Case 4: The highlighted string is not contained in any inline element:a) the option shown in the collapsed selectlist is 'No text style';

b) if the author chooses a class, the highlighted string is wrapped with a 'span' element with the chosen class as value of its class attribute;

c) the resulting marked up string is not highlighted;

d) the cursor is positioned at the end of the highlighted string.

Case 5: The highlighted string is contained in an inline element:a) the option shown in the collapsed selectlist is 'No text style';

b) if the author chooses a class, the highlighted string is wrapped with a 'span' element with the chosen class as value of its class attribute;

c) the resulting marked up string is not highlighted;

d) the cursor is positioned at the end of the highlighted string.

Case 6: The hightlighted string contains exactly the complete inline element:Example of hightlighted string: <code>word</code>

a) the option shown in the collapsed selectlist is the current value of the element's class attribute, or 'No style' when the inline element bears no class attribute;

b) the selectlist is enabled and contains the classes allowed for the type of inline element;

c) if the author chooses a different class, the class attribute gets updated; the cursor is moved at the end of the highlighted string which gets de­highlighted;

d) if the author chooses 'No style', the current class is removed; if the element has no more class, the class attribute gets removed; if the element is a span element and it has no more attribute, the span element is removed; the cursor is moved at the end of the highlighted string which gets de­highlighted.

FAQ: How do I insert a line break instead of a paragraph?Using the Enter key inserts a paragraph (<p>, <hx> or <pre>). Using shift­Enter will insert a line break (<br />).

You may also disable RTE Page TSConfig property EnterParagraphs. Then,  Mozilla/Firefox browsers will behave in their native mode and pressing the Enter key will insert a br tag. However, Internet Explorer will continue to insert paragraphs on pressing the Enter key.

FAQ: How do I remove a link?To remove a link, select the link and click on the “Insert/Modify link” button. At the top of the popup window, you have the option to remove the link.

FAQ: How do I delete a table?You may proceed as follows:

• click in any cell in the table;

• in the editor status bar, displayed at the bottom of the editor frame, click on “table”;

• press the “Delete” key or the “Backspace” key.

You may also proceed as follows:

• click in any cell in the table;

• click on the right button of the mouse or pointing device;

EXT: htmlArea RTE ­ 7

• the context menu is displayed;

• at the bottom of the context menu, you have the option to delete the TABLE element.

In Internet Explorer, you may also proceed as follows:

• put the cursor just after the table and press the “Backspace” key;

• or click on the border of the table and press the “Delete” key.

FAQ: How do I configure the editor to use my CSS styles?In htmlArea RTE, the following style sheets apply to the contents of the editing area and are linked in the following order:

1. the htmlarea­edited­content.css file from the skin in use; it contains selectors for use in the editor, but not intended to be applied in the frontend;

2. a css file generated from the mainStyleOverride and inlineStyle assignments in Page TSConfig;

3. the css file specified by property contentCSS in Page TSConfig: you may define the styles you want to use in an external CSS file and assign the file name to this property.

An additional Page TSConfig property is recognized by htmlArea RTE: ignoreMainStyleOverride. If set, htmlArea will ignore the mainStyleOverride and inlineStyle sets of assignments and will use only files 1 and 3 mentioned above. This allows the Classic RTE to apply the css definitions defined in Page TSConfig and the htmlArea RTE to use the external css file (presumably containing the same or similar css definitions).

FAQ: Why does the text style selection list remain empty?This selection list should display the classes specified by RTE.default.classesCharacter. The specified classes must be defined in the CSS style sheet contained in the file specified by RTE.default.contentCSS.

If RTE.default.classesCharacter is empty, classes associated with the span tag are used. Classes not associated with any tag in the contentCSS style sheet will be displayed only if 

RTE.default.showTagFreeClasses = 1

FAQ: How can I define custom bullet images?You can define custom bullet images in your style sheet.

For example, you may define the following styles:

ul { list-style-type: disc; list-style-image: url(/media/bullets/bullet1_n.gif); list-style-position: outside; }li { padding-left:2px; }

FAQ: Is it possible to style the appearance of links in the RTE itself?«In the front end, all links are rendered correctly, but in the RTE itself the links are shown in standard color (blue) with underline, except links I've already visited. These are in black with underline and a hover effect. If I add new links, it's the same: Visited links become black, unvisited blue. The rest of the style sheet is parsed without problems. Any hints?»

This is a Mozilla/Firefox feature. In the editing area, the link attributes defined in the browser user profile take precedence over the corresponding attributes specified in your style sheet. Apparently, these preferences cannot be neutral.

In an editing area displayed by Internet Explorer, the style sheet specification is applied to the link.

You can force (not only) Firefox to take your style sheet rather than the user preference settings via the !important rule. Check this out for example:

a:link, a:visited{text-decoration:none !important;color:#c00 !important;

}

EXT: htmlArea RTE ­ 8

Now your links should turn red and the text­decoration should be gone. If you are using the same style sheet in the frontend and in the RTE, you can avoid forcing your link style on all frontend users by restricting it to the RTE editing area. Using the same example as above:

.htmlarea-content-body a:link, .htmlarea-content-body a:visited {text-decoration:none !important;color:#c00 !important;

}

FAQ: How can I use a Bengali Open Type font in the editor?Since Bengali is not well supported by all browsers, the recommended approach would be to add the Bengali font in the list of font families specified on the body selector of the RTE.default.contentCSS stylesheet. For example:

body { font-family: Verdana, sans-serif, Likhan; }

For some reason, with some fonts, the lines may overlap when using larger font sizes. It is the case with the Bengali Likhan font in Firefox 1.0.2. This may also be corrected through the stylesheet. For example:

body { font-family: Verdana, sans-serif, Likhan; line-height: 1.4; }

Note that, when using the Bengali Likhan font, a line­height with em or % unit may not produce any effect in Firefox 1.0.2.

FAQ: How do I configure the RTE to keep my custom tag?Add the following lines to your Page TSConfig:

RTE.default.proc.allowTags = list-of-allowed-tagsRTE.default.proc.HTMLparser_rte.tags.mycustomtag.protect =1

where

list­of­allowed­tags is the list of all allowed tags, including your custom tag, and

mycustomtag is the name of your tag.

FAQ: Why is the class attribute on table tags always rendered as contenttable in the front end?«Typo3 always replaces the class I selected in the RTE for a table with the class "contenttable". Do you have an idea how to switch that off?»

Assuming that you have installed extension CSS Styled Content (css_styled_content), add the following line in your TS template Setup field:

lib.parseFunc_RTE.externalBlocks.table.stdWrap.HTMLparser.tags.table.fixAttrib.class.list >

The contenttable class will then be added only if no class is specified for the table.

FAQ: Why are abbr and acronym tags not correctly rendered in the front end?Make sure that abbr and acronym are included in the list:

styles.content.links.allowTags

in your TS template constants.

FAQ: What are htmlArea plugins?Just as TYPO3 may be extended, the htmlArea editor provides a mechanism by which new features may be added without changing the core of the editor.

EXT: htmlArea RTE ­ 9

Each of the htmlArea plugins integrated in the present TYPO3 extension may be enabled/disabled by proper configuration of the extension.

The available plugins are the following:

• BlockStyle: adds to the tool bar a CSS style selection list; the selected style is applied to the currently selected paragraph; the styles are defined in an external CSS file identified by configuration properties of the extension;

• TextStyle: adds to the tool bar a CSS style selection list; the selected style is applied to the currently selected text; the styles are defined in an external CSS file identified by configuration properties of the extension;

• SpellChecker: adds to the tool bar a button that allows to check the spelling of the contents of the editor; some configuration properties of the extension apply specifically to this feature;

• ContextMenu: enables a contextual menu that is activated by clicking on the right button of the mouse;

• TableOperations: adds to the tool bar a set of buttons allowing to manipulate tables; the “table” button must also be enabled;

• InsertSmiley: adds to the tool bar a button that allows to insert a so­called “emoticon”;

• FindReplace: adds to the tool bar a button that allows to find and replace a specified string within the edited content;

• RemoveFormat: adds to the tool bar a button that offers format cleaning options; particularly useful to clean text pasted in from Microsoft Word;

• CharacterMap: adds to the tool bar a button that allows to insert a special character;

• QuickTag: adds to the tool bar a button to insert a tag to be applied to the currently selected text;

• TYPO3Browsers: replaces the original htmlArea popup windows for image and link insertion with the TYPO3 image and link internal browsers; note that this plugin is not available when the editor is used in the TYPO3 front end;

• SelectColor: replaces the original htmlArea color selector with one in which colors may be configured with RTE.default Page TSConfig properties;

• UserElements: adds to the tool bar a button to insert a custom tag or a shorthand; note that this plugin is not available when the editor is used in the TYPO3 front end; the custom elements may be maintained with extension Custom Tags (extension key: de_custom_tags);

• Acronym: adds to the tool bar a button to insert/edit acronyms and abbreviations; acronyms and abbreviations may be pre­defined with records of type Acronym inserted on the root of the TYPO3 backend;

• TYPO3HtmlParser: enables configurable server­side html cleaning when content is pasted into the editor; the cleaning operation is then performed on the server.

FAQ: Why are popup windows too small when they open?We have tried to make sure that all popup windows open with usable dimensions. Since the contents of the windows may be variable and may be localized, it is difficult to ensure that all windows will open with the correct size in all languages. Therefore, the editor will try to adjust the width and height of the windows to their specific contents and to center the windows on the screen.

In some OS/browser configurations, the editor may be prevented from resizing and moving the windows due to lack of privileges:

• If you use a Firefox browser, select through the browser menu Tools ­> Options ­> Web Characteristics ­> Javascript ­> Advanced, and check the options that allows scripts to Hide the status bar and that allow scripts to resize and move windows. Popup windows should then open with the correct size.

• If you use IE6 on Windows XP SP2, select through the browser menu Tools ­> Internet Options ­> Security ­> Trusted Sites, and add the url of TYPO3 site to the list of trusted sites. Popup windows should then open with the correct size.

FAQ: Why is the editor not displayed with full width when I use the full window wizard?If you are editing the most usual content element, that is the bodytext column of tt_content table, try to add the following line to your Page TSConfig:

TCEFORM.tt_content.bodytext.RTEfullScreenWidth= 100%

EXT: htmlArea RTE ­ 10

Note that this setting is now included in the default configuration of the extension.

If editing some other column, use the same model:

TCEFORM.my_table_name.my_column_name.RTEfullScreenWidth= 100%

FAQ: Is it possible to disable the “New magic image”?You may disable the magic image option in the TYPO3 «Insert/modify image» popup window with the following statement in Page TSConfig:

RTE.default.blindImageOptions = magic

Other options that may be added to this list are: plain and dragdrop.

FAQ: Why are images not displayed in the RTE?If you are using Mozilla or Firefox, you may have set the preference not to display images or to display images only from the originating site.

FAQ: Why do style selector boxes remain disabled in IE?When using IE, make sure that the browser cache setting is set to Automatic. In particular, with recent versions of Windows xp sp2, do not use the setting “On every visit to the page”.

FAQ: Why can't I get all buttons to be displayed?Try the following:

1. User TSConfig restricts the user to a specified set of buttons; therefore, for access to all buttons without restriction, in User TSConfig, set: options.RTEkeyList = *

2. Page TSConfig adds the buttons required to edit the table and field you wish to edit; therefore, to add all buttons by default, in Page TSConfig, set RTE.default.showButtons = *

3. If you are trying to edit the bodytext field of a content element from table tt_content, then the TCA field types and palettes may specify a list of buttons to add; this specification takes precedence over RTE.default.showButtons ; to override any such setting in TCA for the bodytext field of table tt_content, in Page TSConfig, set RTE.config.tt_content.bodytext.showButtons  = *

4. If you are trying to edit a text field from another table, then, in Page TSConfig, set RTE.config.tableName.columnName.showButtons  = *

If you have not modified $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['rtehtmlarea']['HTMLAreaPluginList'], all buttons should now be displayed (except perhaps the spellchecker button if some requirements are not met).

FAQ: Why does it take so long to load the editor in Internet Explorer?Try to adjust your IE browser cache settings:

1. From the IE main menu, navigate to: Tools ­> Internet Options ­> General ­> button: Configure...   or in some other IE versions: Extras ­> Internet Options : Temporary Files ­> button:  Advanced

2. Select the radio button Automatic.

Some server configuration settings may also help working around Internet Explorer caching problems. See the Server Configuration section and the Tutorial section of this document.

FAQ: Can I use htmlArea RTE with other RTE's?You can install as many RTE's has you wish. Their availability will be checked in the order in which they are loaded, that is in 

EXT: htmlArea RTE ­ 11

the order they are installed.

If you install first the classic RTE and, secondly, htmlArea RTE, a user with IE 5+ on Windows will be presented the classic RTE; a user with a supported version of Mozilla 1.3.1+, Firefox 0.8+ or Netscape 7.1+ on any platform will be presented the htmlArea RTE.

If you install htmlArea RTE before you install the classic RTE, htmlArea RTE will be presented to users with IE 5.5+ on Windows, Mozilla 1.3.1+, Firefox 0.8+ or Netscape 7.1+; the classic RTE will only be presented to users with IE 5 on Windows.

FAQ: Can htmlArea RTE be used in the front end?If you are a TYPO3 front end extension developer, you can use class tx_rtehtmlarea_pi2 to enable rich text editing of text fields. See extension Modern Guestbook Extended (sr_guestbook) for an example of how to do it. Note that the TYPO3Image, TYPO3Link , UserElements and the Acronym plugins are not available when the editor is used in the TYPO3 front end.

FAQ: What hotkeys are available in htmlArea RTE?Hoykeys maybe be configured for most buttons in Page TSConfig. The following hotkeys are defined by default, but may be reconfigured:

ctrl+l : Justify Left (if the corresponding button is configured in the toolbar of the RTE)

ctrl+e : Justify Center (if the corresponding button is configured in the toolbar of the RTE)

ctrl+r : Justify Right (if the corresponding button is configured in the toolbar of the RTE)

ctrl+j : Justify Full (if the corresponding button is configured in the toolbar of the RTE)

ctrl+n : Format block as Paragraph (if the corresponding select box is configured in the toolbar of the RTE)

ctrl+1 : Format block as Heading 1 (if the corresponding select box is configured in the toolbar of the RTE)

ctrl+2 : Format block as Heading 2 (if the corresponding select box is configured in the toolbar of the RTE)

ctrl+3 : Format block as Heading 3 (if the corresponding select box is configured in the toolbar of the RTE)

ctrl+4 : Format block as Heading 4 (if the corresponding select box is configured in the toolbar of the RTE)

ctrl+5 : Format block as Heading 5 (if the corresponding select box is configured in the toolbar of the RTE)

ctrl+6 : Format block as Heading 6 (if the corresponding select box is configured in the toolbar of the RTE)

The following hotkeys are predefined and reserved:

ctrl+a : Select all

ctrl+z : Undo (if the corresponding button is configured in the toolbar of the RTE)

ctrl+y : Redo (if the corresponding button is configured in the toolbar of the RTE)

ctrl+x : Cut

ctrl+c : Copy

ctrl+v : Paste

ctrl+0 : Clean Word

ctrl+space: Insert a non­breaking space

FAQ: How do I configure the anchor accessibility feature?When the feature is enabled with the Extension manager and when the TYPO3 element browser is enabled in the 'Insert/Modify link' dialogue, you may attach special accessibility features to CSS classes when they are applied to anchors with the TYPO3 element browser.

The classes should first be defined in the CSS file specified by RTE.default.contentCSS.

The classes should be part of the list specified by property RTE.default.classesAnchor.

The accessibility features attached to the classes are specified by property RTE.classesAnchor.

EXT: htmlArea RTE ­ 12

Configuration

Extension installationUse the Extension Manager to install the extension.

The extension may be installed as a global or local extension.

You may be requested to uninstall the following extension: rte_conf.

If you plan to use the SpellChecker plugin, you should install extension Static Info Tables (static_info_tables). The spell checker feature requires GNU Aspell 0.60+ to be installed on the server.

Custom elements presented by the UserElements plugin may be maintained with extension Custom Tags (extension key: de_custom_tags).

Note that the installation dialog will request to create table tx_rtehtmlarea_acronym; this table is used by plugin Acronym.

Upon installation directory uploads/tx_rtehtmlarea will be created. Personal dictionaries are stored in subdirectories of this directory.

Upon installation, if RTE  has not yet been enabled with the TYPO3 Install tool, it will be automatically enabled:

$TYPO3_CONF_VARS['BE']['RTEenabled'] = 1;

Extension configuration variablesThe Extension Manager installation dialog allows to set the following extension configuration variables:

• Default configuration settings: let you choose a set of default Page TSConfig and User TSConfig settings; select Typical (Most commonly used features are enabled. Select this option if you are unsure which one to use.) for the typical site requirements; select Minimal (Most features disabled. Administrator needs to enable them using TypoScript. For advanced administrators only.) for minimal settings; select Demo (Show­off configuration. Includes pre­configured styles. Not for production environments.) to explore some of the available features; default value is Typical;

• Enable images in the RTE: if this boolean variable is set, the use of images in the “Minimal” or the "Typical" default configuration of the RTE will be enabled.

• Enable click­enlarge on images: If set, a click­enlarge property may be set on images inserted in the RTE.

• Enable additional inline elements: If set, the potential use of additional inline elements will be enabled in the default configuration of the RTE.

• Enable the DAM media browser: if this boolean variable is set and if the DAM extension is installed, the DAM media browser will be used by the Insert image dialogue and in the file and upload tabs of the Insert link dialogue;

• Enable links accessibility icons: if this boolean variable is set, accessibility icons may be added to links. See Page TSConfig property RTE.classesAnchor;

• Enable Mozilla/Firefox extension: if this boolean variable is set, the triggering of installation of a browser extension to allow the RTE to access the clipboard will be enabled; the feature will trigger the installation of Mozilla/Firefox extension AllowClipboard Helper from mozilla.org; default value is 0;

• Url of AllowClipboard Helper: the full absolute Url of the AllowClipboard Helper extension for Mozilla/Firefox;

• Enable troubleshooting mode: if this boolean variable is set, a troubleshooting log will be displayed below the editing area; default value is 0;

• Enable compressed scripts: if this boolean variable is set, the compressed version of the editor scripts will be used; default value is 1; disabling compressed scripts is useful only in troubleshooting mode;

• Force Aspell command mode: if this boolean variable is set, the Aspell command interface will be used; this may be useful when PHP is compiled with pspell, but with an old version of Aspell, and a newer version is available in another directory; if set, PHP safe mode should NOT be enabled; default value is 0.

If the SpellChecker is not enabled, then the remaining configuration variables are irrelevant; note that if extension static_info_tables is not installed, SpellCheker will not be enabled.

• List of Aspell dictionaries: the list of dictionaries available to the htmlArea SpellChecker plugin; this list is used 

EXT: htmlArea RTE ­ 13

only if safe_mode is enabled; if safe_mode is not enabled, the list is automatically obtained from Aspell: default value is “en”;

• Default Aspell dictionary: the default dictionary to be used by the htmlArea SpellChecker plugin; this should be set to the default language of the site; default value is “en”;

• No spell checking languages: the list of languages for which Aspell does not provide spell checking (see Unsupported Languages) and for which the htmlArea SpellChecker plugin will therefore be disabled (not shown in the RTE tool bar); default value is “ja, km, ko, lo, th, zh, b5, gb”;

• Aspell directory: the server directory in which Aspell is installed; default value is “/usr/bin/aspell”.

User TSConfigUpon installation, the extension will set default properties in User TSConfig as specified by the extension configuration variable: Default configuration settings. Three default configurations are available: Minimal, Typical, and Demo. These default configurations are documented in the next section of the present document.

These properties may be modified for any particular BE user or BE user group, with the Typo3 User Admin Tool. Properties of User TSConfig are documented in this document: http://typo3.org/documentation/document­library/doc_core_tsconfig/User_TSconfig/

Property: Data type: Description:

setup.default.edit_RTE boolean Specifies that RTE editing should be enabled or disabled by default for all users.

options.RTEkeyList list of id­strings Specifies the list of RTE buttons to which the BE user or BE user group is restricted.

Default: * (means all)

Note: For the list of possible buttons, see property  showButtons  of Page TsConfig.

options.HTMLAreaPspellMode(htmlArea RTE only)

string Specifies the mode of spelling suggestions. Possible values are: ultra, fast, normal or bad­spellers.

Default: normal

Note: For more information on spelling suggestions modes, see Notes on the Different Suggestion Modes ).

options.enablePersonalDicts(htmlArea RTE only)

boolean Enables the personal dictionaries feature for the user or user group, when the feature is enabled in Page TSConfig.

Default: 0

Note: The option is ignored if PHP safe_mode is enabled.

Note: The feature must also be enabled in Page TSConfig.

options.uploadFieldsInTopOfEB boolean Inserts a file uploader on the 'file' tab of the Insert/Modify link dialogue as well as on the magic, plain and dragdrop tabs of the Insert/modify image dialogue.

Note: This applies only when buttons.link.TYPO3Browser.disabled and/or buttons.image.TYPO3Browser.disabled is not set.

Default: 0

options.createFoldersInEB boolean If set, a create folders option appears in the TYPO3 file browser.

Note: This applies only when buttons.link.TYPO3Browser.disabled and/or buttons.image.TYPO3Browser.disabled is not set.

Note: For admin­users this is always enabled.

Default: 0

options.noThumbsInRTEimageSelect  boolean If set, then image thumbnails are not shown in the image selector.

Default: 0

EXT: htmlArea RTE ­ 14

Property: Data type: Description:

options.RTESmallWidthoptions.RTESmallHeight(htmlArea RTE only)

pixels Width and height of the editor area when edit_wideDocument is NOT set.

Default: RTESmallWidth = 530, RTESmallHeight = 380

options.RTELargeWidthIncrementoptions.RTELargeHeightIncrement(htmlArea RTE only)

pixels Increments applied to the width and height of the editor area when edit_wideDocument IS set.

Default: RTELargeWidthIncrement= 150,  RTELargeHeilghtIncrement = 0

page.RTE.default.buttons.formatblock.restrictToItems(htmlArea RTE only)

list of id­strings List of options to which the user will be restricted in the block formating drop­down list.

The available options are: p, h1, h2, h3, h4, h5, h6, pre, address, blockquote, div

page.RTE.default.buttons.formattext.restrictTo(htmlArea RTE only)

list of id­strings Restricts the availability of options, or inline element types, in the text formating drop­down list.

Default: * (means all)

Page TSConfigUpon installation, the extension will set default properties in Page TSConfig as specified by the extension configuration variable: Default configuration settings. Three default configurations are available: Minimal, Typical, and Demo. These default configurations are documented in the next section of the present document.

These properties may be modified in the PageTS Config of your page; this is most often done on the root page of your site.

classes:Properties of each class available in the RTE.

Property: Description:

classes.[classname] Defines the classes available in the RTE. classname is the actual name of the style­class you're configuring. Notice you must specifically assign the classes to the various facilities also. See later.

Properties:.name = label of the class.value = the style for the class.noShow = boolean; if set, the style of the class is not used to render it in the pop-up selector.

# specification of alternating classes for rows and/or columns of a table.alternating { rows { startAt = int+ (default = 1) oddClass = class-name evenClass = class-name oddHeaderClass = class-name evenHeaderClass = class-name } columns { startAt = int+ (default = 1) oddClass = class-name evenClass = class-name oddHeaderClass = class-name evenHeaderClass = class-name }}

Example:# General configuration of the available classes:RTE.classes { mainBodyText { name = Body Text (Primary) value = font:bold; color:blue; }}# Specific configuration for the Character/Text Style menu:RTE.default.classesCharacter = mainBodyText

[page:RTE]

EXT: htmlArea RTE ­ 15

mutuallyExclusiveClasses:Lists of mutually exclusive or incompatible classes.

Property: Data type: Description:

mutuallyExclusiveClasses.[label](htmlArea RTE only)

list of id­strings Defines a set of classes that are mutually exclusive An element may have only one of the listed classes assigned to it at any given time.

[page:RTE]

colors:Properties of each color available in the RTE.

Property: Description:

colors.[id­string] Defines the colors available in the RTE.

Properties:.name = Label of the color in menu.value = The HTML-color value

Example:# General configuration of the available colors:RTE.colors { color1 { name = Background color value = blue } color2 { name = Another color I like! value = #775533 } noColor { name = No color value = }}# Specific setting for the font color selector:RTE.default.colors = color1, color2, noColor

[page:RTE]

fonts:Properties of each font available in the RTE.

Property: Description:

fonts.[id­string] Defines the fonts available in the RTE.

Properties:.name = Label of the font in menu.value = The font face value

Example:# General configuration of the available fonts:RTE.fonts { face1 { name = Verdana value = verdana, arial } face2 { name = Comic Sans value = Comic Sans MS } noFace { name = No font value = }}# Specific setting for the fontstyle selector:RTE.default.fontFace = face2 , face1, noFace

[page:RTE]

RTE interface configuration objects:These objects contain the actual configuration of the RTE interface.

EXT: htmlArea RTE ­ 16

Property: Description:

default.[...]config.[tablename].[field].[...]config.[tablename].[field].types.[type].[...]

These objects contain the actual configuration of the RTE interface.  For the properties available, refer to the table below. This is a description of how you can customize in general and override for specific fields/types.'RTE.default'  configures the RTE for all tables/fields/types'RTE.config.[tablename].[field]' configures a specific field. The values inherit the values from 'RTE.default' in fact this is overriding values.'RTE.config.[tablename].[field].types.[type]' configures a specific field in case the 'type'­value of the field matches type. Again this overrides the former settings.

[page:RTE]

RTE interface configuration properties:These properties may be set for each RTE interface configuration object.

Property: Data type: Description:

disabled boolean If set, the editor is disabled.

showButtons list of id­strings List of buttons that should be shown in th editor toolbar.

Note: showButtons = * shows all available buttons.

In the case of htmlArea RTE:

Available buttons are: blockstylelabel, blockstyle, textstylelabel, textstyle, fontstyle, fontsize, formatblock, blockquote, insertparagraphbefore, insertparagraphafter, lefttoright, righttoleft, left, center, right, justifyfull, orderedlist, unorderedlist, outdent, indent, formattext, bidioverride, big, bold, citation, code, definition, deletedtext, emphasis, insertedtext, italic, keyboard, monospaced, quotation, sample, small, span, strikethrough, strong, subscript, superscript, underline, variable, textcolor, bgcolor, textindicator, emoticon, insertcharacter, line, link, unlink, image, table, user, acronym, findreplace, spellcheck, chMode, inserttag, removeformat, copy, cut, paste, undo, redo, showhelp, about, toggleborders, tableproperties, tablerestyle, rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit, columnproperties, columninsertbefore, columninsertafter, columndelete, columnsplit, cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge

If extension static_info_tables is not installed, the spellcheck button is not enabled.

The following elements will always be shown: undo redo, about.

Buttons user and acronym are never available in the front end.

Button unlink is not available if button link is not available.

None of the table operations buttons are available is the button table is not available.

Note: Safari does not support the paste button.

Note: Opera does not support the copy, cut and paste buttons.

hideButtons list of id­strings List of buttons that should not be shown in the editor toolbar.

EXT: htmlArea RTE ­ 17

Property: Data type: Description:

toolbarOrder(htmlArea RTE only)

list of id­strings Specifies the order and grouping of buttons in the RTE tool bar. The keywords space, bar and linebreak may be used to insert a space, a separator or a line break at the corresponding position in the tool bar.

Default: blockstylelabel, blockstyle, space, textstylelabel, textstyle, linebreak,bar, formattext, bold,  strong, italic, emphasis, big, small, insertedtext, deletedtext, citation, code, definition, keyboard, monospaced, quotation, sample, variable, bidioverride, strikethrough, subscript, superscript, underline, span, bar, fontstyle, space, fontsize, bar, formatblock, blockquote, insertparagraphbefore, insertparagraphafter, bar, lefttoright, righttoleft, bar, left, center, right, justifyfull, bar, orderedlist, unorderedlist, outdent, indent, bar, textcolor, bgcolor, textindicator, bar, emoticon, insertcharacter, line, link, unlink, image, table, user, acronym, bar, findreplace, spellcheck, bar, chMode, inserttag, removeformat, bar, copy, cut, paste, bar, undo, redo, bar, showhelp, about, linebreak,  toggleborders, bar, tableproperties, tablerestyle, bar, rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit, bar, columnproperties, columninsertbefore, columninsertafter, columndelete, columnsplit, bar, cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge

keepButtonGroupTogether(htmlArea RTE only)

boolean Specifies that all buttons of a button group are displayed on the same line of the tool bar. A button group is delimited by a linebreak or by a bar.

Default: 0

Note: If enabled, the setting is honored only by Mozilla/Firefox and Safari. It is ignored when  the browser is Internet Explorer, Opera or Mozilla 1.3. 

buttons.formatblock.orderItems(htmlArea RTE only)

list of id­strings Specifies the order in which the block element types are presented in the block formating drop­down list.

The potential block element types are: p, h1, h2, h3, h4, h5, h6, pre, address, blockquote, div

If not set, the default order will be alphabetical, in the language of the current backend user.

Note: If set, any option not in the list will be removed from the drop­down list.

buttons.formatblock.removeItems(htmlArea RTE only)

list of id­strings List of options to be removed from the block formating drop­down list.

The default items are: p, h1, h2, h3, h4, h5, h6, pre, address, blockquote, div

Note: This is a synonym of hidePStyleItems.

hidePStyleItems list of id­strings List of options to be removed from the block formating drop­down list.

The deafult options are: p, h1, h2, h3, h4, h5, h6, pre, address, blockquote, div

In the case of htmlArea RTE, this is a synonym of buttons.formatblock.removeItems.

buttons.formatblock.prefixLabelWithTag(htmlArea RTE only)

boolean If set, the option name  in the block formating drop­down list is prefixed with the tagname.

Default: 0

buttons.formatblock.postfixLabelWithTag(htmlArea RTE only)

boolean If set, the option name e in the block formating drop­down list is postfixed with the tagname.

Default: 0

buttons.formatblock.items.[item­name].hotKey(htmlArea RTE only)

character A hotkey will be associated with the option of the block formating drop­down list identified by the item name.

EXT: htmlArea RTE ­ 18

Property: Data type: Description:

buttons.indent.useClass(htmlArea RTE only)

string Class name to be used when indenting by means of div sections with class attribute.

Default: indent

buttons.indent.useBlockquote(htmlArea RTE only)

boolean If set, indentation will be produced by means of blockquote tags instead of div sections with class attribute.

Default: 0

buttons.left.useClass(htmlArea RTE only)

string Class name to be used when aligning blocks of text to the left by means of class attribute.

Default: align­left

Note: This property is also used for text aligment in table operations.

buttons.center.useClass(htmlArea RTE only)

string Class name to be used when centering blocks of text by means of class attribute.

Default: align­center

Note: This property is also used for text aligment in table operations.

buttons.right.useClass(htmlArea RTE only)

string Class name to be used when aligning blocks of text to the right by means of class attribute.

Default: align­right

Note: This property is also used for text aligment in table operations.

buttons.justifyfull.useClass(htmlArea RTE only)

string Class name to be used when justifying blocks of text to both left and right by means of class attribute.

Default: align­justify

Note: This property is also used for text aligment in table operations.

buttons.left.useAlignAttributebuttons.center.useAlignAttributebuttons.right.useAlignAttributebuttons.justifyfull.useAlignAttribute(htmlArea RTE only)

boolean If anyone of these four properties is set, alignment will be produced by means of align attributes instead of class attributes.

Default: 0

buttons.blockstyle.tags.[tag­name].allowedClasses(htmlArea RTE only)

list of id­strings Specifies the classes allowed for the block  element identified by the tag name.

The classes must be defined, using the specific tag selector, either in one of the occurrences of  the inlineStyle property or in the CSS file specified by the contentCSS property.

If the property is empty for any tag, classes associated with the given tag in either the inlineSyle properties or in the contentCSS file are used.

The classes are presented in the drop­down list in alphabetical order in the language used by the backend user.

buttons.blockstyle.tags.div.allowedClasses  is a synonym of property classesParagraph (see below) and overrides it, if present.

buttons.blockstyle.tags.table.allowedClasses  is a synonym of property classesTable (see below) and overrides it, if present.

buttons.blockstyle.tags.td.allowedClasses  is a synonym of property classesTD (see below) and overrides it, if present.

EXT: htmlArea RTE ­ 19

Property: Data type: Description:

buttons.blockstyle.tags.all.allowedClasses(htmlArea RTE only)

list of id­strings Specifies the classes allowed for all block elements, in addition to the classes allowed for each specific element (see above).

The classes must be defined, without any tag selector, either in one of the occurrences of  the inlineStyle property or in the CSS file specified contentCSS property.

The classes are presented in the drop­down list in alphabetical order in the language used by the backend user.

classesParagraph list of id­strings In the case of htmlArea RTE:

This property is a synonym of buttons.blockstyle.tags.div.allowedClasses (see above).

In the case of the Classic RTE:

Specifies the classes available in the Block Style selector. The classes defined in the 'classesParagraph' value are prepended to the types of paragraphs options. They are inserted as <DIV>­tags with a class­parameter.

classesTable list of id­strings Classes available for tables. See description of 'classesCharacter'.

In the case of htmlArea RTE, each of the listed class must be defined either in one of the occurrences of  the inlineStyle property or in the CSS file specified contentCSS property.

In the case of htmlArea RTE, the same list of classes is used in the class selection list of the Table Properties dialog.

In the case of htmlArea RTE, this property is overridden by property  buttons.blockstyle.tags.table.allowedClasses, if present.

classesTD list of id­strings Classes available for tablecells. See description of 'classesCharacter'.

In the case of htmlArea RTE, each of the listed class must be defined either in one of the occurrences of  the inlineStyle property or in the CSS file specified contentCSS property.

In the case of htmlArea RTE, the same list of classes is used in the class selection list of the Cell Properties dialog.

In the case of htmlArea RTE, this property is overridden by property  buttons.blockstyle.tags.td.allowedClasses, if present.

buttons.blockstyle.showTagFreeClasses(htmlArea RTE only)

boolean Specifies that classes not associated with any tag in the contentCSS style sheet should be or should not be shown in the block style drop­down list.

Default: 0

Note: See also property showTagFreeClasses.

buttons.blockstyle.prefixLabelWithClassName(htmlArea RTE only)

boolean If set, the option name  in the block style drop­down list is prefixed with the class name.

Default: 0

buttons.blockstyle.postfixLabelWithClassName(htmlArea RTE only)

boolean If set, the option name e in the  block style drop­down list is postfixed with the class name.

Default: 0

buttons.formattext.orderItems(htmlArea RTE only)

list of id­strings Specifies the order in which the options, or inline element types, are presented in the text formating drop­down list.

If not set, the default order will be alphabetical, in the language of the current backend user.

buttons.formattext.removeItems(htmlArea RTE only)

list of id­strings List of options to be removed from the text formating drop­down list using same names as toolbar elements.

buttons.formattext.prefixLabelWithTag(htmlArea RTE only)

boolean If set, the option name  in the text formating drop­down list is prefixed with the tagname.

Default: 0

EXT: htmlArea RTE ­ 20

Property: Data type: Description:

buttons.formattext.postfixLabelWithTag(htmlArea RTE only)

boolean If set, the option name e in the text formating drop­down list is postfixed with the tagname.

Default: 0

buttons.textstyle.tags.[tag­name].allowedClasses list of id­strings Specifies the classes allowed for each inline element (tag) in the text styling drop­down list.Supported tags are: abbr, acronym, b, bdo, big, cite, code, del, dfn, em, i, ins, kbd, q, samp, small, span, strike, strong, sub, sup, tt, u, var

The classes must be defined either in one of the occurrences of the inlineStyle property or in the CSS file specified contentCSS property.

If the property is empty for any tag, classes associated with the given tag in either the inlineSyle properties or in the contentCSS file are used.

The classes are presented in the textstyle drop­down list in alphabetical order in the language used by the backend user.

buttons.textstyle.tags.all.allowedClasses list of id­strings Specifies the classes allowed for all inline elements, in addition to the classes allowed for each specific element (see above).

The classes must be defined either in one of the occurrences of the inlineStyle property or in the CSS file specified contentCSS property.

The classes are presented in the drop­down list in alphabetical order in the language used by the backend user.

buttons.textstyle.showTagFreeClasses boolean Specifies that classes  not associated with any tag in the contentCSS style sheet should be or should not be shown in the text styling drop­down list.

Default: 0

buttons.textstyle.prefixLabelWithClassName boolean If set, the option name  in the text styling drop­down list is prefixed with the class name.

Default: 0

buttons.textstyle.postfixLabelWithClassName boolean If set, the option name e in the text styling drop­down list is postfixed with the class name.

Default: 0

classesCharacter  list of id­strings In the case of htmlArea RTE:

This property is a synonym of buttons.textstyle.tags.span.allowedClasses (see above).

The classes must be defined either in one of the occurrences of the inlineStyle property or in the CSS file specified contentCSS property.

If the property is empty, classes associated with the span tag in either the inlineSyle properties or in the contentCSS file are used.

In the case of the Classic RTE:

Specifies the classes available in the Character Style selector. Although the Character Style selector is aimed at text­formatting, it will also apply classes to other elements, for instance tables or images if selected as well as links and table­cells. The allowed classes for these operations may be configured separately by listing the classes with the options, you find below. 

EXT: htmlArea RTE ­ 21

Property: Data type: Description:

showTagFreeClasses(htmlArea RTE only)

boolean Specifies that CSS classes  not associated with any tag in the contentCSS style sheet should be or should not be shown in the block style and the text style selection lists.

Default: 0

Note: Setting this property to 1 is equivalent to setting both buttons.blockstyle.showTagFreeClasses and buttons.textstyle.showTagFreeClasses to 1.

disablePCexamples boolean If set, the examples of classes in Paragraph and Character selectors are disabled.

Note: In the case of htmlArea RTE, the styling is removed on the options of the block styling and text styling drop­down lists.

disableTYPO3Browsers (htmlArea RTE only)

boolean If set, the TYPO3 element browser is disabled in both the image and link dialogues.

Default: 0

Note: The TYPO3 element browser is not available when the editor is used in the TYPO3 front end.

classesImage list of id­strings Classes available for images.

In the case of htmlArea RTE, each of the listed class must be defined either in one of the occurrences of  the inlineStyle property or in the CSS file specified by contentCSS property.

In the case of htmlArea RTE, the same list of classes is used in the class selection list of the Insert/Modify image dialog.

In the case of the Classic RTE, see description of 'classesCharacter'.

buttons.image.TYPO3Browser.disabled(htmlArea RTE only)

boolean If set, the TYPO3 image browser is disabled.

Default: 0

Note: The TYPO3 image browser is never available when the editor is used in the frontend.

blindImageOptions list of strings List of tab items in the image selector to remove. Key list is magic, plain, dragdrop, image

Note: If key image is in the list, the properties editing tab for any current image will not be presented.

Note: If integration with DAM is enabled, upload is also a possible tab.

Note: dragdrop is not available in Opera.

buttons.image.options.removeItems(htmlArea RTE only)

list of strings List of tab items to remove from the dialog of the image button. Possible tab items are: magic, plain, dragdrop, image

Note: If key image is in the list, the properties editing tab for any current image will not be presented.

Note: If integration with DAM is enabled, upload is also a possible tab.

Note: dragdrop is not available in Opera.

Note: This property is a synonymous of property blindImageOptions.

buttons.image.options.magic.maxWidth(htmlArea RTE only)

int+ Maximum width of magic images in pixels.

Default: 300

buttons.image.options.magic.maxHeight(htmlArea RTE only)

int+ Maximum height of magic images in pixels.

Default: 1000

Note: By setting a large enough height, images should be resized based on their width.

EXT: htmlArea RTE ­ 22

Property: Data type: Description:

buttons.image.options.plain.maxWidth(htmlArea RTE only)

int+ Maximum width of selectable plain images in pixels.

Default:  640

buttons.image.options.plain.maxHeight(htmlArea RTE only)

int+ Maximum height of selectable plain images in pixels.

Default: 680

buttons.image.title.useDAMColumn string Name of the column of the tx_dam table that will be used to set the image title attribute.

Default: caption

Note: This property is ignore if the extension configuration variable “Enable the DAM media browser” is not set.

buttons.image.properties.removeItems list of strings List of properties to remove from the image properties editing window. Key list is align, alt, border, class, clickenlarge, float, height, paddingTop, paddingRight, paddingBottom, paddingLeft, title, width

Note: When a plain image is edited, if proc.plainImageMode is set to lockDimentions, lockRatio or lockRatioWhenSmaller, the height property is removed from the properties window. If proc.plainImageMode is set to lockDimensions, both the width and height properties are removed.

buttons.image.properties.class.default string Class to be assigned by default to an image when it is inserted in the RTE.

classesLinks list of id­strings Classes available for links. See description of 'classesCharacter'.

In the case of htmlArea RTE, classesAnchor offers more options.

classesAnchor(htmlArea RTE only)

list of id­strings Classes available in the Insert/Modify link dialog.

These classes must be defined by the RTE.classesAnchor property.

The anchor accessibility feature should be enabled using the Extension Manager.

classesAnchor.default.page(htmlArea RTE only)

string The name of the default class selector for links to internal pages.

classesAnchor.default.url(htmlArea RTE only)

string The name of the default class selector for links to external url's.

classesAnchor.default.file(htmlArea RTE only)

string The name of the default class selector for links to files.

classesAnchor.default.mail(htmlArea RTE only)

string The name of the default class selector for links to email addresses.

buttons.link.TYPO3Browser.disabled(htmlArea RTE only)

boolean If set, the TYPO3 element browser is disabled.

Default: 0

Note: The TYPO3 element browser is never available when the editor is used in the frontend.

defaultLinkTarget string This sets the default target for new links in the RTE.

Note: See also the classesAnchor configuration.

blindLinkOptions list of strings List of tab items in the link selector to remove. Key list is page,file,url,mail,spec

Note: If integration with DAM is enabled, upload is also a possible tab.

buttons.link.options.removeItems(htmlArea RTE only)

list of strings List of tab items to remove from the dialog of the link button. Possible tab items are: page,file,url,mail,spec

Note: If integration with DAM is enabled, upload is also a possible tab.

Note: This property is a synonymous of property blindLinkOptions.

EXT: htmlArea RTE ­ 23

Property: Data type: Description:

buttons.link.targetSelector.disabled(htmlArea RTE only)

boolean If set, the selection of link target is removed from the link insertion/update dialog.

Default : 0

buttons.link.popupSelector.disabled(htmlArea RTE only)

boolean If set, the selection of a popup window as link target is removed from the link insertion/update dialog.

Default: 0

buttons.link.pageIdSelector.enabled(htmlArea RTE only)

boolean If set, the specification of a page id without using the page tree is removed from the link insertion/update dialog.

Note: This feature is intended for authors who have to deal with a very large page tree. Note that the feature is disabled by default.

Default: 0

buttons.acronym.PIDList list of pid's List of page id's from which to obtain the acronym records.

Default: 0

Note: If no Acronym records are found in the specified PID's, the acronym button will not be present in the toolbar. If no records of type acronym or abreviation are found, the corresponding tab of the acronym dialogue will not be disabled.

Note: In IE, before IE7, the abreviation tab of the acronym dialogue is never shown.

colors  list of id­strings Defines the specific colors generally available in the color selectors. The id­strings must be configured in the RTE.colors array (see description earlier).

Example:RTE.default { colors = color1, color2,noColor}

disableColorPicker boolean Disables the color picker matrix in all color dialogs. The color picker lets you select web­colors.

Note: In the case of htmlArea RTE, this applies only when the TYPO3 configurable color selection dialog is enabled.

disableSelectColor(htmlArea RTE only)

boolean If set, the TYPO3 configurable color selection dialogue is disabled.

Default: 0

Note: This property is ignored when Firefox is used.

hideFontFaces  list of id­numbers,* removes all

Lets you disable any of the default font faces in the Font Style selector. These are the possible values you can set:

1: Arial2: Arial Black3: Verdana4: Times New Roman5: Garamond6: Lucida Handwriting7: Courier8: Webdings9: Wingdings

fontFace  list of id­strings Defines the specific fonts generally available in the font selector. The id­strings must be configured in the RTE.fonts array (see description earlier).

hideFontSizes  list of size­numbers,* removes all

Lets you disable any of the default font sizes available in the Font Size selector. Values are ranging from 1­7.

EXT: htmlArea RTE ­ 24

Property: Data type: Description:

hideTableOperationsInToolbar(htmlArea RTE only)

boolean Specifies that table operations buttons should be hidden in the tool bar or not.

Default: 0

Note: If enabled, table operations will appear only in the context menu, provided that they may be enabled in the given context.

keepToggleBordersInToolbar(htmlArea RTE only)

boolean This property is deprecated. Use property buttons.toggleborders.keepInToolbar

buttons.toggleborders.keepInToolbar(htmlArea RTE only)

boolean If set, the toggleborders button will be kept in the tool bar even if property hideTableOperationsInToolbar is set.

Default: 0

buttons.toggleborders.setOnTableCreation(htmlArea RTE only)

boolean If set, and if the toggleborders button is enabled, the table borders will be toggled on when a new table is created.

Default : 0

disableContextMenu(htmlArea RTE only)

boolean Specifies that the context menu should be disabled or not.

Default: 0

Note: This property is a synonymous of disableRightClick property.

disableRightClick boolean If set, the right click (context) menu of the RTE is disabled.

showStatusBar(htmlArea RTE only)

boolean Specifies that the editor status bar should be displayed or not.

Default: 0

buttons.[button­name].hotKey(htmlArea RTE only)

character A hotkey will be associated with the specified button­name.

Note: Care should be taken that the hotkey does not conflict with pre­defined hotkeys. If it does, the hotkey will override any previously registered hotkey.

mainStyleOverride  string By default the editor style section is set with the CSS­code below. However you may override this by this option.

Default for Classic RTE:

BODY { border: 1px black solid; border-top: none; margin : 2 2 2 2; font-family:Verdana; font-size:10px; color:black; background-color:white;}TD {font-family:Verdana; font-size:10px;}P {margin-top:0px; margin-bottom:5px;}DIV {margin-top:0px; margin-bottom:5px;}OL {margin: 5px 10px 5px;}UL {margin: 5px 10px 5px;}BLOCKQUOTE {margin-top:0px; margin-bottom:0px;}

Default for htmlArea RTE:

body.htmlarea-content-body {font-family: Verdana,sans-serif; font-size: 12px;color: black;background-color: white;

}td { }div { }pre { }ol { }ul { }blockquote { }

Note: In the case of htmlArea RTE, see also property ignoreMainStyleOverride.

EXT: htmlArea RTE ­ 25

Property: Data type: Description:

mainStyleOverride_add.[key] string (css­style)

Allows to add style configuration to the values above (for .mainStyleOverride above)Keys are:.P / .DIV / .TD /.BODY / .BLOCKQUOTE /.OL / .UL / .PRE / .Hx will all take values which are prepended to the above settings.

Note: In the case of htmlArea RTE, see also property ignoreMainStyleOverride.

mainStyle_fontmainStyle_sizemainStyle_colormainStyle_bgcolor

string Setting the default font­family (verdana) , font­size (10px), font­color (black) and background color (white)The default is shown in “.mainStyleOverride” above.

Note: In the case of htmlArea RTE, see also property ignoreMainStyleOverride.

inlineStyle.[any­keystring] string CSS code to be included in the editor style section. This will be included after the default code.

Note: In the case of htmlArea RTE, see also property ignoreMainStyleOverride.

skin(htmlArea RTE only)

resource The skin contains the CSS files and the images used to style the editor.The skin is specified by specifying the location of the main CSS file to be used to style the editor. The folder containing the CSS file MUST also contain a structure of folders and files identical to the structure found in the folder of the default skin. All folder names and all file names must be identical.

Default: EXT:rtehtmlarea/htmlarea/skins/default/htmlarea.css

Note: these example skins do not work in Mozilla 1.3; if the property is set to one of them, the default skin will be used when the browser is Mozilla 1.3.

Note: See also property ignoreMainStyleOverride.

contentCSS(htmlArea RTE only)

resource The CSS file that contains the style definitions that should be applied to the edited contents.

The selectors defined in this file will also be used in the block style and text style selection lists.

Default: EXT:rtehtmlarea/res/contentcss/default.css

For example, this default could be overridden with: fileadmin/styles/my_contentCSS.css

Note: See also property ignoreMainStyleOverride.

ignoreMainStyleOverride(htmlArea RTE only)

boolean Instruct htmlArea RTE to ignore properties mainStyleOverride and inlineStyle.

Default: 0

Note: In htmlArea RTE, the following style sheets apply to the contents of the editing area and are linked in the following order:1. the htmlarea­edited­content.css file from the skin being used (contains selectors for use in the editor but not intended to be applied in the frontend);2. a css file generated from the mainStyleOverride and inlineStyle assignments;3. the css file specified by contentCSS in Page TSConfig.When ignoreMainStyleOverride is enabled, the middle style sheet is ignored and only the first and third style sheets are used.

proc ­>PROC Customization of the server processing of the content ­ also called 'transformations'.See http://typo3.org/documentation/document­library/core­documentation/doc_core_api/current/view/5/2/

EXT: htmlArea RTE ­ 26

Property: Data type: Description:

enableWordClean(htmlArea RTE only)

boolean/­>HTMLparser

Specifies that text pasted from external sources, presumably from Microsoft Word, should be “cleaned” or not.

Default: 0

Note:If no HTMLparser configuration is specified, a limited default cleaning operation will be performed. If a HTMLparser specification is specified, parsing will be performed on the server at the time of the paste operation.

Note: Additional cleanup may be performed by the user when the removeformat  button is enabled.

removeComments(htmlArea RTE only)

boolean Specifies that html comments should be removed or not by the editor on save and on toggle to HTML source mode.

Default: 0

removeTags(htmlArea RTE only)

list of tags List of tags that should be removed by the editor on save and on toggle to HTML source mode.

removeTagsAndContents(htmlArea RTE only)

list of tags List of tags that should be removed by the editor, contents included, on save and on toggle to HTML source mode. The tags and the contents inside the tags will be removed.

useCSS(htmlArea RTE only)

boolean Specifies that Mozilla/Firefox should use style attributes or not. When enabled, Mozilla/Firefox use span tags with style attributes rather than tags such as b, i, font, etc.

Default: 0

disableEnterParagraphs(htmlArea RTE only)

boolean Specifies that the insertion of paragraphs when hitting the Enter key in Mozilla/Firefox, Safari or Opera should be disabled.

Default: 0

Note: If NOT enabled, the behavior of Mozilla/Firefox, Safari and Opera is modified as follows:  when the Enter key is pressed, instead of inserting a br tag, the behavior of Internet Explorer is simulated and a new paragraph is created.

Note: If enabled, the behavior of Mozilla/Firefox, Safari and Opera is not modified: a br tag is inserted when the Enter key is pressed.

disableObjectResizing(htmlArea RTE only)

boolean Specifies that Mozilla/Firefox should not provide handles for resizing objects such as images and tables.

Default: 0

removeTrailingBR(htmlArea RTE only)

boolean Specifies that trailing br tags should be removed from block elements.

Default: 0

Note: If set, any trailing br tag in a block element will be removed on save and/or change mode. However, multiple trailing br tags will be preserved.

Note: In Mozilla/Firefox/Netscape, whenever some text is entered in an empty block, a trailing br tag is added by the browser.

hideTags(htmlArea RTE only)

list of tags This property is deprecated. Use property buttons.inserttag.denyTags

buttons.inserttag.denyTags(htmlArea RTE only)

list of tags List of tag names that should NOT be shown by the dialog of the inserttag button.

Note: Listed tag names should be among the following: a, abbr, acronym, address, b, big, blockquote, cite, code, div, em, fieldset, font, h1, h2, h3, h4, h5, h6, i, legend, li, ol, p, pre, q, small, span, strong, sub, sup, table, tt, ul

EXT: htmlArea RTE ­ 27

Property: Data type: Description:

buttons.inserttag.allowedAttribs(htmlArea RTE only)

list of attributes List of attribute names that should be shown for all tags in the dialog of the inserttag button.

Note: Listed attribute names should be among the following: class, dir, id, lang, onFocus, onBlur, onClick, onDblClick, onMouseDown, onMouseUp, onMouseOver, onMouseMove, onMouseOut, onKeyPress, onKeyDown, onKeyUp, style, title, xml:lang

buttons.inserttag.tags.[tagname].allowedAttribs(htmlArea RTE only)

list of attributes List of attribute names that should be shown for the specified tagname in the dialog of the inserttag button, in addition to the attribute names specified by property buttons.inserttag.allowedAttribs.

buttons.table.disableEnterParagraphs(htmlArea RTE only)

boolean If set, this property will prevent the insertion of paragraphs in table cells when the enter key is pressed.

Default: 0

buttons.table.enableHandles(htmlArea RTE only)

boolean If set, table handles will be enabled in Firefox. These Firefox­specific handles allow to delete/insert rows and columns using small handles displayed on table  borders. However, insert operations also add a style attribute on inserted cells.

Default: 0

disableAlignmentFieldsetInTableOperationsdisableSpacingFieldsetInTableOperationsdisableColorFieldsetInTableOperationsdisableLayoutFieldsetInTableOperationsdisableBordersFieldsetInTableOperations(htmlArea RTE only)

boolean Disables the corresponding fieldset in all table operations dialogues.

Default: 0

buttons.table.removeFieldsets(htmlArea RTE only)

list of strings List of fieldsets to remove from the table creation dialogue. Key list is alignment, borders, color, description, layout, spacing, style

buttons.tableproperties.removeFieldsets(htmlArea RTE only)

list of strings List of fieldsets to remove from the table properties edition dialogue. Key list is alignment, borders, color, description, layout, spacing, style

buttons.table.properties.required(htmlArea RTE only)

list of strings List of fields for which a value is required in the table creation and table properties edition dialogues. Possible values are: caption, summary, captionOrSummary

buttons.table.properties.removed(htmlArea RTE only)

list of strings List of fields to remove from the table creation and table properties edition dialogues. Possible values are: width, height, float, headers

buttons.table.properties.numberOfRows.defaultValue(htmlArea RTE only)

int+ Default value for the number of rows to include in a table on creation.

Default: 2

buttons.table.properties.numberOfColumns.defaultValue(htmlArea RTE only)

int+ Default value for the number of columns to include in a table on creation.

Default: 4

buttons.table.properties.headers.defaultValue(htmlArea RTE only)

string Default selected option in the headers layout selector in the table creation dialogue. Possible values are: none, top, left, both

Default: top

buttons.table.properties.headers.removeItems(htmlArea RTE only)

list of strings List of items to remove from the headers layout selector in the table creation dialogue. Key list is: none, top, left, both

Default: void

buttons.table.properties.headers.both.useHeaderClass(htmlArea RTE only)

list of strings A class to be assigned to the top row when the headers property specifies both.

Default: thead

buttons.table.properties.tableClass.defaultValue(htmlArea RTE only)

string Default selected class in the table class selector in the table creation dialogue.

Default: void

EXT: htmlArea RTE ­ 28

Property: Data type: Description:

buttons.table.properties.width.defaultValue(htmlArea RTE only)

+int Default value of the table wdth in the table creation dialogue.

Default: void

buttons.table.properties.widthUnit.defaultValue(htmlArea RTE only)

string Default selected unit in the width unit selector in the table creation dialogue. Possible values are: %, px or em

Default: %

buttons.table.properties.widthUnit.removeItems(htmlArea RTE only)

list of strings List of items to remove from the table width unit selector in the table creation dialogue. Key list is: %, px, em

Default: void

buttons.table.properties.height.defaultValue(htmlArea RTE only)

+int Default value of the table height in the table creation dialogue.

Default: void

buttons.table.properties.heightUnit.defaultValue(htmlArea RTE only)

string Default selected unit in the height unit selector in the table creation dialogue. Possible values are: %, px or em

Default: %

buttons.table.properties.heightUnit.removeItems(htmlArea RTE only)

list of strings List of items to remove from the table height unit selector in the table creation dialogue. Key list is: %, px, em

Default: void

buttons.table.properties.float.defaultValue(htmlArea RTE only)

string Default selected option in the table float selector in the table creation and properties edition dialogues.. Possible values are: not set, left, right

Default: not set

buttons.table.properties.float.left.useClass(htmlArea RTE only)

string Class name to be assigned when left is selected in the table float selector in the table creation and properties edition dialogues.

Default: float­left

buttons.table.properties.float.right.useClass(htmlArea RTE only)

string Class name to be assigned when right is selected in the table float selector in the table creation and properties edition dialogues.

Default: float­right

buttons.table.properties.float.removeItems(htmlArea RTE only)

list of strings List of items to remove from the table float selector in the table creation and properties edition dialogues. Key list is: not set, left, right

Default: void

buttons.table.properties.cellpadding.defaultValue(htmlArea RTE only)

+int Default value of the table cellpadding attribute in the table creation and properties edition dialogues

Default: void

buttons.table.properties.cellspacing.defaultValue(htmlArea RTE only)

+int Default value of the table cellspacing attribute in the table creation and properties edition dialogues .

Default: void

buttons.table.properties.borderWidth.defaultValue(htmlArea RTE only)

+int Default value of the table border width attribute in the table creation and properties edition dialogues

Default: void

buttons.table.properties.borderStyle.defaultValue(htmlArea RTE only)

string Default selected style in the border style selector in the table creation dialogue. Possible values are: not set, none, dotted, dashed, solid, double, groove, ridge, inset, outset

Default: not set

buttons.table.properties.borderStyle.removeItems(htmlArea RTE only)

list of strings List of items to remove from the table border style selector in the table creation dialogue. Key list is: not set, none, dotted, dashed, solid, double, groove, ridge, inset, outset

Default: void

EXT: htmlArea RTE ­ 29

Property: Data type: Description:

buttons.rowproperties.removeFieldsets(htmlArea RTE only)

list of strings List of fieldsets to remove from the table row properties edition dialogue. Key list is alignment, borders, color, layout, rowgroup, style

Default: void

buttons.rowproperties.properties.removed(htmlArea RTE only)

list of strings List of fields to remove from the table row properties edition dialogue. Possible values are: width, height

Default: void

buttons.rowproperties.properties.width.defaultValue(htmlArea RTE only)

+int Default value of the row wdth in the table row properties edition dialogue.

Default: void

buttons.rowproperties.properties.widthUnit.defaultValue(htmlArea RTE only)

string Default selected unit in the row width unit selector in the table row properties edition dialogue. Possible values are: %, px or em

Default: %

buttons.rowproperties.properties.widthUnit.removeItems(htmlArea RTE only)

list of strings List of items to remove from the row width unit selector in the table row properties edition dialogue. Key list is: %, px, em

Default: void

buttons.rowproperties.properties.height.defaultValue(htmlArea RTE only)

+int Default value of the row height in the table row properties edition dialogue.

Default: void

buttons.rowproperties.properties.heightUnit.defaultValue(htmlArea RTE only)

string Default selected unit in the row height unit selector iin the table row properties edition dialogue. Possible values are: %, px or em

Default: %

buttons.rowproperties.properties.heightUnit.removeItems(htmlArea RTE only)

list of strings List of items to remove from the row height unit selector in the table row properties edition dialogue. Key list is: %, px, em

Default: void

buttons.rowproperties.properties.borderStyle.removeItems(htmlArea RTE only)

list of strings List of items to remove from the row border style selector  in the table row properties edition dialogue. Key list is: not set, none, dotted, dashed, solid, double, groove, ridge, inset, outset

Default: void

buttons.columnproperties.removeFieldsets(htmlArea RTE only)

list of strings List of fieldsets to remove from the column cells properties edition dialogue. Key list is alignment, borders, color, layout, style

buttons.cellproperties.removeFieldsets(htmlArea RTE only)

list of strings List of fieldsets to remove from the cell properties edition dialogue. Key list is alignment, borders, color, layout, style

buttons.cellproperties.properties.removed(htmlArea RTE only)

list of strings List of fields to remove from the cell properties and column cells properties edition dialogues. Possible values are: width, height

Default: void

buttons.cellproperties.properties.width.defaultValue(htmlArea RTE only)

+int Default value of the row wdth in the cell properties and column cells properties edition dialogues.

Default: void

buttons.cellproperties.properties.widthUnit.defaultValue(htmlArea RTE only)

string Default selected unit in the row width unit selector in the cell properties and column cells properties edition dialogues. Possible values are: %, px or em

Default: %

buttons.cellproperties.properties.widthUnit.removeItems(htmlArea RTE only)

list of strings List of items to remove from the row width unit selector in the cell properties and column cells properties edition dialogues. Key list is: %, px, em

Default: void

buttons.cellproperties.properties.height.defaultValue(htmlArea RTE only)

+int Default value of the row height in the cell properties and column cells properties edition dialogues.

Default: void

EXT: htmlArea RTE ­ 30

Property: Data type: Description:

buttons.cellproperties.properties.heightUnit.defaultValue(htmlArea RTE only)

string Default selected unit in the row height unit selector in the cell properties and column cells properties edition dialogues. Possible values are: %, px or em

Default: %

buttons.cellproperties.properties.heightUnit.removeItems(htmlArea RTE only)

list of strings List of items to remove from the row height unit selector in the cell properties and column cells properties edition dialogues. Key list is: %, px, em

Default: void

buttons.cellproperties.properties.borderStyle.removeItems(htmlArea RTE only)

list of strings List of items to remove from the cell border style selector in the cell properties and column cells properties edition dialogues. Key list is: not set, none, dotted, dashed, solid, double, groove, ridge, inset, outset

Default: void

enablePersonalDicts(htmlArea RTE only)

boolean Specify that personal dictionaries should be enabled or not.

Default: 0

Note: The option is ignored if PHP safe_mode is enabled on the server.

Note: The feature must also be enabled in User TSConfig.

Note: Personal dictionaries are stored in subdirectories of uploads/tx_rtehtmlarea

RTEHeightOverride(htmlArea RTE only)

int+ If set, the specified value will override the calculated height of the RTE editing area.

See also User TSConfig options.RTESmallHeight and options.RTELargeHeightIncrement

userElements.[#] string/­>userCategory

Configuration of the categories of user elementsThe string value sets the name of the category. Value is language­splitted (by  |) to allow for multiple languages.

userLinks.[#] string/­>userLinks

Configuration of user defined links.The string value sets the name of the category. Value is language­splitted (by  |) to allow for multiple languages.

[page:RTE.default/RTE.default.FE/RTE.config.(table).(field)/RTE.config.(table).(field).types.(type)]

classesAnchor:The following property allows to configure the anchor accessibility feature:

EXT: htmlArea RTE ­ 31

Property: Description:

classesAnchor.[id­string](htmlArea RTE only)

Attaches special properties to the classes available in the Insert/Modify link dialog.

Properties:

.class = CSS­class­name: the name of the CSS class to which the properties are attached

.type = page, url, file, mail or spec: specifies that the class applies to anchors for internal pages, external URL's, files, email addresses or special user­defined links respectively; the class will be presented only in the corresponding tab of the 'Insert/Modify link' dialogue

.image = URL of an icon file that will prefix or postfix the content of the anchor when the class is applied to an anchor; the TYPO3 syntax EXT:extension­key/sub­directory/image­file­name may be used

.addIconAfterLink = boolean: if set, the content of the link is postfixed with the icon; default is to prefix the content of the link with the icon

.altText = the text that will be used as altText for the image when the class is applied to an anchor; may be language­splitted; the TYPO3 syntax LLL:EXT:extension­key/sub­directory/locallang.xml:label­index may also be used in order for the text to be localized to the language of the content using the specified language file and label index

.titleText = the text that will be used as title for the anchor when the class is applied to an anchor; may be language­splitted; the TYPO3 syntax LLL:EXT:extension­key/sub­directory/locallang.xml:label­index may also be used in order for the text to be localized to the language of the content using the specified language file and label index

.target = string; if set, this is the default value to be assigned to the target attribute of the link when the class is applied to the link

See the Demo default configuration for a complete example.

[page:RTE]

userCategory:Properties of each user element category.

Property: Data type: Description:

load string If set, the a predefined set of user element is loaded into this category. They are always loaded in the key starting with 100 and then forward in steps of 10.Current options are:“images_from_folder”: Loads gif,jpg,jpeg,png images from the specified folder (defined by the .path property)

merge Boolean If set, then any manually configured user elements are merged onto the ones loaded by the .load operation.

path String (Applies for load=images_from_folder only)

Sets the path of the folder from which to fetch the images (gif,jpg,jpeg,png)

Example:.path = fileadmin/istate/

EXT: htmlArea RTE ­ 32

Property: Data type: Description:

[#] string/­>userElements

Configuration of the user elements.The string value is the name of the user element. Language­splitted.

Example:

RTE.default.userElements { # Category with various elements 10 = Various elements | Diverse elements 10 { # An image is inserted 1 = Logo 1 | Bomærke 1 1.description = This is the logo number 1. | Dette er logo nummer 1 1.content = <img src="###_URL###fileadmin/istate/curro.png">

# The text-selection is wrapped with <sup> tags. 2 = Subscript 2.description = Selected text is wrapped in <sup>-tags. 2.mode = wrap 2.content = <sup>|</sup>

# This submits the selected text content to the script, rte_cleaner.php 5 = Strip all tags 5.description = All HTML-codes are removed from selection. 5.mode = processor 5.submitToScript = typo3/rte_cleaner.php }

# Category with images from the fileadmin/istate/ folder 2.load = images_from_folder 2.merge = 1 2.path = fileadmin/istate/ # here the logo from “Various elements” is included as well 2.1 < .10.1} # Show the user-button, if not existingRTE.default.showButtons = user

[page:­>userCategory]

userElements:Properties of each user elements setup.

Property: Data type: Description:

mode string Which kind of object it is.

Options:“wrap”: If a wrap, then the content is exploded by “|” and wrapped around the current text selection.

“processor”: The content is submitted to the php­script defined by .submitToScript. GPvar(“processContent”) carries the selection content of the RTE and GPvar(“returnUrl”) contains the return url. (The “content” property is not used here!)

default: The content is just inserted (pasted into) at the cursor or substituting any current selection.

description string A short description shown beneath the user element title (which is in bold)

content string The content inserted/wrapped into the RTE

submitToScript string (Applies only to mode=processor)

PHP script to which the current text selection of the RTE is submitted. The script must be relative to the site­url or a full url starting with http://...

Example:.submitToScript = typo3/rte_cleaner.phpor .submitToScript = http://www.domain.org/some_extenal_script.php

dontInsertSiteUrl boolean If set, the marker ###_URL### in the content property's content IS NOT substituted by the current site url. Normally you wish to do this for all  image­references which must be prepended with the absolute url in order to display correctly in the RTE!

[page:­>userElements]

EXT: htmlArea RTE ­ 33

userLinks:Properties of user links

Property: Data type: Description:

url string The url.If set, the marker ###_URL### in the content property's content is substituted by the current site url.

description string A short description shown beneath the link  title (which is in bold)

target string Default target (if isset())

[page:­>userLinks]

Default Website LanguageIf you enable the SpellChecker plugin, make sure you have created a Website Language record for the default language of your site, even if your TypoScript template does not refer to it.

Server ConfigurationInternet Explorer has caching problems that may affect the performance of the htmlArea RTE. These problems may be worked around with the following server configuration recommendations.

Apache configuration:Add the following lines to your Apache httpd.conf file or in the .htaccess file of the root directory of your site:

BrowserMatch "MSIE" brokenvary=1BrowserMatch "Mozilla/4.[0-9]{2}" brokenvary=1BrowserMatch "Opera" !brokenvarySetEnvIf brokenvary 1 force-no-vary

ExpiresActive OnExpiresByType image/gif "access plus 1 month"ExpiresByType image/png "access plus 1 month"

The last two statements require the mod_expires Apache module to be installed. For information on this module, see:

http://httpd.apache.org/docs/1.3/mod/mod_expires.html

Microsoft IIS configuration:See: http://www.aspnetresources.com/blog/cache_control_extensions.aspx

More information:For more information on this subject, see the following articles:

http://dean.edwards.name/my/flicker.html

http://httpd.apache.org/docs/1.3/mod/mod_expires.html

http://fivesevensix.com/studies/ie6flicker/

See also the Tutorial section of the present document for information on IE caching problems in relation with the Apache mod_gzip module.

EXT: htmlArea RTE ­ 34

Default Configurations

htmlArea RTE offers four default configurations:

• Typical: sets Page TSConfig and User TSConfig with most commonly used features representing a good start for typical sites and for most situations;

• Minimal: sets Page TSConfig and User TSConfig with minimal features; this is for advanced administrators who are familiar with the features of the RTE and understand well how to configure the RTE using Page TSConfig;

• Demo: sets Page TSConfig and User TSConfig with as many features as possible for users who want to explore the features of the RTE; this is not recommended for a production environment;

• Image: adds support for images to the Typical default configuration.

The default configuration may be chosen in the installation dialog of the htmlArea RTE extension presented by the Extension Manager. If not otherwise specified, the Typical default configuration will be used.

All default configurations share the same default configuration of RTE content transformation.

Default configuration of RTE content transformationThis default configuration establishes default settings in Page TSConfig for RTE content transformation.

For documentation of RTE tranformations, see: http://typo3.org/documentation/document­library/core­documentation/doc_core_api/4.1.0/view/5/2/

For documentation of Page TSConfig configuration of RTE processing, see: http://typo3.org/documentation/document­library/references/doc_core_tsconfig/current/view/1/3/

For documentation of the HTMLparser, see: http://typo3.org/documentation/document­library/references/doc_core_tsref/current/view/5/17/

For documentation of RTE settings in TCA, see: http://typo3.org/documentation/document­library/core­documentation/doc_core_api/4.1.0/view/4/3/#id3665895

The following is inserted in Page TSConfig:## Default RTE processing rules

RTE.default.proc {## TRANSFORMATION METHOD

## We assume that CSS Styled Content is used.

overruleMode = ts_css## DO NOT CONVERT BR TAGS INTO LINEBREAKS

## br tags in the content are assumed to be intentional.

dontConvBRtoParagraph = 1## PRESERVE DIV SECTIONS ­ DO NOT REMAP TO P

preserveDIVSections = 1## TAGS ALLOWED OUTSIDE P & DIV

allowTagsOutside = hr, address## TAGS ALLOWED

## Added to the default internal list: b,i,u,a,img,br,div,center,pre,font,hr,sub,sup,p,strong,em,li,ul,ol,blockquote,strike,span

## But, for the sake of clarity, we use a complete list in alphabetic order.

## center, font, strike, sdfield and  u will be removed on entry (see below).

## b and i will be remapped on exit (see below).

## Note that the link accessibility feature of htmlArea RTE does insert img tags.

allowTags (a, abbr, acronym, address, blockquote, b, bdo, big, br, caption, center, cite, code, col,

colgroup, del, dfn, div, em, font, h1, h2, h3, h4, h5, h6, hr, i, img, ins, kbd, li, link, ol, p, pre, q, samp, sdfield, small, span, strike, strong, sub, sup, table, thead, tbody, tfoot, td, th, tr, tt, u, ul, var

EXT: htmlArea RTE ­ 35

)## TAGS DENIED

## Make sure we can set rules on any tag listed in allowTags.

denyTags >## ALLOWED P & DIV ATTRIBUTES

## Attributes class and align are always preserved

## Align attribute will be unset on entry (see below)

## This is a list of additional attributes to keep

keepPDIVattribs = id, title, dir, lang, xml:lang## ALLOW TO WRITE ABOUT HTML

dontUndoHSC_db = 1dontHSC_rte = 1

## CONTENT TO DATABASE

entryHTMLparser_db = 1entryHTMLparser_db {

## TAGS ALLOWED

## Always use the same list of allowed tags.

allowTags < RTE.default.proc.allowTags## TAGS DENIED

## Make sure we can set rules on any tag listed in allowTags.

denyTags >## AVOID CONTENT BEING HSC'ed TWICE

htmlSpecialChars = 0

tags {## REMOVE IMG TAGS

img.allowedAttribs = 0img.rmTagIfNoAttrib = 1

## CLEAN ATTRIBUTES ON THE FOLLOWING TAGS

span.fixAttrib.style.unset = 1p {

allowedAttribs = id, title, dir, lang, xml:lang, classfixAttrib.align.unset = 1

}div < .phr.allowedAttribs = classb.allowedAttribs = id, title, dir, lang, xml:lang, classbdo.allowedAttribs = id, title, dir, lang, xml:lang, classbig.allowedAttribs = id, title, dir, lang, xml:lang, classblockquote.allowedAttribs = id, title, dir, lang, xml:lang, classcite.allowedAttribs = id, title, dir, lang, xml:lang, classcode.allowedAttribs = id, title, dir, lang, xml:lang, classdel.allowedAttribs = id, title, dir, lang, xml:lang, classdfn.allowedAttribs = id, title, dir, lang, xml:lang, classem.allowedAttribs = id, title, dir, lang, xml:lang, classi.allowedAttribs = id, title, dir, lang, xml:lang, classins.allowedAttribs = id, title, dir, lang, xml:lang, classkbd.allowedAttribs = id, title, dir, lang, xml:lang, classlabel.allowedAttribs = id, title, dir, lang, xml:lang, classq.allowedAttribs = id, title, dir, lang, xml:lang, classsamp.allowedAttribs = id, title, dir, lang, xml:lang, classsmall.allowedAttribs = id, title, dir, lang, xml:lang, classstrike.allowedAttribs = id, title, dir, lang, xml:lang, classstrong.allowedAttribs = id, title, dir, lang, xml:lang, classsub.allowedAttribs = id, title, dir, lang, xml:lang, classsup.allowedAttribs = id, title, dir, lang, xml:lang, classtt.allowedAttribs = id, title, dir, lang, xml:lang, classu.allowedAttribs = id, title, dir, lang, xml:lang, classvar.allowedAttribs = id, title, dir, lang, xml:lang, class

}## REMOVE OPEN OFFICE META DATA TAGS AND DEPRECATED HTML TAGS

## We use this rule instead of the denyTags rule so that we can protect custom tags without protecting these unwanted tags.

removeTags = center, font, o:p, sdfield, strike, u## PROTECT CUSTOM TAGS

keepNonMatchedTags = protect

EXT: htmlArea RTE ­ 36

}

HTMLparser_db {## STRIP ALL ATTRIBUTES FROM THESE TAGS

## If this list of tags is not set, it will default to: b,i,u,br,center,hr,sub,sup,strong,em,li,ul,ol,blockquote,strike.

## However, we want to keep xml:lang attribute on most tags and tags from the default list where cleaned on entry.

noAttrib = br## XHTML COMPLIANCE

## Note that applying xhtml_cleaning on exit would break non­standard attributes of typolink tags

xhtml_cleaning = 1}

exitHTMLparser_db = 1exitHTMLparser_db {

## KEEP ALL TAGS

## Unwanted tags were removed on entry.

## Without this rule, the parser will remove all tags! Presumably, this rule will be more efficient than repeating the allowTags rule

keepNonMatchedTags = 1## AVOID CONTENT BEING HSC'ed TWICE

htmlSpecialChars = 0}

}

## Use same RTE processing rules in FE

RTE.default.FE.proc < RTE.default.proc## RTE processing rules for bodytext column of tt_content table

## Erase settings from other extensions

RTE.config.tt_content.bodytext >## Make sure we use ts_css transformation

RTE.config.tt_content.bodytext.proc.overruleMode = ts_cssRTE.config.tt_content.bodytext.types.text.proc.overruleMode = ts_cssRTE.config.tt_content.bodytext.types.textpic.proc.overruleMode = ts_css

Typical default configurationThis default configuration establishes default settings in Page TSConfig and User TSConfig with most commonly used features representing a good start for typical sites.

The following is inserted in Page TSConfig:## Define labels and styles to be applied to class selectors in the interface of the RTE

## The examples included here make partial re­use of color scheme and frame scheme from CSS Styled Content extension

RTE.classes {align-left {

name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyleftvalue = text-align: left;

}align-center {

name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifycentervalue = text-align: center;

}align-right {

name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyrightvalue = text-align: right;

}csc-frame-frame1 {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:frame-frame1value = background-color: #EDEBF1; border: 1px solid #333333;

}

EXT: htmlArea RTE ­ 37

csc-frame-frame2 {name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:frame-frame2value = background-color: #F5FFAA; border: 1px solid #333333;

}important {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:importantvalue = color: #8A0020;

}name-of-person {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:name-of-personvalue = color: #10007B;

}detail {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:detailvalue = color: #186900;

}component-items {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:component-itemsvalue = color: #186900;

}action-items {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:action-itemsvalue = color: #8A0020;

}component-items-ordered {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:component-itemsvalue = color: #186900;

}action-items-ordered {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:action-itemsvalue = color: #8A0020;

}}

## Anchor classes configuration for use by the anchor accesibility feature (htmlArea RTE only)

RTE.classesAnchor {externalLink {

class = external-linktype = urltitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_titleText}externalLinkInNewWindow {

class = external-link-new-windowtype = urltitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_new_window_titleText}internalLink {

class = internal-linktype = pagetitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_titleText}internalLinkInNewWindow {

class = internal-link-new-windowtype = pagetitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_new_window_titleText}download {

class = downloadtype = filetitleText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:download_titleText

}mail {

class = mailtype = mailtitleText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:mail_titleText

}}

## Default RTE configuration

RTE.default {## Markup options (htmlArea RTE only)

enableWordClean = 1removeTrailingBR = 1removeComments = 1removeTags = center, font, o:p, sdfield, strike,uremoveTagsAndContents = style,script

EXT: htmlArea RTE ­ 38

## Toolbar options

## The TCA configuration may add buttons to the toolbar

## The following buttons are specific to Classic RTE: class

## The following buttons are specific to htmlArea RTE: blockstylelabel, blockstyle, textstylelabel, textstyle, 

## insertcharacter, findreplace, removeformat, toggleborders, tableproperties, 

## rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit, 

## columninsertbefore, columninsertafter, columndelete, columnsplit, 

## cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge

showButtons ( class, blockstylelabel, blockstyle, textstylelabel, textstyle,formatblock, bold, italic, subscript, superscript,orderedlist, unorderedlist, outdent, indent, textindicator,insertcharacter, link, table, findreplace, chMode, removeformat, undo, redo, about,toggleborders, tableproperties,rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit,columninsertbefore, columninsertafter, columndelete, columnsplit,cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge

)## More toolbar options (htmlArea RTE only)

keepButtonGroupTogether = 1

## Enable status bar (htmlArea RTE only)

showStatusBar = 1

## Hide infrequently used paragraph types in the paragraph type selector (formatblock button)

hidePStyleItems = pre,address

## Add default example styles

## The example styles included here make partial re­use of color scheme and frame scheme from CSS Styled Content extension

## Left, center and right alignment of text in paragraphs and cells.

inlineStyle.text-alignment (p.align-left, h1.align-left, h2.align-left, h3.align-left, h4.align-left, h5.align-left,

h6.align-left, td.align-left { text-align: left; }p.align-center, h1.align-center, h2.align-center, h3.align-center, h4.align-center, h5.align-

center, h6.align-center, td.align-center { text-align: center; }p.align-right, h1.align-right, h2.align-right, h3.align-right, h4.align-right, h5.align-right,

h6.align-right, td.align-right { text-align: right; })

## Two frame examples taken from the example CSS file of CSS Styled Content extension and applied to p and table block elements.

inlineStyle.frames (p.csc-frame-frame1, table.csc-frame-frame1 { background-color: #EDEBF1; padding: 2px 4px 2px

4px; border: 1px solid #333333; }p.csc-frame-frame2, table.csc-frame-frame2 { background-color: #F5FFAA; padding: 2px 4px 2px

4px; border: 1px solid #333333; })

## Bullet styles for unordered lists.

inlineStyle.ul (ul.component-items { color: #186900; list-style-type: circle; }ul.action-items { color: #8A0020; list-style-image: url(img/red_arrow_bullet.gif); }

)## Numbering styles for ordered lists.

inlineStyle.ol (ol.component-items-ordered { color: #10007B; list-style-type: lower-roman; }ol.action-items-ordered { color: #8A0020; list-style-type: lower-greek; }

)## Three inline text colors taken from the color scheme of CSS Styled Content extension.

inlineStyle.inline-text (span.important { color: #8A0020; }span.name-of-person { color: #10007B; }span.detail { color: #186900; }

)## Use stylesheet file rather than the above mainStyleOverride and inlineStyle properties to style the 

contents (htmlArea RTE only)

EXT: htmlArea RTE ­ 39

ignoreMainStyleOverride = 1

## List all class selectors that are allowed on the way to the database

proc.allowedClasses (external-link, external-link-new-window, internal-link, internal-link-new-window, download,

mail,align-left, align-center, align-right, align-justify,csc-frame-frame1, csc-frame-frame2,component-items, action-items,component-items-ordered, action-items-ordered,important, name-of-person, detail,indent

)## classesParagraph, classesTable, classesTD, classesLinks, classesCharacter

## Classic RTE: Specify the list of class selectors that should be presented in the RTE interface:

## htmlArea RTE: Restrict the list of class selectors presented by the RTE to the following:

classesParagraph (align-left, align-center, align-right, csc-frame-frame1, csc-frame-frame2

)classesTable = csc-frame-frame1, csc-frame-frame2classesTD = align-left, align-center, align-rightclassesLinks = external-link, external-link-new-window, internal-link, internal-link-new-window,

download, mailclassesCharacter = important, name-of-person, detail

## Configuration of the anchor accessibility feature (htmlArea RTE only)

## These classes should also be in the list of allowedClasses.

classesAnchor = external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail

classesAnchor.default {page = internal-linkurl = external-link-new-windowfile = downloadmail = mail

}## Configuration specific to the TableOperations feature (htmlArea RTE only)

## Remove the following fieldsets from the properties popups

disableAlignmentFieldsetInTableOperations = 1disableSpacingFieldsetInTableOperations = 1disableColorFieldsetInTableOperations = 1disableLayoutFieldsetInTableOperations = 1

## Show borders on table creation

buttons.toggleborders.setOnTableCreation = 1}

## front end RTE configuration for the general public (htmlArea RTE only)

RTE.default.FE < RTE.defaultRTE.default.FE.showStatusBar = 0RTE.default.FE.hideButtons = chMode, blockstyle, textstyle, underline, strikethrough, subscript, superscript, lefttoright, righttoleft, left, center, right, justifyfull, table, inserttag, findreplace, removeformat, copy, cut, pasteRTE.default.FE.userElements >RTE.default.FE.userLinks >

## tt_content TCEFORM configuration

## Let use all the space available for more comfort.

TCEFORM.tt_content.bodytext.RTEfullScreenWidth= 100%

The following is inserted in User TSConfig:## Enable the RTE by default for all users

setup.default.edit_RTE = 1

Minimal default configurationThis default configuration establishes default settings in Page TSConfig and User TSConfig with minimal features. This is for advanced administrators with good knowledge of RTE configuration in Page TSConfig.

EXT: htmlArea RTE ­ 40

The following is inserted in Page TSConfig:## Default RTE configuration

RTE.default {## Toolbar options applicable to all RTE's

## The TCA configuration may add buttons to the toolbar

showButtons = bold,italic,undo,redo,about}

## front end RTE configuration for the general public (htmlArea RTE only)

RTE.default.FE < RTE.default

The following is inserted in User TSConfig:## Enable the RTE by default for all users

setup.default.edit_RTE = 1

Demo default configurationThis default configuration sets Page TSConfig and User TSConfig with as many features as possible for users who want to explore the features of the RTE. This is not recommended for production environments.

The following is inserted in Page TSConfig:## Define labels and styles to be applied to class selectors in the interface of the RTE

## Partial re­use of color scheme and frame scheme from CSS Styled Content extension

RTE.classes {align-left {

name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyleftvalue = text-align: left;

}align-center {

name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifycentervalue = text-align: center;

}align-right {

name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyrightvalue = text-align: right;

}csc-frame-frame1 {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:frame-frame1value = background-color: #EDEBF1; border: 1px solid #333333;

}csc-frame-frame2 {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:frame-frame2value = background-color: #F5FFAA; border: 1px solid #333333;

}important {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:importantvalue = color: #8A0020;

}name-of-person {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:name-of-personvalue = color: #10007B;

}detail {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:detailvalue = color: #186900;

}component-items {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:component-itemsvalue = color: #186900;

}action-items {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:action-itemsvalue = color: #8A0020;

}component-items-ordered {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:component-itemsvalue = color: #186900;

}action-items-ordered {

name = LLL:EXT:rtehtmlarea/res/contentcss/locallang.xml:action-itemsvalue = color: #8A0020;

EXT: htmlArea RTE ­ 41

}}

## Anchor classes configuration for use by the anchor accessibility feature (htmlArea RTE only)

RTE.classesAnchor {externalLink {

class = external-linktype = urlimage = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/external_link.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_altTexttitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_titleText}externalLinkInNewWindow {

class = external-link-new-windowtype = urlimage = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/external_link_new_window.gifaltText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_new_window_altTexttitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_new_window_titleText}internalLink {

class = internal-linktype = pageimage = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/internal_link.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_altTexttitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_titleText}internalLinkInNewWindow {

class = internal-link-new-windowtype = pageimage = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/internal_link_new_window.gifaltText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_new_window_altTexttitleText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_new_window_titleText}download {

class = downloadtype = fileimage = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/download.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:download_altTexttitleText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:download_titleText

}mail {

class = mailtype = mailimage = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/mail.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:mail_altTexttitleText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:mail_titleText

}}

## Default RTE configuration

RTE.default {## Markup options (htmlArea RTE only)

enableWordClean = 1removeTrailingBR = 1removeComments = 1removeTags = center, o:p, sdfieldremoveTagsAndContents = style,script

## Allow img tags

proc.entryHTMLparser_db.tags.img >

## Allow style attributes on p and span tags

proc.entryHTMLparser_db.tags {p.allowedAttribs := addToList(style)span.fixAttrib.style.unset >

}

## Toolbar options

showButtons = *

## More toolbar options (htmlArea RTE only)

keepButtonGroupTogether = 1

EXT: htmlArea RTE ­ 42

## Enable status bar (htmlArea RTE only)

showStatusBar = 1

## Add default example styles

## Left, center and right alignment of text in paragraphs and cells.

inlineStyle.text-alignment (p.align-left, h1.align-left, h2.align-left, h3.align-left, h4.align-left, h5.align-left,

h6.align-left, td.align-left { text-align: left; }p.align-center, h1.align-center, h2.align-center, h3.align-center, h4.align-center, h5.align-

center, h6.align-center, td.align-center { text-align: center; }p.align-right, h1.align-right, h2.align-right, h3.align-right, h4.align-right, h5.align-right,

h6.align-right, td.align-right { text-align: right; })

## Two frame examples taken from the example CSS file of CSS Styled Content extension and applied to p and table block elements.

inlineStyle.frames (p.csc-frame-frame1, table.csc-frame-frame1 { background-color: #EDEBF1; padding: 2px 4px 2px

4px; border: 1px solid #333333; }p.csc-frame-frame2, table.csc-frame-frame2 { background-color: #F5FFAA; padding: 2px 4px 2px

4px; border: 1px solid #333333; })

## Bullet styles for unordered lists.

inlineStyle.ul (ul.component-items { color: #186900; list-style-type: circle; }ul.action-items { color: #8A0020; list-style-image: url(img/red_arrow_bullet.gif); }

)## Numbering styles for ordered lists.

inlineStyle.ol (ol.component-items-ordered { color: #10007B; list-style-type: lower-roman; }ol.action-items-ordered { color: #8A0020; list-style-type: lower-greek; }

)## Three inline text colors taken from the color scheme of CSS Styled Content extension.

inlineStyle.inline-text (span.important { color: #8A0020; }span.name-of-person { color: #10007B; }span.detail { color: #186900; }

)

## Use stylesheet file rather than the above mainStyleOverride and inlineStyle properties to style the contents (htmlArea RTE only)

ignoreMainStyleOverride = 1

## For this demo, do not remove font, strike and u tags

proc.entryHTMLparser_db.removeTags := removeFromList(font,strike,u)

## List all class selectors that are allowed on the way to the database

proc.allowedClasses (external-link, external-link-new-window, internal-link, internal-link-new-window, download,

mail,align-left, align-center, align-right, align-justify,csc-frame-frame1, csc-frame-frame2,component-items, action-items,component-items-ordered, action-items-ordered,important, name-of-person, detail,indent

)

## classesParagraph, classesTable, classesTD, classesLinks, classesCharacter

## Classic RTE: Specify the list of class selectors that should be presented in the RTE interface:

## htmlArea RTE: Restrict the list of class selectors presented by the RTE to the following:

classesParagraph (align-left, align-center, align-right, csc-frame-frame1, csc-frame-frame2

)classesTable = csc-frame-frame1, csc-frame-frame2classesTD = align-left, align-center, align-rightclassesLinks = external-link, external-link-new-window, internal-link, internal-link-new-window,

download, mailclassesCharacter = important, name-of-person, detail

EXT: htmlArea RTE ­ 43

## Configuration of the anchor accessibility feature (htmlArea RTE only)

## These classes should also be in the list of allowedClasses.

classesAnchor = external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail

classesAnchor.default {page = internal-linkurl = external-link-new-windowfile = downloadmail = mail

}

## Show all applicable class selectors available in the style sheet file (htmlArea RTE only)

showTagFreeClasses = 1

## Configuration specific to the table button or TableOperations feature (htmlArea RTE only)

## Use the context menu instead of the toolbar for table operations, but keep toggleborders button in toolbar

## Show borders on table creation

hideTableOperationsInToolbar = 1buttons.toggleborders.keepInToolbar = 1buttons.toggleborders.setOnTableCreation = 1

## Configuration specific to the inserttag button or QuickTag feature (htmlArea RTE only)

## Do not allow insertion of the following tags

buttons.inserttag.denyTags = font, underline, strike, table

## Configuration specific to the spellcheck button or SpellCheck feature (htmlArea RTE only)

## Enable the use of personal dictionaries

enablePersonalDicts = 1}

## Use same processing as on entry to database to clean content pasted into the editor

RTE.default.enableWordClean.HTMLparser < RTE.default.proc.entryHTMLparser_db

## front end RTE configuration (htmlArea RTE only)

RTE.default.FE < RTE.defaultRTE.default.FE.userElements >RTE.default.FE.userLinks >

## tt_content TCEFORM configuration

## Let use all the space available for more comfort.

TCEFORM.tt_content.bodytext.RTEfullScreenWidth= 100%

The following is inserted in User TSConfig:## Enable the RTE by default for all users

setup.default.edit_RTE = 1

## Enable the file upload feature of the element browser by default for all users

options.uploadFieldsInTopOfEB = 1

## Set the default spelling ability of the check speller for all users

options.HTMLAreaPspellMode = bad-spellers

## Enable the personal dictionary feature of the check speller by default for all users

options.enablePersonalDicts = 1

Image default configurationThis default configuration establishes support for images in Page TSConfig. This is for use in addition to the Typical default configuration.

EXT: htmlArea RTE ­ 44

The following is inserted in Page TSConfig:## Anchor classes configuration for use by the anchor accesibility feature (htmlArea RTE only)

## Add inline icons to the links

RTE.classesAnchor {externalLink {

image = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/external_link.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_altText

}externalLinkInNewWindow {

image = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/external_link_new_window.gifaltText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:external_link_new_window_altText}internalLink {

image = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/internal_link.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_altText

}internalLinkInNewWindow {

image = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/internal_link_new_window.gifaltText =

LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:internal_link_new_window_altText}download {

image = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/download.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:download_altText

}mail {

image = EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/img/mail.gifaltText = LLL:EXT:rtehtmlarea/htmlarea/plugins/TYPO3Link/locallang.xml:mail_altText

}}

## Default RTE configuration

RTE.default {

## Enable the image buttonshowButtons := addToList(image)

## Tags allowed outside p and div## Adding img tag to the default list

proc.allowTagsOutside := addToList(img)

## Do not remove img tagsproc.entryHTMLparser_db.tags.img >

}

RTE.default.FE.showButtons < RTE.default.showButtonsRTE.default.FE.proc.allowTagsOutside < RTE.default.proc.allowTagsOutsideRTE.default.FE.proc.entryHTMLparser_db.tags.img >

EXT: htmlArea RTE ­ 45

Tutorial

Working around Internet Explorer caching problemThis article by Jan Wulff describes the problems encountered with Internet Explorer 4/5/6 and the Apache server with mod_gzip activated. It describes how to work around these problems.

Problem:If the Apache module mod_gzip is activated on your server, you may encounter the problem that Internet Explorer denies any caching for the whole site, thus stopping the block style and text style selctor lists of htmlArea RTE to work correctly. Besides, it may even slow down some other features of TYPO3, like graphical JavaScript menus. This effect does not depend on the gzip compression itself. Internet Explorer is indeed able to handle compressed files. The problem is IE's handling of one of the HTTP response headers sent with every served document.

Background:The HTTP Vary response header indicates whether a cache is permitted to use the response to reply to a subsequent request without re­validating the document. This is necessary if a document is not suitable for all clients and is served in multiple different versions according to the HTTP headers the client sends with his request.

For example, with activated mod_gzip, every document is at least available in two versions, compressed and uncompressed. If a browser with gzip support requests such a document, it will receive the compressed version. A proxy between the client and the server may cache this file. Now, another browser without gzip support requests the same document via the same proxy. Without the Vary header the proxy would not know if the compressed document may be delivered to the new client, because it can't compare the HTTP headers of the second browser with the Vary header. If it would nevertheless serve it, the client would receive a bunch of data, without any idea, how to process it. Therefore mod_gzip sends a Vary header with each response with at least 'Accept­Encoding' as content.

The problems arise when the Internet Explorer enters the stage. IE 4, 5 and 6 recognizes only one kind of Vary header: 'User­agent', used to distinguish between versions for different browsers. Every other Vary header will be interpreted as it would have a single '*' as content. Because this does not compare with the headers send by any client, it forbids any caching of documents received with this header.

Solution:There is more than one approach to handle this problem. The following configuration directives all have to be set in the Apache configuration file or in a .htaccess file which has to be located in your TYPO3 root.

Easy going:

So, you have no need for any gzip support? Fine, just deactivate the module and your problems are gone. Use this directive:

mod_gzip_on No

Complex approach:

You do have a lot of big code or text files, or you have to save as much transfer bandwidth as possible? Anyway, deactivating mod_gzip is no option for you? Then, you should first check what release of mod_gzip your server is using. If you don't know how, ask your provider, or just use the solution for releases from 1.3.19.2a till 1.3.26.1a.

• mod_gzip release < 1.3.19.2a

Releases before this version didn't send Vary headers, so there shouldn't be any problem. But because you're reading this, you most probably don't use these versions.

• mod_gzip release 1.3.19.2a <> 1.3.26.1a

These releases all use Vary headers. However, they send these headers without verifying if the document is really checked for compression. The only recommended way to get around this, is to deactivate mod_gzip. But thanks to Apache, you can deactivate mod_gzip separately for chosen files, and let it do it's work for the rest. You could use this to deactivate mod_gzip for all css files:

<FilesMatch "\.css$">mod_gzip_on No

EXT: htmlArea RTE ­ 46

</FilesMatch>

Or going even further, you could also include image files:

<FilesMatch "\.(css|gif|jpe?g|png)$">mod_gzip_on No</FilesMatch>

By the way, there is another possibility. You could deactivate Vary headers in mod_gzip with this:

mod_gzip_send_vary Off

But there is a reason why mod_gzip, since 1.3.19.2a, uses Vary headers. As described above, you could badly mess up proxy servers, by serving compressed files without Vary headers. Therefore, I strongly discourage this approach.

• mod_gzip release > 1.3.26.1a

Since release 1.3.26.1a, mod_gzip is a bit more discriminate. It only sends Vary headers with documents which were checked for compression. So you can tell mod_gzip to exclude some files. This approach is not so much different from the former solution, but it is cleaner because it addresses mod_gzip firsthand. To exclude CSS files from compression, use this directive:

mod_gzip_item_exclude file \.css$

If you would like to add images and Javascript files, you could use this:

mod_gzip_item_exclude file \.css$mod_gzip_item_exclude file \.png$mod_gzip_item_exclude file \.gif$mod_gzip_item_exclude file \.jpg$mod_gzip_item_exclude file \.jpeg$mod_gzip_item_exclude file \.js$

This is just a short survey of the caching problems with Internet Explorer and mod_gzip. I wrote it with best intent and hope it may be helpful. If you find any mistakes, please let me know at <[email protected]>. I'm in no way responsible for any consequences that may come forth by the use of this information.

EXT: htmlArea RTE ­ 47

Known Problems

Please see/report problems in the TYPO3 Bugtracker under project tx_rtehtmlarea.

You may get support in the use of this extension by subscribing to news://news.netfielders.de/typo3.projects.rte.

Internet Explorer and HTML tag abbrBefore IE7, Internet Explorer did not support HTML tag abbr. If a content element containing this tag is edited with htmlArea RTE in IE5.5 or IE6, the tag may be broken. Therefore, abbr tags are transformed to acronym tags if IE5.5 or IE6 is used.

Internet Explorer and mod_gzipIf the Apache module mod_gzip is activated, it adds a 'vary'­header to every document. Internet Explorer cannot process correctly such headers, causing incorrect behavior of htmlArea RTE and, in particular, of the block style and text style drop­down selector lists. Therefore, mod_gzip compression, at least of style sheet files, should be disabled. See the article written by Jan Wulff on this subject in the Tutorial section of this document.

Mozilla 1.3.1 and TCA feature dividers2TabsWhen the TCA feature dividers2Tabs is enabled on some table of the TYPO3 back end, the text field to be edited with the RTE may be hidden in a tab layer. This generally causes problem to Mozilla/Firefox browsers. The htmlArea RTE has been modified to support this feature in Mozilla 1.4+ and Firefox 0.8+. The modification does not work in Mozilla 1.3.1.

“All-in-One Gestures” Firefox extension and the context menuThe “All­in­One Gestures” Firefox extension causes erratic behavior of the htmlArea RTE context menu.

Safari and CSS class namesCSS class names are case sensitive. However, as of Safari 3.1 (525.13), the stylesheet API returns only lowercase text. Therefore, if css class names with uppercase letters are used, they may not appear in the block style and text style drop­ down lists because the check against lists of allowed classes fails. If you intend to use the RTE in Safari, you should make sure to use only lowercase letters in your class names.

EXT: htmlArea RTE ­ 48

Change Log

Version: Changes:

0.5.0 Use doubleval in place of floatval in SpellChecker plugin.Use XMLHttpRequest to asynchronously download required scripts.Add troubleshooting log and extension configuration variable to enable logging.Multiple changes to support Safari 1.3. Although the editor loads in Safari 1.3, it does not currently execute correctly due to some bugs in Safari edit mode. If you want to do some testing and/or debugging, you need to set $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['rtehtmlarea']['safari_test']=1;Restructure the tool bar as an unordered list of label, select and button elements so that it can be walked through  with the tab key. The list, including the button icons, is css­styled through the editor skin. Beware that custom skins will need to be adjusted.Restructure the context menu as an unordered list of button elements. The context menu, including the button icons, is css­styled through the editor skin. Beware that custom skins will need to be adjusted.Show in the context menu all table operations enabled in the given context.Each of the table operations becomes a configurable tool bar element like all other tool bar elements.New RTE Page TSConfig property: hideTableOperationsInToolbar. If set, the table operations buttons will not be displayed in the tool bar, but will appear in the context menu, when enabled in the given context.Method TS_transform_db of class t3lib_parsehtml_proc is modified in order to replace true line breaks with spaces, instead of eliminating them. Thanks to Johannes Bornhold. See section Known problems.New htmlArea plugin UserElements to enable the “user” button.Add the title attribute on the TYPO3 link insertion/modification dialog.New toggleborders button to show table borders.

0.5.1 Correction to the behavior of the style selection lists.

0.5.2 Correction for IE: when the collapsed borders attribute was set on a table, the table properties popup dialog did not reflect the set attribute: the checkbox was not checked.Correction: when TYPO3 is not installed in the web server's root path, the dynamiccss.css file was not properly included. Thanks to Johannes Bornhold for this correction.Correction for IE: on some Windows platforms, the display of the window status bar cannot be avoided unless the script is granted some privileges; in such cases, the height of the resized popup windows was insufficient; the resizing algorithm has been revised in order to correct this situation.Correction: the mailto link function did not work.Allow insertion of a file uploader on the File tab of the Insert/Modify link popup window (when TYPO3Browsers is used); the feature is enabled when property options.uploadFieldsInTopOfEB is set to 1 in User TSConfig. Thanks to Peter Niederlag for adding this feature.For TYPO3 3.7.0+: use the tab menu in TYPO3 Insert/Modify link popup window.Modify default Page TSConfig RTE configuration so as to remove Open Office <sdfield>­tags.New Page TSConfig properties: removeComments, removeTags, removeTagsAndContents.Correction for Mozilla/Firefox: when pasting in text by pressing the ctrl­v keys, the Mozilla extension installation was incorrectly triggered and/or failed.Correction: inserting a paragraph from the context menu when positioned in a table or a list produced incorrect result.New plugin/button allows to insert/edit acronyms and abbreviations. Not currently available in IE. Acronyms and abbreviations may be pre­defined with Acronym record type inserted on the TYPO3 site root.Transform abbr tags into acronym tags when IE is used.

0.5.3 Correction to misbehavior of mailto link popup when no anchor class is specified in Page TSConfig.

0.5.4 Correction: one label of plugin RemoveFormat was not localized.Correction: custom skins prevented correct loading of the RTE.Correction for IE: incorrect display of the current class in the paragraph style selector in some configurations.Correction for IE: the border handles of images and tables could not be selected for resizing.Correction for IE: table, img, ol and ul elements may be correctly selected through the editor status bar.Correction for IE: incorrect positioning of some popup windows.Correction for IE: incorrect behavior of the InlineCSS text style selector when Arabic text was selected.

0.5.5 The size of the back end editor area may be configured in User TSConfig. See the configuration section. Thanks to Peter Enzenberger.In Mozilla/Firefox, url's and email's are automatically transformed into links as soon as they are followed by a space; hitting escape or ctrl­z before any other key unlinks the text. Thanks to Xinha.Scripts compressed by about 25%. Use of compressed scripts is controlled by extension configuration.Improved memory management and reduced memory leakage.Correction: the cellinsertafter button was incorrectly configured in the default configuration.Correction: when multiple instances of the editor were loaded on the same page, the always­show buttons were added only on the tool bar of the first instance.Correction: the path to default skin component htmlarea­edited­content.css was incorrectly set.When the configuration variable Enable Mozilla/Firefox extension is enabled, if the client browser is Firefox 1+, the installation of the Firefox extension AllowClipboard Helper will triggered instead of the extension generated by this TYPO3 extension.In Mozilla/Firefox, an exception will be raised only when performing a paste with the tool bar button. Pasting with ctrl­v key will not raise any exception. Thanks to Guillaume Crico.

EXT: htmlArea RTE ­ 49

Version: Changes:

0.5.6 Correction: the MS Word Formatting option of the RemoveFormat button was broken in the previous version.Url of AllowClipboard Helper is added as an extension configuration variable.The address and dl tags are added to the list $headListTags of TYPO3 system class t3lib_parsehtml_proc. See Known problems.

0.5.7 Correction: since version 0.5.5, html attribute values could be html­encoded more than once.

0.5.8 Correction: the editor will load correctly even if it is located in a hidden tab at te time of loading. See Known problems.Improved memory management for IE.

0.5.9 Correction for IE: with some locales, the type of paragraph displayed in the toolbar may not correspond to the type of paragraph of the current selection.Address is added to the default list of types of paragraphs.Correction: since 0.5.5, html­encoding of single quotes was causing incompatibilities.Correction: the Acronym plugin was broken since version 0.5.5.Correction: if a title is added on a link, the link is not eligible as typolink, and TYPO3 will add a rtekeep attribute on the a tag; if the link is edited and the title removed, the editor should remove the rtekeep attribute so that the link becomes eligible as typolink again.Correction: since 0.5.2, the Insert/Modify Link dialog could be broken in TYPO3 3.6.New Page TSConfig property: removeTrailingBR. In Mozilla/Firefox/Netscape browsers, whenever some text is entered in an empty block, a trailing br tag is added by the browser. If this property is set, any trailing br tag in a block element will be removed on save and/or change mode. However, multiple trailing br tags will be preserved.For IE: an error message will be displayed if execution of ActiveX controls is not enabled.

0.6.1 Added documentation section on server configuration.Correction: the compressed version of plugin scripts were not used.Various changes for performance improvement.Added FAQ on hotkeys.Update to Finnish and Norwegian translations.

0.6.2 Correction: the  image update popup dialog was broken in the previous version.Update to the recommended server configuration for png images.Addition of two example skins: blue­look and xp­blue, inspired by Xinha.New Page TSConfig property: keepButtonGroupTogether will keep buttons of a same group together on the same line of the editor tool bar. Not supported in IE, nor in Mozilla 1.3.Adjustments to the default skin. Custom skins may need to be adjusted.

0.6.3 Correction: the  editor failed to initialize correctly when Page TSConfig property hideTableOperationsInToolbar was set to 1.Addition of Toggle borders in the context menu.Correction: updating a link did not work when the link was set on an image and on multiple elements.

0.7.0 Problem with Firefox extension “All­in­One Gestures” documented as Known problem.Blue­look and xp­blue skins moved to separate extensions: sr_rtehtmlarea_bluelook and sr_rtehtmlarea_xpblue respectively.Update to Finnish and Norwegian translations.

0.7.2 Correction: incorrect display of the toolbar in some configurations.Correction: incorrect update of some table properties.Adjustments to the names of the css selectors of some toolbar buttons. Skins sr_rtehtmlarea_bluelook and sr_rtehtmlarea_xpblue need to be upgraded. Custom skins need to be updated.Correction: incorrect  behavior of the hot keys (ctrl+key) and of the context menu's access keys (alt+key).Remove generation of Mozilla/Firefox extension. Remove requirement for PHP zlib. Remove Archive_Zip package. Trigger install of AllowClipboard Helper  for all supported versions of Mozilla/Firefox. AllowClipboardHelper Firefox extension has been localized to French and Spanish.Correction: some labels of the non­TYPO3 link and image insertion popups were not localized.Revised About window. Skins need to be upgraded. Custom skins need to be updated.New anchor accessibility feature.Correction: erratic behaviors in Mozilla/Firefox when automatically detecting links and when backspacing.Correction: PHP Fatal error when SpellChecker is enabled under PHP5. See http://bugs.typo3.org/view.php?id=1470 Update to the Dutch and German translations.Correction for IE (and maybe other cases, see http://bugs.typo3.org/view.php?id=1425): When an unforgiving browser refuses to parse the content coming from the database, a popup window will inform the user that the HTML document is not well­formed, and the editor will be started in textmode so that the user can edit the error in the HTML source.Correction: nested lists were not compliant with XHTML.Correction: the path to skin file htmlarea­edited­content.css could be incorrect when typo3 is installed in a sub­directory.Correction for IE: the paragraph style selector box was disabled.

0.7.4 Correction for Mozilla/Firefox: when the editor was loaded in a hidden tab, the size of the editing area would be incorrect when the tab becomes visible.Update to Finnish and Italian translations.Addition of Czech translation.Correction to the documentation of the anchor accessibility feature.Correction: insufficiently qualified CSS selectors in the editor skins resulted in styling problems mainly when the editor is used in the front end. Thanks to Claudio Strizzolo.Correction: toggleborders button caused inconsistencies in the class selector of the table properties popup window.Correction to the character set used by the xml parser and Aspell when invoked by the spell checker with iso­8859­1 content.

EXT: htmlArea RTE ­ 50

Version: Changes:

0.7.6 Two new extension configuration variables allow to specify the maximum resolution of plain images inserted with the TYPO3 image browser.Correction for TYPO3 3.8 on Windows server: the path to the locallang file of the spell checker was incorrectly set.Addition of Danish translation.Update to Russian translation.Correction: if multiple instances of the editor were loaded on the same page, with different plugins configuration for each, only the scripts of plugins enabled in the last instance were loaded on the page, resulting in JavaScript errors.New Page TSConfig and User TSConfig property enablePersonalDicts may be used to enable the use of personal dictionaries when using the spell checker.Correction: some links could not be edited. See http://bugs.typo3.org/view.php?id=1748Correction: possible incorrect character set conversion of default titleText (set in language file through anchor accessibility feature configuration) when backend is utf­8.

1.0.0 Extension of system class t3lib_parsehtml_proc : move any style attribute of an a­tag to a wrapping span­tag, so that the link may be transformed into a typolink, if no other attribute prevents its transformation. Thanks to Dimitrij Denissenko for this idea and its implementation.Correction: updating the properties of an image was broken in version 0.7.6.Correction: in the Remove Format window, when some text is selected, the default cleaning area will be “Selection” (rather than “All”). Thanks to Bernhard Kraft for noting this usability issue.Method HTMLcleaner_db of class t3lib_parsehtml_proc is modified to honor Page TSConfig setting RTE.default.proc.HTMLparser_db.xhtml_cleaning = 1. See section Known problems.

1.1.0 New FAQ about style selector boxes in IE.Numerous adjustments for eventual Opera support.Add non­breaking space to the palette of the insertcharacter palette. Add hotkety ctrl+space to insert a non­breaking space.Restructure the order of characters in the Insert special character popup window.Page TSConfig removeTags property would incorrectly remove too many tags.New Page TSConfig property keepToggleBordersInToolbar.Update of the link to the Mozilla/Firefox AllowClipboardHelper extension. The new version has new features, new translations and will work with Firefox 1.5.New TYPO3HtmlParser plugin and enableWordClean configurability.Add support for header cells (th tag) and for table sections (thead and tfoot tags) in table operations.Update all skins for th elements and scope attribute.Add support for all Page TSConfig properties supported by Classic RTE: RTE.classes, classesTable, classesTD, classesLinks, mainStyleOverride, mainStyleOverride_add, mainStyle_font, mainStyle_size, mainStyle_color, mainStyle_bgcolor, inlineStyle, disableRightClick and disablePCexamples.Make Page TSCongfig settings compatible when migrating from Classic RTE to htmlArea RTE.Add No font and No size elements if font and size selectors.New default configurations: Typical, Advanced, Demo. Extension configuration variable Enable all editor options is replaced by Default configuration settings.Correction for Mozilla/Firefox: when an email address is automatically recognized, the created link would be wrong if the local part of the email address contained parts with only one letter.Correction: some icons were missing in the element browser when adding or editing links.Correction for IE: the link button did not get activated when text was selected using keyboard arrows.Correction: The title and alt attributes produced by the link creation/editing button could undergo incorrect character sets conversions in some configurations of backend and/or frontend character sets.Add Page TSConfig properties to configure table operations dialogs: disableAlignmentFieldsetInTableOperations, disableSpacingFieldsetInTableOperations, disableColorFieldsetInTableOperations, disableLayoutFieldsetInTableOperations and disableBordersFieldsetInTableOperationsNew Page TSConfig property ignoreMainStyleOverride for ease of migration from Classic RTE to htmlArea RTE.Correction to some cleaning regular expressions in RemoveFormat plugin. Thanks to Ernesto Baschny.Keep character map window open until explicitly closed.Feature for Mozilla/Firefox: apply style to multiple selected cells of a table.Correction to the extraction of class selectors from some css rules.Extend t3lib_parsehtml_proc only if TYPO3 version is smaller than 4.0Updates to Brazilian, Danish and Finnish  localizations.Add Slovak localization.Modify configuration and module scripts so that the extension may be run as system, global or local extension. Restructure extension modules and resources folders.Convert some files to UNIX linebreaks.Make extension conflict with extension rte_conf.Reconfigure to hook on new version of extension Lorem Ipsum.Convert all localization files to xml format. From this version, TYPO3 3.7.0+ is required.

1.1.1 Correction to path settings affecting image drag & drop and file/image upload.

1.1.2 Correction to path settings affecting CSS files when TYPO3 is installed in a subdirectory.Cache the main JS files in typo3temp directory with hashed name including the extension version number.Adjust opening size of some popup windows.Correction to the automatic detection of url's in Mozilla/Firefox: the rightmost domain should be alphabetic.Enable link editing options in the context menu when the cursor is positioned inside a link.Enable the link button in the tool bar if some text is selected or if the cursor is positioned inside a link.

EXT: htmlArea RTE ­ 51

Version: Changes:

1.1.3 Remove TYPO3HtmlParser plugin when the editor is used in the frontend.Correct height, margins and padding of toolbar select fields in all editor skins.Increase default width of the editor area from 460px to 530px.Correction for Mozilla/Firefox: remove ending > from auto­detected email link.Cleaning code and adding hook in TYPO3HtmlParser plugin (mod6/parse_html.php).

1.1.4 Improved link auto­detect in Mozilla/Firefox.Fix issue 2358: http://bugs.typo3.org/view.php?id=2358Correction to the behaviour of popups.Correction to the QuickTag plugin (attributes of hx tags).Change opening default of Acronym plugin to abreviation.Reduce font size of context menu in all skins.Work around Mozilla bug to force display update when table borders change.Adjust opening height of SpellChecker window.

1.1.6 Enable the use of the RTE in IE 7.Change name of the “Advanced” default settings to “Minimal” default settings.Remove the title field from the link creation window when the version of TYPO3 is smaller than 3.8.2.Correct default processing configuration for the case of center, font, strike and u tags when encountered outside paragraphs.Replace true linebreaks with space inside block tags and after hr tags (see bugtracker issue 2365).Correction: textstyle selection list (plugin InlineCSS) was not honoring property showTagFreeClasses.

1.1.7 Correction: incorrect default styles were assigned to links other than internal.Allow style attribute on span tag in the Demo default settings.

1.1.8 Correction: RemoveFormat plugin was removing too many tags and attributes. Thanks to Vincent Giroux.Remove conflicts with obsolete extensions deleted from TER.

1.2.0 Remove Word 2003 o:p tags on paste with enableWordClean and/or save.Path setting correction in SpellChecker plugin.Fix bugtracker issue 2656.

1.3.0 Add $RTEWrapStyle variable to frontend plugin class.tx_rtehtmlarea_pi2.php (bugtracker issue 2760).Use new TS parsing := for cumulative sets of configuration defaults.Requires TYPO3 4.0.

1.3.1 Correction to default value of $RTEWrapStyle variable in frontend plugin.Fix bugtracker issue 2682.Fix bugtracker issue 2241: Error displaying htmlarea in the frontend. API change: extensions using the RTE in the frontend must be adjusted! See tutorial section.Remove class.ux_t3lib_parsehtml_proc.phpRemove support for versions older than 4.0 and clean code.Adjustment to default settings for FE plugin.Ensure IE7 always uses native XMLHttpRequest rather than ActiveX.Fix bugtracker issue 2820: link creation did not work when RTE.default.anchorClasses was empty.

1.3.4 Correction to configuration of enableWordClean. TYPO3HtmlParser was loaded even when no parser configuration was provided. See bugtracker issue 2530.Correction to server­based word cleaning when backend is not utf­8 and PHP is compiled with mbstring.Merge remaining documentation elements from manual of extension Classic RTE (rte).Cosmetic adjustments for compatibility with t3skin system extension.

1.3.5 Further correction to server­based word cleaning . See bugtracker issue 2530.

1.3.6 Correction to RemoveFormat plugin.Link entered in the RTE would not be rendered correctly in the frontend when using locale tr_TR. See bugtracker issue 1303.

1.3.7 Fix bugtracker issue 3120: transforming text in link in Firefox could take excessive time.Fix bugtracker issue 3060: RTE includes a page from the Frontend when pasting text with enableWordClean configured with server­based parsing, and TYPO3 installed in sub­directory.

EXT: htmlArea RTE ­ 52

Version: Changes:

1.4.0 Improved integration of TYPO3Browsers plugin with TYPO3 core element browser.Move up attributes setting form in link and image insertion dialogs.Add support for User TSConfig properties options.createFoldersInEB and options.noThumbsInRTEimageSelect.Add new Page TSConfig properties buttons.link.options.removeItems, buttons.link.targetSelector.disabled and buttons.link.popupSelector.disabled.Add new Page TSConfig properties buttons.toggleborders.keepInToolbar and  buttons.toggleborders.setOnTableCreation.Add error text to troubleshooting log when attempt to load stylesheets fails.Fix bugtracker issue 2026: The editor gets the focus on page load in IE.Allow to enable the use of images with the Minimal default configuration.Fix bugtracker issue 3296: frontend use of htmlArea RTE should provide a no­javascript fallback solution. API change: extensions using the RTE in the frontend should be adjusted by adding declaration of $specConf variable! See tutorial section.Fix bugtracker issue 3006: in IE, link properties were not updated when the link was not completely selected.Add new Page TSConfig properties buttons.inserttag.denyTags, buttons.inserttag.allowedAttribs and buttons.inserttag.tags.[tagname].allowedAttribsAdd new Page TSConfig properties buttons.image.options.removeItems, buttons.image.options.magic.maxWidth, buttons.image.options.magic.maxHeight, buttons.image.options.plain.maxWidth and buttons.image.options.plain.maxHeightAdd extension configuration variable "Enable links accessibility icons".Add extension configuration variable "Enable the DAM media browser" and Page TSConfig property buttons.image.title.useDAMColumn.Fix bugtraker issue 3410: Updating image in IE doesn't work.

1.4.1 Correction: path setting in class.tx_rtehtmlarea_browse_links.php and class.tx_rtehtmlarea_select_image.phpCorrection: configuration variable enableAccessibilityIcons was not set.

1.4.2 For compatibility with := addToList syntax, show all buttons when * is found in the list RTE.default.showButtons.Correction to generated stylesheet file. Thanks to Ingmar Schlecht.Correction for Netscape 8.l: useCSS setting not honored.Remove dependency of Spell Checker on Static Info Library (sr_static_info). Requires Static Info Tables version 2.0.0+.

1.4.3 Fixed a security Issue:http://typo3.org/teams/security/security­bulletins/typo3­20061220­1/also published updated/fixed versions 1.1.4, 1.2.1, 1.3.8, 1.5.1dev

1.4.4 Fix bugtraker issue 5266: htmlarea RTE not loading with Firefox 2.0.0.3.

1.5.0 Allow UTF­8 file names for images.

1.5.3 Fix bugtraker issue 5177: htmlArea RTE not correctly displayed in IRRE child form­fields and tabs

1.5.4 Fix bugtracker issue 6152: AllowClipboard helper offered by htmlArea RTE doesn't work with 2.0.0.x FirefoxFix bugtracker issue 6340: rtehtmlarea not working with "Editforms on page" optionFix bugtracker issue 4183: Incorrect display in htmlArea RTE of utf­8 labels for colors, classes and fonts defined in PageTSConfigFix bugtracker issue 4525: In htmlArea RTE, disabling personal dictionaries in UserTSConfig not honoredFix bugtracker issue 6546: Remove htmlArea RTE acronym from Insert­Record object

1.5.5 Fix bugtracker issue 5031: htmlArea RTE incorrectly processes col tags and default proc options disallow col and colgroup tagsFix bugtracker issue 6476: htmlArea RTE incorrectly nests tags on return key in FFFix bugtracker issue 6640: htmlArea RTE tool bar is not updated in IE when up or down arrow is pressed

1.6.3 Add feature 6579: Make htmlArea RTE extensibleAdd feature 6619: Let htmlArea RTE use t3lib_div::minifyJavaScript() to compress javascript filesAdd feature 6705: Display all classes of an element in the statusbarElminate list of plugins in rtehtmlarea EM configuration

EXT: htmlArea RTE ­ 53

Version: Changes:

1.6.4 Fix transparency of buttons in Opera.Fix bugtracker issue 6886: Incorrect default language tooltips for undo and redo buttonsAdd new buttons insertparagraphbefore, insertparagraphafter and blockquote.Add feature 5455 and 6769: Enable htmlArea RTE in Safari.Fix bugtracker issue 6837: Strange layout for header N except the first one (Safari) Add Page TSConfig property buttons.table.disableEnterParagraphsFix bugtracker issue 6064: RTE adds unwanted <p> tags in TablesAdd feature 6712: make hotkeys configurable in PageTSConfig.Fix bugtracker issue 5952: Usability Issue with classes wrapped with <> in select listsFix bugtracker issue 5951: Disturbing behaviour of indent/outdent and TABAdd feature 3708: support for <blockquote> and <q>Fix bugtracker issue 5977: align="center" (right or left) not any more supported by W3CAdd feature 6034: adding classes to inline elements without additional spanImproved behaviour and configuration options of formatblock and blockstyle drop­down lists.Add Page TSConfig RTE sub­array mutuallyExclusiveClassesAcronym plugin of htmlArea RTE now using new plugin API and enabled in IE7Fix bugtracker issue 6154: Plugin Acronym enables class abbr for spanAdd bugtracker feature 1927: Activate Acronym Plugin for IE7Add formattext drop­down list and a number of buttons for inline elementsAdd feature 6034: textstyle drop­down list applies classes to inline elements without additional span elementFix bugtracker issue 7052: Permission problem of RTE imagesFix bugtracker issue 6821: Empty aragraph tags with attributes are removed.

1.7.0 Various enhancements to link and image dialogues and configurabilityFixed bug #3957: picture drag and drop throws you out of the tab navigationFixed bug #5490: Drag 'n drop javascript error / blank screen in IEFixed bug #6787: classesAnchor and classesLinks get lost when changing tab in link browserFixed bug #4074: SpellChecker not working. Thanks to Reinier Kleipool.Fixed bug #4777: Spellchecker split words at some special chars (e.g. german umlauts). Thanks to Daniel Chabrol.Added feature #4100: Insert/Modify Link with DAMAdded feature #5885: Default image classAdded feature #5902: Removing style attribute for imagesAdded feature #6115: Enabling configuration of the "edit image" dialogueAdded feature #3633: Individual height of inline RTE. Adding Page TSConfig property RTEHeightOverride. Thanks to Ralf Hettinger.Fixed bug #5013: RTE Editor not working in Firefox 3.0Added feature #7318: Text direction should be set with the dir attributeNew addIconAfterLink and target properies in classesAnchor configuration.Allow insertion of Acronym records on any page and add Page TSConfig property buttons.acronym.PIDListAdded feature #7332: Add default target to classes configured with classesAnchor in Page TSConfigAdded feature #880: Click­enlarge for Images in htmlArea RTE

1.7.1 Fixed bug #5659: Several bugs when writing HTML entities and tags inside of htmlArea RTEFixed bug #3830: htmlArea RTE: Entities entered in wysiwyg are decodedFixed bug #7495: Various issues with nested lists in htmlArea RTEFixed bug #4588: Frontend htmlArea RTE loads global RTE config instead of function parameter $thisConfigFixed bug #7232: Selecting words with CTRL+SHIFT+Left doesn't activate "link" button in IEFixed bug #7584: htmlArea RTE: pressing TAB in last cell of table should create new rowFixed bug #6767: Merge cells does not work on merged cellsFixed bug #3537: Inconsistent markup when adding tr/td in different ways (Firefox) – Addition of Page TSConfig property RTE.default.buttons.table.enableHandles

EXT: htmlArea RTE ­ 54