Přihlásit | Registrovat | English version

TinyMCE

Užitečné odkazy

Navěšení TinyMCE na textareu

Pomocí třídy (doporučeno)

$form->addTextArea('text', 'Text')
->getControlPrototype()->class('mceEditor');
tinyMCE.init({
mode:
"specific_textareas",
editor_selector:
"mceEditor",
...
});

Pomocí ID

$form->addTextArea('text', 'Text')
->setHtmlId('mceEditor');
tinyMCE.init({
mode:
"exact",
elements:
"mceEditor",
...
});

Zprovoznění validace

Aby bylo možné používat na textareu s TinyMCE validaci, je nutné zajistit, aby se před Nette validací uložil napsaný text do textarey.

Pokud je ve formuláři jen jedno tlačítko, nebo je jich tam více, ale všemi se spouští validace, tak lze uložení obsahu navázat na onSubmit formuláře.

$form->getElementPrototype()->onsubmit('tinyMCE.triggerSave()');

Pokud jedno z tlačítek validaci nespouští (třeba tlačítko „Zpět“, nastavuje se pomocí metody setValidationScope), tak je validace navázána na onClick těch tlačítek, které validaci spouští.

foreach ($form->getComponents(TRUE, 'SubmitButton') as $button) {
if (!$button->getValidationScope()) continue;
$button->getControlPrototype()->onclick('tinyMCE.triggerSave()');
}

Komentáře Comments feed

trollnet | 21. 11. 2010, 18:21 | comment

Díky za návod, vše funguje jak má. Dřív sem byl zvyklý používat CKeditor a o TinyMCE sem ani nevěděl. Nevíte někde jaký je mezi nimi rozdíl?

Quba | 23. 10. 2011, 14:10 | comment

Měl jsem potíž s tím kódem

tinyMCE.init({...

Z příkladů jsem pochopil že do .latte patří ještě dopsat

<!-- TinyMCE -->
<script type="text/javascript" src="{$basePath}/js/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init(
{
mode : "textareas",
theme : "simple"
});
</script>
<!-- /TinyMCE -->

Díky za návod

Jan Tvrdík | 16. 11. 2011, 13:44 | comment

Pokud je vám něco nejasné, zkuste si přečíst alternativní návod od Ot@s.

Login to submit a comment