Archivo de enero de 2011

AS3 – Compartir en Facebook

Publicado por Iván Gajate el 27 de enero de 2011 en AS3, Flash | 8 comentarios »

Para poner el típico botón en una web de “Compartir en Facebook”, basta con poner este enlace:

http://www.facebook.com/sharer.php?s=100&p[url]=http://www.yporqueno.es&p[images][0]=http://www.yporqueno.es/blog/wp-content/uploads/2011/01/compartir_facebook.gif&p[title]=yporqueno.es,%20programaci%C3%B3n%20Flash&p[summary]=Un%20estupendo%20sitio%20para%20aprender%20AS3%20;%29

Y nos pondrá algo como esto:

Tiene varios parámetros como:

[url]: La url que queremos enlazar. En el ejemplo “www.yporqueno.es”.
[images]: La imagen que aparecerá en nuestro comentario. En el ejemplo es el logo del blog.
[title]: El título de la entrada. En el ejemplo “yporqueno.es, programación Flash”
[summary]: El contenido del mensaje. En el ejemplo “Un estupendo sitio para aprender AS3 ;)”

Ojo que la imagen la cachea Facebook, es decir que en el momento que hagamos una prueba con foto.jpg si queremos cambiar la imagen, tendremos que cambiarle el nombre para que se refresque.

Para escribirlo con acentos y caracteres extraños, esta es una forma muy cómoda 😉

var url:String = "http://www.yporqueno.es";
var image:String = "http://www.yporqueno.es/blog/wp-content/uploads/2011/01/compartir_facebook.gif";
var title:String = "Un título";
var summary:String = "Un comentario";
var cadena:String = "http://www.facebook.com/sharer.php?s=100&p[url]=" + url + "&p[images][0]=" + image + "&p[title]=" + title + "&p[summary]=" + summary;
cadena = cadena.split("#").join("%23");
cadena = encodeURI(cadena);
navigateToURL(new URLRequest(cadena), "_blank");

En AS3 quedaría así:

navigateToURL(new URLRequest("http://www.facebook.com/sharer.php?s=100&p[url]=http://www.yporqueno.es&p[images][0]=http://www.yporqueno.es/blog/wp-content/uploads/2011/01/compartir_facebook.gif&p[title]=yporqueno.es,%20programaci%C3%B3n%20Flash&p[summary]=Un%20estupendo%20sitio%20para%20aprender%20AS3%20;%29"), "_blank");

Funciona muy bien, gracias Proknil.

AS3 – Validar Fechas con Expresiones Regulares

Publicado por Iván Gajate el 11 de enero de 2011 en AS3 | 16 comentarios »

Una de las mejores formas de validar formularios es con expresiones regulares, son rápidas y muy precisas.

Estas las he tenido que utilizar hoy para validar una fecha de nacimiento y un teléfono de España(noventayalgo…) en un formulario, las dejo por si a alguien le vienen bien:

// Comprueba si empieza por 6 u 8 (nuevos moviles) y tiene 9 digitos
function isMobileNumber(data:String):Boolean {
	var exp:RegExp = /^[68]\d{8}$/;
	return exp.test(data);
}

// Comprueba si empieza por 6, 8 o por 9 y tiene 9 digitos
function isTelephoneNumber(data:String):Boolean {
	var exp:RegExp = /^[689]\d{8}$/;
	return exp.test(data);
}

// Comprueba si es un entero del 1 al 31
function isDay(data:String):Boolean {
	var exp:RegExp = /^[123]0|[012][1-9]|31$/;
	return exp.test(data);
}

// Comprueba si es un entero del 1 al 12
function isMonth(data:String):Boolean {
	var exp:RegExp = /^0[1-9]|1[012]$/;
	return exp.test(data);
}

// Comprueba si es un año desde 1900 al 2999
function isYear(data:String):Boolean {
	var exp:RegExp = /^19[0-9]{2}|2[0-9]{3}$/;
	return exp.test(data);
}

Para usarlas solo hay que poner:

trace(isMobileNumber("6203587852")) // true
trace(isMobileNumber("7203587852")) // false

Aunque son algo complicadas de leer, se pueden buscar en Internet con facilidad, hay sitios como este donde se pueden ver muchos ejemplos y hacer pruebas en tiempo real:

http://gskinner.com/RegExr/