Consumir Gravatar API con Kendo UI MVVM

Hola a todos, en esta entrada escribiré algo corto y simple. Lo que haremos hoy es consumir la JSON API de Gravatar para que partiendo del User Name poder sacar información del usuario. Si no sabes que es Gravatar, no sé que haces aquí 😛 (Es broma, lee un poco aquí). Es muy útil que las aplicaciones Web que regularmente uso usen Gravatar, con tan solo mi Email ya sacan mi foto de perfil y si es necesario mi biografía (todo depende de cuanto le digas a Gravatar).

El código lo subí a este fiddle. Trabajos de puro Javascript seguro los estaré subiendo a mi cuenta de Fiddle para que si lo usan, estén al pendiente.

HTML

Primero tendremos que agregar las librerías que vamos a usar, vamos a usar las mismas que el post pasado y tendremos la siguiente base:

Screen Shot 2015-05-02 at 8.45.39 PM

Y dentro de body agregaremos nuestra vista de MVVM:
Screen Shot 2015-05-02 at 8.48.06 PM

Lo que hay que explicar aquí son los bindings, el div#container tiene un binding que se casa con su estilo in-line y la propiedad css background-color. Esto porque Gravatar me puede dar el background color que el usuario tiene personalizado. Los demas bindings son como ya lo hemos visto antes, vinculos con propiedades de nuestro View Model. Es importante hablar del span que tiene el binding “text: getGravatarData”, aquí es un truquito para ejecutar una función de mi View Model cada cuando la propiedad gravatarName cambie en el input. En realidad este no mostrará nada. La cosa aquí es que cualquier binding que se ponga en el HTML se van a evaluar nuevamente cada vez que una propiedad cambie.

Javascript

Agregamos dentro del load function de jQuery que ya agregamos el siguiente código javascript:

Screen Shot 2015-05-02 at 8.52.29 PM

getGravatarData consume la api de Gravatar. El URL de la api de gravatar es http://en.gravatar.com/{userName}.json, pueden usar un REST client para probarlo y ver los datos que manda (o simplemente ponerlo en el navegador funciona). So, le concatenamos el user name al url para obtener la información del usuario que queremos, así de fácil.

La api nos regresa un hash MD5 del email del usuario, y lo necesitamos para obtener la imagen de perfil del tamaño que queramos. Por eso usamos el URL http://www.gravatar.com/avatar/{has-md5}?s={size}.

Y el resultado es como lo hemos visto en el fiddle que he subido.

Screen Shot 2015-05-02 at 8.57.28 PM Screen Shot 2015-05-02 at 8.58.49 PM

Saludos!

Anuncios

Listado de productos con diferentes templates – Kendo UI y Bootstrap

Buen día a todos, en esta entrada voy a hablar un poco más de front-end y el patrón de diseño MVVM que ya hemos visto un poco en entradas anteriores utilizando Kendo. Lo que vamos a hacer lo subí en este JSFiddle pero de igual forma ya lo pudieron ver en la imagen destacada de esta entrada.

Crearemos un listado de productos que se cargarán de forma dinámica utilizando Kendo UI MVVM con datos locales y estáticos para dejarlo de una forma simple. La parte interesante del post es que se utilizarán los templates de Kendo para poder intercambiar en tiempo de ejecución la forma en la que se ven los productos (o cualquier cosa) sin tener que hacer un esfuerzo grande y lo importante, sin tener que refrescar completamente la página.

El HTML

Para comenzar no vamos a utilizar ningún lenguaje de servidor (como NodeJS o MVC) y vamos a comenzar con los siguientes archivos (solo tres): Continuar leyendo “Listado de productos con diferentes templates – Kendo UI y Bootstrap”