Web Louca

Home Joomla Joomla 1.5 utilizando Mootools 1.2+

Joomla 1.5 utilizando Mootools 1.2+

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
//Remover mootools
$headerstuff = $this->getHeadData();
reset($headerstuff['scripts']);
$moo = key($headerstuff['scripts']);
unset($headerstuff['scripts'][$moo]);

//A linha abaixo não remove o Mootools mas sim o load default do ficheiro caption.js,
//utilizado por algumas extensões, pelo que pode ser ignorada
unset($headerstuff['scripts']['/media/system/js/caption.js']);

$this->setHeadData($headerstuff);
?>

 

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:

<head>
<?php
// remove mootools 1.11 para guests e utilizadores reguistados
$utilizador =& JFactory::getUser();
if ($utilizador->get('guest') == 1 or $utilizador->usertype == 'Registered') {
$headerstuff = $this->getHeadData();
$headerstuff['scripts'] = array();
$this->setHeadData($headerstuff);
}
?>

<!-- A linha abaixo permite "injectar" css e js directamento no <head>-->
<jdoc:include type="head" />

<!-- A framework javascript que desejar -->
<script type="text/javascript" src="/Mootools12.js"></script>

<!-- outro codigo -->

</head>

Trackback(0)
Dario
Outubro 05, 2008

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

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
Subscreve a newsletter gratuita e começa hoje mesmo a criar websites e a ganhar dinheiro na internet!


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...