JFactory/getEditor
m (→Example) |
m (→Example) |
||
| Line 34: | Line 34: | ||
Be aware that JRequest::GET by default filters all HTML-code down to plain text, which might not be very useful when using the editor. | Be aware that JRequest::GET by default filters all HTML-code down to plain text, which might not be very useful when using the editor. | ||
| − | To store HTML-code within your model class you <b>MUST</b> explicitely request HTML-Code from the JRequest-Object, otherwise all HTML will be stripped ''(and you might spend one day in reading docs like i did today)''. | + | To store HTML-code within your model class you <b>MUST</b> explicitely request HTML-Code from the JRequest-Object, otherwise all HTML will be stripped ''(and you might spend one day in debugging and reading docs like i did today)''. |
<source lang="php"> | <source lang="php"> | ||
| Line 43: | Line 43: | ||
$row =& $this->getTable(); | $row =& $this->getTable(); | ||
$data = JRequest::get( 'post'); | $data = JRequest::get( 'post'); | ||
| − | /* Get proper | + | /* Get proper HTML-code for your HTML-encoded field now by using JREQUEST_ALLOWHTML*/ |
$data['yourfieldname']=JRequest::getVar( 'yourfieldname', '', 'post', 'string', JREQUEST_ALLOWHTML ); | $data['yourfieldname']=JRequest::getVar( 'yourfieldname', '', 'post', 'string', JREQUEST_ALLOWHTML ); | ||
| + | /* now proceed as suggested */ | ||
$row->bind($data); | $row->bind($data); | ||
Revision as of 14:50, 12 August 2009
Returns a reference to the global editor object, only creating it if it doesn't already exist. The object returned will be of type JEditor.
Syntax
object JEditor getEditor( $editor )
where:
| Argument | Data type | Description | Default |
|---|---|---|---|
| $editor | string | The name of the editor (for example, 'tinymce'). If null then the current editor will be returned. | null |
Example
In this example, you can see how to display the editor and send specific display parameters.
$editor =& JFactory::getEditor(); $params = array( 'smilies'=> '0' , 'style' => '1' , 'layer' => '0' , 'table' => '0' , 'clear_entities'=>'0' ); echo $editor->display( 'desc', '', '400', '400', '20', '20', false, $params );
For a complete list of parameters that can be passed to the TinyMCE editor, see the Joomla source file: /plugins/editor/tinymce.php.
HINT for your JModel:
Be aware that JRequest::GET by default filters all HTML-code down to plain text, which might not be very useful when using the editor.
To store HTML-code within your model class you MUST explicitely request HTML-Code from the JRequest-Object, otherwise all HTML will be stripped (and you might spend one day in debugging and reading docs like i did today).
/*The store-procedure in your model might then look like this*/ [...] function store() { $row =& $this->getTable(); $data = JRequest::get( 'post'); /* Get proper HTML-code for your HTML-encoded field now by using JREQUEST_ALLOWHTML*/ $data['yourfieldname']=JRequest::getVar( 'yourfieldname', '', 'post', 'string', JREQUEST_ALLOWHTML ); /* now proceed as suggested */ $row->bind($data); [...] $row->check(); [...] $row->store(); [...] } [...]