Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Oi galerinha do forum primeiramente me desculpem pela forma de postagem (pois e meu primeiro post no forum! :D)
Estou com um problema que preciso resolver urgente!
Estou com um projeto de rede social (estou usando o social engine enfim vamos direto ao problema:
Preciso que quando o usuario editar seu perfil, no sobre mim (que no caso eh uma textarea) aceite todas as tags html, pois ela nao aceita nenhum tipo de tag html nem nem nem nada ou seja so da pro usuario escrever textos simples nem quebra de linha a textarea possui :( e preciso muito que essa textarea do about me (sobre mim) aceite as tags html pois muitos usuarios gostam de colocar fotos, videos, formatar o texto etc...
Para isso eu usuarei um editor de textarea no qual seria: Tinymce (esse editor eu ja uso em alguns outros recursos da rede social como: no formulario de comentario, no formulario de postar novidades etc..) mas nao consegui ainda inseri-lo nessa textarea e nem consegui se quer fazer a textarea aceitar as tags html sem o editor...
Entao vamos ao codigo php da textarea:
(sao varios arquivos php ate chegar ao codigo final da textarea (eh tipo um php que vai passando pra outro php ate chegar no arquivo certo (isso atravez de class)(me disculpem se estou complicando mais ainda eh q eu sou novo no php, mais vcs vao entender no final)))
Ela funciona basicamente assim:
No arquivo aboutme.php temos somente a linha de codigo php:
class Fields_Form_Element_AboutMe extends Engine_Form_Element_Textarea
{
}
como você viu uma class chama a outra! Entao vamos para o proximo arquivo que esta indicado no diretorio: Engine/Form/Element/Textarea.php nele temos as seguintes linhas de codigos:
class Engine_Form_Element_Textarea extends Zend_Form_Element_Textarea
{
public $cols = 45;
public $rows = 6;
public function loadDefaultDecorators()
{
if( $this->loadDefaultDecoratorsIsDisabled() )
{
return;
}
$decorators = $this->getDecorators();
if( empty($decorators) )
{
$this->addDecorator('ViewHelper');
Engine_Form::addDefaultDecorators($this);
}
}
}
como vimos na 1 linha desse codigo ele esta chamando mais um arquivo php que no caso esta em: zend/form/element/textarea.php e nele temos:
class Zend_Form_Element_Textarea extends Zend_Form_Element_Xhtml
{
/**
* Use formTextarea view helper by default
* @var string
*/
public $helper = 'formTextarea';
}
Com muito custo consegui achar o diretorio desse arquivo (formtextarea.php)eh nele que quero acrescentar o editor tinymce ou se nao pelo ao menos fazer a textarea aceitar as tags html e eh nele que esta o codigo da textarea segue abaixo o codigo final (formTextarea.php):
class Zend_View_Helper_FormTextarea extends Zend_View_Helper_FormElement
{
/**
* The default number of rows for a textarea.
*
* @access public
*
* @var int
*/
public $rows = 24;
/**
* The default number of columns for a textarea.
*
* @access public
*
* @var int
*/
public $cols = 80;
/**
* Generates a 'textarea' element.
*
* @access public
*
* @param string|array $name If a string, the element name. If an
* array, all other parameters are ignored, and the array elements
* are extracted in place of added parameters.
*
* @param mixed $value The element value.
*
* @param array $attribs Attributes for the element tag.
*
* @return string The element XHTML.
*/
public function formTextarea($name, $value = null, $attribs = null)
{
$info = $this->_getInfo($name, $value, $attribs);
extract($info); // name, value, attribs, options, listsep, disable
// is it disabled?
$disabled = '';
if ($disable) {
// disabled.
$disabled = ' disabled="disabled"';
}
// Make sure that there are 'rows' and 'cols' values
// as required by the spec. noted by Orjan Persson.
if (empty($attribs['rows'])) {
$attribs['rows'] = (int) $this->rows;
}
if (empty($attribs['cols'])) {
$attribs['cols'] = (int) $this->cols;
}
// build the element
$xhtml = '<textarea name="' . $this->view->escape($name) . '"'
. ' id="' . $this->view->escape($id) . '"'
. $disabled
. $this->_htmlAttribs($attribs) . '>'
. $this->view->escape($value) . '</textarea>';
return $xhtml;
}
}
Como voces podem ver o codigo da textarea esta logo acima (no final do codigo php) em (//build the element) creio que eh nele que devemos fazer a alteracao para acrescentar o editor tinymce ou aceitar as tags html!
E eh isso ai galera valeu pela atencao e pela paciencia de ler tudo isso \o/ e espero muito de verdade que alguem possa me ajudar! Valeu ai abraco fiquem com Deus...
Carregando comentários...