Posted by : gon in (joomla)

Respect you yourself should (Joomla Critique #1)

Tagged Under : , , ,

While working to re-build a site formerly used joomla 1.0, I had a little trouble in the control panel of the new 1.5, because I was leaving an error message.

Fortunately it was not fatal, since it could also modify the site parameters without much inconvenience. But it is not comfortable to see that something is not right, except for a large system such as Joomla.

The error indicated that I had an XML file that was not being parsed properly, but it’s not saying which file or which was wrong.

Then I downloaded a backup of the site, and replicate it on my local machine to find out the error. I remembered that there are thousands of Linux applications for console enough powerful to parse and validate the XML’s from my site.

I had an enjoyable experience with the find command. But I was missing the command to validate an xml file. Searching the web, I found that possibly the command xmllint I could. But ultimately did not help, this reveals a small unexpected detail.

xmllint has an option to validate, but to do this work, requires that 1) the XML file using a defined DTD or 2) it passes a DTD as a parameter. Testing without using a DTD by parameter, I tried the following:

find. -name "*.xml" -exec xmllint --noout --valid "{}" \;

Unfortunately, the result was not what I expected. ALL XML files except one, were invalid because they didn’t have defined the DTD. Thanks to that file that it was, I found that joomla has on its site a DTD file so that developers include it in yours XML configuration files. In this way, the developer requires that your XML files have the structure that the system requires.

The worst… that single valid file, was a third-party plugin and not the official developers. That is, the official joomla developers do not respect their own rules when writing code.

Finally, xmllint was not what I was looking for, and only had to check the file was malformed (bad labels closed nested bad …). As I did not know, see on a mailing list (the one I have in the list of FOSS Communities), where I got the solution: xmlwf.

Just change the above command with the following matter and fixed:

find. -name "*.xml"-exec xmlwf "{}" \;

I found the causers (they were 2), which I fixed and gave the matter ended.
But I stayed with the bitter taste of the disregard that the Joomla developers as a mere detail. What gives me confidence for when a new system update?

Posted by : gon in (Opinión)

English Exercise

Tagged Under : , , , ,

Sorry, this entry is only available in Español.

Posted by : gon in (web)

Cambiando el Editor de Joomla

Tagged Under : , , ,

Ya cuando instale Joomla en Promolibros había experimentado inconvenientes con TinyMCE, su “Editor Wysiwyg” predeterminado.

Inconvenientes del tipo “presiono un botón y no ocurre lo que debiera ocurrir”. En ese tiempo, me dí cuenta que en ocasiones era AdBlock Plus el culpable que bloqueaba los scripts necesarios para el funcionamiento.

Hoy después de mucho tiempo sin haber ocupado el editor de contenido, me di cuenta que con ningún navegador fue capaz de funcionar correctamente (el que llegó más lejos fue Safari).

Comprendí entonces que si la cosa fallaba desde el principio, menos estaría pensada para funcionar con navegadores actuales.

Entonces, en menos de 5 minutos buscando, dí con otro editor en javascript que si funciona. Damas y caballeros, les presento a JCE.

Para instalarlo, baje el componente, el mambot y language pack en español. Primero instalo el componente, luego el mambot. Para dejarlo en español, es necesario ir al Menu de Componentes en el panel de Administración, y hacer click en el icono “install”, luego es como cualquier oto paquete de joomla tipo “subir e instalar”.

Para activar el editor y finalmente reemplazarlo por el funesto TinyMCE, es necesario ir Sitio -> Configuración Global, donde basta seleccionarlo en donde dice “Default WYSIWYG Editor:”.

Así que ya saben, si hay algo en Joomla que no les gusta o no funciona, es muy probable que exista un reemplazo, uno de los motivos por los que prefiero el software libre