jueves, febrero 01, 2007

Globalizando el Calendar de Ajax Control ToolKit

Ayer estuve probando los nuevos controles que incorpora la última versión de Ajax Control ToolKit, para decidir si los incorporaba al proyecto en el que estoy trabajando.

Una de las primeras cosas que intente hacer fue cambiar el idioma del control a español, ya que por defecto se muestra en inglés. Así que me fui directo a las propiedades del control y busqué a ver si por un casual había una donde le pudieras indicar la cultura que quieres utilizar, pero mi gozo en un pozo no hay tal propiedad. A buscar en el google…

En un foro de Microsoft ya encontré que se podía poner la propiedad EnableScriptGlobalization del ScriptManager a True para habilitar la globalización de los controles. ¡¡¡Bien!!! Las etiquetas de los días ahora están en Español, pero… la etiqueta de cabecera (January 2007) y la del pie (Today: January 30,2007) siguen en inglés. Entonces, ¿¿¿Qué tengo que hacer para poner esto en español???.

Sencillísimo… Ir al código fuente del control y en el archivo js (CalendarBehavior.js) que lo acompaña cambiar lo siguiente:

1- this._title.innerHTML = visibleDate.format("MMMM, yyyy") por this._title.innerHTML = visibleDate.localeFormat("MMMM yyyy");

2- dayCell.title = currentDate.format("D"); por dayCell.title = currentDate.localeFormat("dd/MM/yyyy");

3- this._today.innerHTML = "Today: " + todaysDate.format("MMMM d, yyyy"); por this._today.innerHTML = "Hoy: " + todaysDate.localeFormat("dd – MMMM - yyyy");

El Today está puesto a pelo en el código así que no se puede globalizar.

A la, ya esta globalizado o por lo menos apañado, ¿¿¿no se les podría haber ocurrido hacerlo antes???.

4 comentarios:

jm.villagra dijo...

Yo estoy utilizando tb ese control calendar del ajax toolkit y la cabecera si que me la localiza correctamente... el "Today" del pie es lo único que está metido a cañón.
Salió hace poco una actualización del ajax toolkit donde corregian fallos en la localización del control calendar, mira a ver si es por eso por lo que no te la localiza.

Saludos.
villagra (madriddotnet forum ;) )

Pedroafa dijo...

Pues es verdad, pero lo han arreglado de la semana pasada hacia aquí. Aunque ya que se ponían podían haber cambiado lo del Today.

Un Saludo, Pedro.

Unknown dijo...

Hola a todos, estoy utlizando el control calendar del ajax toolkit, pero no encuentro en el calendarBehavior.js la linea en la que aparece el "Today".

Un saludo

Pedroafa dijo...

Baja la última release del set de controles que ya esta arreglado y no hace falta hacer nínguna ñapa, echa un vistazo a este post http://kartones.net/blogs/sector7g/archive/2007/04/01/calendarextender-review.aspx