Magento 1.4.2.0-beta1 (MagentoConnect la gran estrella)

Luego de la publicación de la última versión estable, y previo al lanzamiento del patch que la corregía, se publicó el 27 de julio la primera beta de Magento 1.4.2.

Todos los cambios presentados giran sobre MagentoConnect Manager 2. Sólo basta con revisar el changelog.

Continue reading

Posted in Magento | Tagged , , | Leave a comment

Url friendly en CodeIgniter

CodeIgniter nos permite la utilización de urls amistosas (si, la traducción suena bastante fea).

Dado que por defecto ésto no funciona, tenemos que hacer algunos pequeños ajustes.

Lo primero será crear un archivo .htaccess con lo siguiente.

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

A partir de ahora, en lugar de usar:

http://www.dominio.com.ar/index.php/controlador/accion/

Vamos a poder usar:

http://www.dominio.com.ar/controlador/accion/

Para que la impresión de urls resulte correcta, es necesario hacer un ajuste en el archivo de configuración. Esto aplica en particular si vamos a usar la función site_url del helper Url.

Para evitar que al llamar a la función nos devuelva http://www.dominio.com.ar/index.php, vamos a cambiar la línea 23 de /system/application/config/config.php, y vamos a dejar el valor de la key index_page en blanco.

La configuración debería quedar de ésta forma:

$config['index_page'] = "";

Con estos pequeños ajustes ya deberíamos estar aplicando urls semánticas sin problemas.

Posted in CodeIgniter, Php | Tagged , , , | Leave a comment

Magento 1.4.1.1 (corrigiendo errores x2)

La semana pasada, más precisamente el 26 de julio, se lanzó la Magento 1.4.1.1.

Como toda versión menor, su propósito es el de corregir bugs. Pueden darse una vuelta por el changelog para ver la lista completa. Pueden ver que la mayoría de los cambios están relacionados con el checkout (o con parte del proceso).

Con éste upgrade surgió un problema que no ha sido muy bien explicado (yo creo que tampoco se lo ha podido reproducir correctamente) y que tiene que ver con la falta de algunos archivos de los modelos del módulo de Sales que no son descargados en la actualización.

Para solucionar éste problema, se ha publicado un patch que agrega los archivos faltantes.

Hasta el momento, sólo he colaborado (colaboración mínima) con @mhhansen en una actualización de 1.4.0.1 a 1.4.1.1 y ha sido bastante tedioso.

Como siempre, lo pueden descargar vía MagentoConnect o en forma manual, pero recuerden no hacer la actualización directamente en producción sin antes haber hecho las pruebas correspondientes.

Posted in Magento | Tagged , , | Leave a comment

El teclado numérico no funciona en Ubuntu

En una de las últimas actualizaciones de la distro me pasó que el teclado numérico ya no funcionaba.

Lo primero que pensé fue que alguna de las actualizaciones requería algún reinicio (reconozco que no le presté gran atención a la lista de paquetes) y que ésto estaba generando algún tipo de incompatibilidad o conflicto entre paquetes.

Luego de haber reiniciado, la molestia se convirtió en problema. Buscando un poco encontré el bug sobre el no funcionamiento del teclado numérico en Ubuntu.

Al parecer se viene arrastrando el tema desde hace varias ediciones, aunque la solución es realmente sencilla.

Lo primero, es abrir “Tecnologías de asistencia”.

Ahora vamos a las opciones de “Accesibilidad del teclado”.

Continue reading

Posted in Linux, Ubuntu | Tagged , , , | Leave a comment

Magento 1.4.1.0 (tantos cambios como dolores de cabeza)

El viernes pasado apareció Magento 1.4.1.0.

En ésta oportunidad la lista de cambios, mejoras y correcciones es bastante amplia. Es lectura obligada (más que de costumbre) repasar el changelog.

El cambio más fuerte que se ha hecho presente, es el cambio de la estructura de datos de las órdenes, que pasaron de su ya conocido modelo EAV a Flat. Si bien se supone que implica una mejora de performance, está trayendo dolores de cabeza a más de una extensión que deberá ser modificada y adaptada al nuevo esquema.

Quizás hubiera sido interesante que este cambio fuera anunciado con anterioridad, para dar tiempo a los desarrolladores a prepararse para el cambio. Lamentablemente, como viene siendo costumbre, la interacción con la comunidad sigue siendo cada vez más pobre.

Como decía, la lista de novedades es muy extensa. A diferencia de posts previos sobre las nuevas versiones, me voy a limitar a mostrar aquellos cambios que he podido detectar y (en varios casos) probar en el backend.

Continue reading

Posted in Magento | Tagged , , | 3 Comments

Agregar un ícono propio a la grilla de nuestro módulo en Magento

Gracias al generador automático de módulos podemos disponer rápidamente de una extensión (que funciona a manera de ejemplo) en nuestro backend de Magento.

Esto se debe (además de la investigación que fue necesaria en su momento para llegar al generador) al uso y aprovechamiento de los elementos disponibles dentro del código de la plataforma.

Para aquél que lo haya usado, ya sabrá que dispondremos de una nueva tabla en la base de datos, en el backend habrá una grilla y un formulario de edición de datos, y también tendremos un controlador disponible en el store para acceder a esos datos que manipulemos en el backend.

Vamos a centrarnos en la grilla del módulo.

Como ven ésta grilla es igual a cualquier otra de las que encontramos en el backend. Por supuesto, las leyendas y columnas pertenecen a un módulo específico.

