Skvělý WYSIWYG editor textů – Trumbowyg
Už delší dobu jsem chtěl najít pořádný WYSIWYG editor textů, kterým bych nahradil TinyMCE ve svých projektech. TinyMCE sice umí téměř vše co člověka napadne, ale je dost těžkopádný a veliký. Když chci mít na jedné stránce více polí pro jednoduchou editaci textu tak je to jako jít s kanónem na vrabce. Například v evidenci zakázek systému klienti.cz potřebuji u každé zakázky mít možnost editovatelného záhlaví, zápatí a poznámky. Stačí jednoduché formátovací možnosti: tučné písmo, kurzíva, barvy textu a pokladu, seznamy.
Našel jsem, zdá se, ideální řešení a tím je Trumbowyg . Je malý, jednoduchý, uživatelsky přívětivý a rychlý.
Oproti TinyMCe nepracuje s formulářem a jeho <textarea>, ale to vůbec nevadí. Jednak v případě mých projektů chci ukládat zapsaný text samostatným tlačítkem tzn. mimo formuláře Nette a když už bych potřeboval začlenit Trumbowyg do formuláře tak bych vyplněný text před odesláním formuláře zpracoval Javascriptem a vložil do hidden pole formuláře ručně. Samozřejmě je třeba myslet na bezpečenost a tak před odesláním zapsaného textu provádím ošetření zadaného textu pomocí funkce encodeURIComponent().
Protože chci práci s textovými poli využívat na více místech aplikace klienti.cz, vytvořil jsem v Nette komponentu, která řeší veškerou práci s textem. Tam, kde ji nyní budu potřebovat, jen vložím například {control editTextFooter} do šablony a vytvořím komponentu v presenteru a je hotovo.