Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite.
Estava utilizando o Yii Framework e agora estou tendo que fazer um projeto em CakePHP.
Eu ao utilizar os Helpers usava métodos estáticos para acessar diretamente sem ter que instanciar a classe.
Tenho uma classe (helper) no Yii de manipulação de imagem com um método estático que ao passar o email e o tamanho me retorna a imagem do gravatar.
Sendo que nesse helper eu posso retornar a url ou a imagem inteira (<img src="......). E no último parâmetro eu passo um vetor com os atributos html (array('class' => 'gravatarImage'...)
No Yii existe a classe Chtml::image que eu passo a url da imagem e os atributos. Eu consigo fazer isso por conta do método também ser estático. Veja:
// No Yii
// tratamento da imagem jogando para a variável $url
$url = 'http://www.gravatar.com/avatar/' . md5( strtolower( trim( $email ) ) ) . "?s=$s&d=$d&r=$r";
return $img ? CHtml::image($url,'',$atts) : $url; Quero fazer isso no CakePhp. O método é o $this->Html->image('<url>',<array de atributos>).
O problema é que eu não consigo acessar a classe pelo método estático.
Vejam:
// No CakePhp
public static function getGravatar($email, $s = 80, $img = false,$atts = array(),$d = 'mm', $r = 'g')
{
$url = 'http://www.gravatar.com/avatar/' . md5( strtolower( trim( $email ) ) ) . "?s=$s&d=$d&r=$r";
return (!$img) ? $this->Html->image($url,$attr) : $url; // Retorna erro, pois o $this é inacessível já que o método é estáticoEu quero acessar o HtmlHelper do CakePhp por meio de um método estático
Carregando comentários...