Continue reading

Posted in Magento | Tagged , , , | 2 Comments

Error de Eclipse en Ubuntu 10.04 con PhpEclipse

La versión de repositorios de Eclipse para Ubuntu nunca ha funcionado perfectamente, siempre hay que ajustar algo.

En Ubuntu Lucid Lynx no vamos a encontrarnos con la excepción.

En mi caso, el error se presentó al querer instalar PhpEclipse. Durante el proceso, recibí un mensaje de error.

Ahora bien, a diferencia de otras veces, me puse a buscar (no puede ser que siempre haya problemas con ésta ide).

Después de leer muchísimos threads y hacer unas cuantas pruebas en más de un desktop, encontré que la forma para solucionarlo era agregando paquetes de Eclipse que por defecto no se instalan.

Para solucionarlo, vamos a buscar si los paquetes eclipse-pde eclipse-jdt eclipse-rcp están instalados.

root@linux:~# aptitude search eclipse-pde eclipse-jdt eclipse-rcp
p   eclipse-jdt                                                            - Eclipse Java Development Tools (JDT)
p   eclipse-pde                                                            - Eclipse Plug-in Development Environment (PDE)
i A eclipse-rcp                                                            - Eclipse Rich Client Platform (RCP)

Continue reading

Posted in Linux, Ubuntu | Tagged , , , | 2 Comments

Creando un nuevo controller en CodeIgniter

Vamos a crear nuestro primer controlador, para luego ir sumando los otros elementos del patrón MVC.

A manera de ejercicio vamos a ir armando, a lo largo de varios posts, una pequeña y sencilla aplicación que nos obligue a loguearnos para que luego podamos realizar alguna tarea (sobre la marcha veremos qué se puede armar).

Siguiendo ésta línea, vamos a crear un controlador que nos obligará a loguearnos. De ésta forma, se convertirá en el controlador por defecto de la aplicación.

Cuando comenzamos a jugar o trabajar con el framework, vamos a ver que nos aparece un mensaje de bienvenida. Justamente, es el controlador Welcome el que se hace presente.

Ahora bien, por qué ese controlador y no otro. Esto se debe a que una de las configuraciones de CodeIgniter nos permite especificar cuál controlador se ejecutará por defecto.

Para saber cuál es o para cambiarlo, debemos acceder al archivo /system/application/config/routes.php y buscar los siguientes valores (serán los únicos no comentados):

$route['default_controller'] = "welcome";
$route['scaffolding_trigger'] = "";

Vamos a cambiar el valor de default_controller a login. Debe quedarnos de la siguiente forma.

$route['default_controller'] = "login";
$route['scaffolding_trigger'] = "";

Entendido esto, creamos nuestro primer controlador. En la carpeta /system/application/controllers tenemos el archivo welcome.php. Ese es el controlador (el único) que vamos a encontrar.

Continue reading

Posted in CodeIgniter, Php | Tagged , , , | Leave a comment

Primeros pasos con CodeIgniter

Ya habíamos visto (hace un tiempo) cómo se compone, mínimamente, la estructura de directorios y archivos que componen CodeIgniter.

Una vez que hayas descomprimido el framework, ya estamos listos para empezar.
Lo primero que deberíamos hacer es comenzar con las configuraciones básicas. Para esto vamos a abrir el archivo /system/application/config/config.php y vamos a cambiar el primer parámetro en la línea 14:

$config['base_url'] = "http://example.com/";

Lo vamos a cambiar por la url completa de nuestra aplicación.
Vamos a suponer que se tratara de este mismo blog, la url quedaría de la siguiente forma.

$config['base_url'] = "http://www.damianculotta.com.ar/";

Como bien dice el manual, si vamos a utilizar base de datos, debemos especificar la configuración en /system/application/config/database.php. Busquemos la siguiente sección:

$db['default']['hostname'] = "localhost";
$db['default']['username'] = "";
$db['default']['password'] = "";
$db['default']['database'] = "";
$db['default']['dbdriver'] = "mysql";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";

Y completemos, al menos, los datos de conexión a nuestra base de datos.

Cuando accedamos a nuestra url, veremos el mensaje de bienvenida que es manejado por el controller Welcome del framework.

Con esto ya estamos listos para comenzar a desarrollar nuestra primera aplicación.

Posted in CodeIgniter, Php | Tagged , , , | Leave a comment

Magento 1.4.0.1 (¿ahora si la estable?)

Ya hace casi un mes, a 5 días de la tan esperada versión 1.4.0.0 se publicó Magento 1.4.0.1.

Los cambios y correcciones que presentó la versión fueron:

  • Revisión de vulnerabilidades XSS.
  • Agregado del módulo Phoenix_Moneybookers como medio de pago.
  • Corrección de problemas en la actualización de versiones 1.3.x a 1.4.0.0.
  • Corrección del uploader de imágenes (un problema que ya hemos tenido, aunque en este caso si fue por error de programación).

Hay algunos cambios más que pueden leer en el changelog oficial de ésta release.

Para aquellos que utilizan templates custom, presten atención a lo explicado sobre el cambio en el uso del bloque catalog/product_list_toolbar.

En lo personal, salvo algunas mejoras de performance que aparecieron con las versiones alpha de la rama 1.4, hace ya un buen tiempo que no me sorprende la plataforma.

Posted in Magento | Tagged , , | 2 Comments