sfNicEditPlugin: Adicione um editor de texto rico aos seus forms no Symfony
Em meados de 2009 usei o framework Symfony para desenvolver um sistema em PHP para um projeto do qual eu era bolsista. Terminado o projeto, abandonei o framework. Agora reiniciei meus estudos e estou gostando bastante. Tanto que já desenvolvi meu primeiro plugin para compartilhar com a comunidade e já tenho muitos outros em mente.
O nome do plugin é sfNicEditPlugin. Ele adiciona uma instância do editor de texto rico NicEdit a um textarea. Esta é a primeira versão do plugin, ainda faltam alguns parâmetros que o NicEdit aceita, outros já estão disponíveis.
Você pode encontrar o plugin no meu Github ou na página de plugins do Symfony. Em ambos os locais você encontra instruções de instalação em inglês. Aqui no blog vou publicar a versão em português.
Instalação
Instalação (via pacote PEAR)
symfony plugin:install sfNicEditPlugin
Instalação via Git
git clone git://github.com/fonini/sfNicEditPlugin.git
Ou baixe o plugin aqui e extraia para a pasta plugins.
Você deve ativar o plugin, editando o arquivo config/ProjectConfiguration.class.php.
<?php
class ProjectConfiguration extends sfProjectConfiguration{
public function setup(){
$this->enablePlugins(array('sfDoctrinePlugin', 'sfNicEditPlugin', '...;'));
}
}
Após ativar o plugin, você deve publicar os arquivos CSS e JS utilizados por ele. Rode o seguinte comando:
symfony plugin:publish-assets
Por último, limpe o cache:
symfony cc
Usando o widget
Basta você editar a classe que gera o form em que você vai usar o NicEdit, por exemplo lib/form/doctrine/NewsForm.class.php.
<?php
public function configure(){
$this->setWidget('text', new sfWidgetFormTextareaNicEdit(array('fullPanel' => true), array('cols' => 100, 'rows' => 20)));
}
Pretendo disponibilizar uma nova versão em breve com todos os parâmetros de configuração disponíves no NicEdit. Entre em contato em caso de dúvida. Abraço!