03

Out

Joomla 1.5 utilizando Mootools 1.2+

Escrito por Gonçalo Martins   
Joomla e Mootools

O Joomla 1.5 como a maioria dos desenvolvedores de websites utilizando este CMS já deve ter reparado, faz por defeito o carregamento da versão 1.11 ad Framework Mootools. Tanto no backend como no frontend. O carregamento desta versão ultrapassada do Mootools cria alguma limitação no desenvolvimento de aplicações javascript recentes utilizando Joomla 1.5.

 

Embora pouco ou nada se possa fazer para desabilitar o load desta versão do mootools no backend (nem se deve fazer), desabilitar o carregamento da versão 1.11 do Mootools no frontend de um site em Joomla é extremamente útil.

1º - Se não utiliza "efeitos" javascript é um peso desnecessário ao carregamento do seu website;

2º - A versão 1.11 está ultrapassada;

3º - Pode haver incompatibilidades caso deseje utilizar outras frameworks javascript;

4º - Permite-lhe actualizar para a versão 1.2 do Mootools.

O código mais utilizado, incluindo eu, aqui no WebLouca passa por adicionar as seguintes linhas logo abaixo do <head> no index.php:

php
  1. <?php
  2. //Remover mootools
  3. $headerstuff = $this->getHeadData();
  4.  
  5. reset($headerstuff['scripts']);
  6.  
  7. $moo = key($headerstuff['scripts']);
  8.  
  9. unset($headerstuff['scripts'][$moo]);
  10.  
  11. //A linha abaixo não remove o Mootools mas sim o load default do ficheiro caption.js,
  12. //utilizado por algumas extensões, pelo que pode ser ignorada
  13. unset($headerstuff['scripts']['/media/system/js/caption.js']);
  14.  
  15. $this->setHeadData($headerstuff);
  16.  
  17. ?>

 

No entanto a solução acima, como me deparei à pouco tempo, não funciona caso o website possua um sistema de reguisto. Isto porque quando o utilizador realiza o login o ficheiro Mootools 1.11 será carregado, criando incompatibilidade com a versão 1.2 ou outra framework Javascript.

A solução mais imediata que me ocorreu foi bloquear o load do Mootools 1.11 via .htaccess, no entanto existe outra solução que passa por modificar o código acima, de forma a que o Mootools não carregue também para utilizadores registados. O código ficaria algo do género:

javascript
  1. <head>
  2. <?php
  3. // remove mootools 1.11 para guests e utilizadores reguistados
  4. $utilizador =& JFactory::getUser();
  5.  
  6. if ($utilizador->get('guest') == 1 or $utilizador->usertype == 'Registered') {
  7. $headerstuff = $this->getHeadData();
  8.  
  9. $headerstuff['scripts'] = array();
  10.  
  11. $this->setHeadData($headerstuff);
  12.  
  13. }
  14. ?>
  15. <!-- A linha abaixo permite "injectar" css e js directamento no <head>-->
  16. <jdoc:include type="head" />
  17. <!-- A framework javascript que desejar -->
  18. <script type="text/javascript" src="Mootools12.js"></script>
  19. <!-- outro codigo -->
  20. </head>


Gostou deste Artigo?
Subscreva o feed RSS ou reguiste-se na Newsletter do WebLouca, agora!
Categoria:
Se preferir, pode ainda deixar um comentário

PATROCINADORES


cometarios
Trackback(0)
Dario
Outubro 05, 2008
http://www.diversidades.com.br

Olá Gonçalo.

Tire-me uma dúvida por favor.

O que significa "faz por defeito o carregamento da versão 1.11"?

Perguntou, pois aqui no Brasil, defeito significa falha ou imperfeição.

Abraços,

Dario

Gonçalo M
Outubro 06, 2008

Olá Dário, aqui em Portugal também...

No entanto não sendo eu linguista, no contexto da frase a expressão "por defeito" é utilizada muitas vezes para dizer "by default".

Mas talvez fosse mais correcto utilizar "por predefinição".

Apesar disto, considero ainda um pequeno defeito do Joomla realizar o load da Framework, uma vez que para quem não utiliza é peso para o load desnecessário :)

Thiago
Março 19, 2010
http://www.fiscal.cz.cc

Bom, aqui no Brasil, a palavra inglesa "default" é traduzida, sei lá por que motivo, como "Padrão", embora a tradução literal seja essa que vocês portugueses usam, pra nós, em virtude dessa tradução que nos é repetida há tempos, por defeito não faz muito sentido, e sim por padrão.


Escreva o seu Comentario
 
  pequeno | maior
 

busy
 

Patrocinadores do Site

Subscrever Feed



Artigos

Ultimos artigos
jsimageNeste artigo vou-lhe demonstrar como rodar imagens e qualquer elemento desde div a span co...
phpthumbAtualmente praticamente todos os websites possuem a necessidade de listar os seus artigos...
benchmarksA pouco mais de um ano falei sobre uma ferramenta para otimizar imagens (Artigos/optimize...
phpimageredRedimensionar uma imagem com php pode ser um processo complicado. Quando por exemplo um wo...
linksafiliadosNo inicio do ano escrevi um artigo onde dáva a conhecer uma forma de criar links de afili...