-
//importamos las clases necesarias
-
import com.yahoo.webapis.weather.WeatherService;
-
import com.yahoo.webapis.weather.Weather;
-
import com.yahoo.webapis.weather.events.WeatherErrorEvent;
-
import com.yahoo.webapis.weather.events.WeatherResultEvent;
-
import fl.data.DataProvider;
-
//cramos el servicio
-
var ws:WeatherService = new WeatherService();
-
//escuchador cuando recivimos los datos
-
ws.addEventListener(WeatherResultEvent.WEATHER_LOADED, resultTiempo);
-
//si hay un error al recibir los datos
-
function xmlError(event:WeatherErrorEvent):void {
-
//weather_txt.text = event.data.toString();
-
}
-
//error al leer el xml
-
ws.addEventListener(WeatherErrorEvent.XML_LOADING, xmlError);
-
//
-
//ACTION PARA ESTE EJEMPLO
-
//
-
var periodo:String;
-
var codigoEstado:int;
-
var miLoader:Loader = new Loader();
-
var miReq:URLRequest=new URLRequest();
-
var mes:Array;
-
var dia:Array;
-
var contImgGde:Sprite = new Sprite();
-
//estados del tiempo en español
-
var xmlData:XML;
-
var xmlLoader:URLLoader = new URLLoader();
-
var urlRequest:URLRequest = new URLRequest("clima-es.xml");
-
xmlLoader.load(urlRequest);
-
xmlLoader.addEventListener(Event.COMPLETE, this.iniciarXML);
-
var xmlList:XMLList = new XMLList();
-
function iniciarXML(e:Event):void {
-
xmlData = new XML(xmlLoader.data);
-
xmlList = XMLList(xmlData.clima);
-
init();
-
}
-
//datos para el combo
-
var ciudades:Array = new Array({label:"Córdoba",data:"ARCA0023"},{label:"Buenos Aires",data:"ARBA0009"},{label:"Rio Cuarto",data:"ARCA0073"},{label:"Villa Carlos Paz",data:"ARCA0108"},{label:"Ushuaia",data:"ARTF0105"});
-
var dp:DataProvider = new DataProvider(ciudades);
-
cb.dataProvider=dp;
-
cb.addEventListener(Event.CHANGE, cbSelect);
-
function cbSelect(o:Event):void {
-
ws.getWeather(cb.selectedItem.data, "metric");
-
}
-
-
function init() {
-
mes = new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
-
dia = new Array("Domingo","Lunes","Martes","Miercoles","Jueves","Viernes","Sabado");
-
time_txt.autoSize = TextFieldAutoSize.LEFT ;
-
contImgGde.y = time_txt.y+15;
-
-
var defaud:Object = new Object();
-
defaud = cb.getItemAt(0);
-
-
ws.getWeather(defaud.data, "metric");
-
formatFecha();
-
}
-
-
function formatFecha() {
-
var date:Date = new Date();
-
var minutos:String;
-
if (date.getMinutes()<10) {
-
minutos = "0"+String(date.getMinutes());
-
} else {
-
minutos = String(date.getMinutes());
-
}
-
if (date.getHours()<12) {
-
periodo ="am";
-
} else {
-
periodo ="pm";
-
}
-
time_txt.text = dia[date.day]+" "+String(date.getDate() +" de "+mes[date.getMonth()]+" - "+date.getHours()+":"+minutos+" "+periodo);
-
-
var contDay:int = date.day;
-
switch (date.day) {
-
case 5 :
-
estado1_txt.text = dia[6];
-
estado2_txt.text = dia[0];
-
break;
-
case 6 :
-
estado1_txt.text = dia[0];
-
estado2_txt.text = dia[1];
-
break;
-
default :
-
estado1_txt.text = dia[date.day+1];
-
estado2_txt.text = dia[date.day+2];
-
}
-
}
-
-
function resultTiempo(event:WeatherResultEvent):void {
-
codigoEstado = event.data.current.code;
-
if (codigoEstado==0) {
-
codigoEstado = 3200;
-
temperatura_txt.text = "";
-
estado_txt.text = "";
-
dtosEx_txt.text ="";
-
} else {
-
temperatura_txt.text = event.data.current.temperature+"º";
-
estado_txt.text = xmlList.@value[codigoEstado];
-
dtosEx_txt.text = "Viento: "+event.data.current.wind.direction+" "+event.data.current.wind.speed+" "+event.data.units.speed+"n"+"Humedad: "+event.data.current.atmosphere.humidity+"%"+"n"+"Visibilidad: "+event.data.current.atmosphere.visibility+" "+event.data.units.distance+"n"+"Presión atmosférica: "+event.data.current.atmosphere.pressure+" "+event.data.units.pressure;
-
esttemp1_txt.text = event.data.forecast[0].high+"º "+ event.data.forecast[0].low+"º";
-
esttemp2_txt.text = event.data.forecast[1].high+"º "+ event.data.forecast[1].low+"º";
-
}
-
var urlImagen:String = "imgactual/"+codigoEstado+".png";
-
miReq = new URLRequest(urlImagen);
-
miLoader.load(miReq);
-
contImgGde.addChild(miLoader);
-
this.addChild(contImgGde);
-
formatFecha();
-
}
1st Diciembre, 2008 at 1:09 pm
Muy bueno!
3rd Diciembre, 2008 at 9:08 am
Buen trabajo, lo vamos a publicar en nuestra web, es de una escuela de kitesurf y windsurf, justo lo que necesitaba, muchisimas gracias, un gran abrazo desde España. Genial!
14th Diciembre, 2008 at 8:17 am
Buenisimo!!! 10 Puntos y mil gracias!
22nd Diciembre, 2008 at 10:45 pm
Grosoooo!!!
12th Enero, 2009 at 4:03 pm
muy bueno el archivo!pero cuando lo pego en el html no se ven los datos (imagen, numeros, texto)alguna solucion? Muchas Gracias!
13th Enero, 2009 at 10:39 pm
Nunca mas actualizaste
Este año das curso en CEICOS de vuelta? Si das, me inscribo...
Pd: Mira mi gravatar
Saludos leo!!
10th Febrero, 2009 at 12:23 pm
de verdad amigo, sos un capo ,nos ayudas mucho con estos flash,muy amable de tu parte y muy util ademas,se agradece todo lo que nos ayudas,un saludo
14th Febrero, 2009 at 5:02 pm
Impecable.!!!!!
Genial tu web.
Consulta: No encuentro el evento que recoje sensacion termica (creo que es Feels Like)
Donde puedo ver estos parametros? (porque pusiste muchos ejemplos pero ese justo no esta.
Saludos y Gracias
15th Febrero, 2009 at 8:17 am
Otra consulta como se podria hacer para que haga un refresh para qeu si me quedo en al pagina donde esta este widget, no me de la hora y el tiempo retrasado.?
Gracias Gracias
16th Febrero, 2009 at 3:16 pm
me hace falta usar esto para mi pagina pero no se como modificarlo para k salga solamente la ciudad k yo kiera... ver si pueden ayudarme....muchas gracias
18th Febrero, 2009 at 8:12 am
No tuve respuestas, por si a alguien le interesa lo mas cercano a sensacion termica fue event.data.current.wind.chill
Que es la temperatura del viento.
Saludos. Leo No abandones esta web!!!!!!!!!!
23rd Febrero, 2009 at 5:10 pm
Buenas noches
No tengo mucha experiencia, pero cuando intento provar el swf, no me funciona solo se ve el fondo.
Alguien me podria decir lo que pasa.
Un saludo y gracias
13th Abril, 2009 at 10:14 am
Que tal! muy bueno lo suyo. yo soy nuevo en flash, y quisiera saber como hacer para usar la función getMonth y he esbozado lo siguiente (no me devuelve ningún error)pero tampoco logro que funcione!
------------------------------------------------------------
var mesActual:Date = new Date(); // instancia de DATE var mes:Number; mes = MesActual.getMonth(); //funcion selector de mes if (mes==0){ // el mes es enero? // carga el archivo del mes enero loadMovieNum (enero.swf, contenedor); if (mes==1){ // el mes es Febero? // es el mes febrero loadMovieNum (febrero.swf, contenedor); if (mes==2){ // el mes es marzo? // es el mes marzo loadMovieNum (marzo.swf, contenedor); if (mes==3){ // el mes es abril? // es el mes abril loadMovieNum (abril.swf, contenedor); if (mes==4){ // el mes es Mayo? // es el mes mayo? loadMovieNum (mayo.swf, contenedor); } } } } }
----------------------------------------------------------
25th Junio, 2009 at 2:08 pm
Tengo entendido que cuando te sale en la imagen el signo de interrogacion es porque no hay datos. Pero esto a que se debe me podriasn decir por favor
27th Junio, 2009 at 4:41 am
Re -> bto
Es porque no se pudo recolectar esos datos, pero el problema no es tu swf sino que el sitio no los tiene o no los cargaron todavía.
27th Junio, 2009 at 4:43 am
Re -> Damian
Así es amigo, lo más cercano a la sensación térmica es la temperatura del viento
y disculpas por la demora, estoy a full!
Si puedes hacer un refresh, simplemente vuelve a cargar la función getWeather
29th Junio, 2009 at 10:08 am
Hola Leo, alguna posibilidad de hacerlo para AS2, todavia no manejo el as3.
gracias
3rd Julio, 2009 at 4:04 pm
Leo, me fue muy útil lo del clima
Podés ver su aplicación en este site:
http://www.agrupadasfederadas.com/clima.html
20th Julio, 2009 at 1:41 pm
Excelente muy buen material!
gracias
11th Agosto, 2009 at 9:59 am
Alguien sabe la razon por la cual solo me funciona cuando hago un test movie?, cuando lo subo al servidor no muestra ningun dato.
14th Agosto, 2009 at 9:20 am
Hola a todos! tengo el siguiente problema. cuando hago un test movie en flash funciona muy bien pero cuando lo subo a un servidor no carga los datos dinamicos, solo veo lo estatico. Sera un problema de mi servidor?, por que los datos en otras webs cargan enseguida. pd, pobe asignar permisos por las dudas pero tampoco funciono. gracias de antemano
17th Agosto, 2009 at 1:45 pm
intento provar el swf, no me funciona solo se ve el fondo
y cuando lo cargo en el servidor se despliega nadamas el combo y no se ven los demas datos e imagenes pngs salu2
17th Agosto, 2009 at 6:11 pm
hola alguien me puede ayudar con el swf porque cuando lo abro no carga nada espero respuesta gracias
18th Agosto, 2009 at 4:26 pm
Muy raro lo que les pasa!!! estan usando una version portable de flash? si es asi compilen con la version pro, recuerden de compilar con las clases sobre el mismo directorios, es decir que la carpeta com este en la misma carpeta que el swf
16th Septiembre, 2009 at 9:46 am
Hola, excelente herramienta, pero yo tengo una duda, he tratado de agregar mas dias para poder tener el pronostico de 4 o 5 dias mas pero no logro ponerlos, sera q me pueden ayudar como agregarle mas dias?
Gracias
17th Septiembre, 2009 at 12:16 am
tengo entendido que solo permite 2 días la api grátis
21st Octubre, 2009 at 9:33 am
Hola Leo, nose porque pero cuando es de día me aparece de noche y en el dibujito me aparece una luna...
Como puedo arreglar eso?
22nd Octubre, 2009 at 6:11 pm
Muy buen aporte. Una consulta, como agrego los dibujitos del pronostico para los siguientes 2 dias?? Eh probado de muchas formas y no me funciona. Muchas gracias!!! Saludos
29th Octubre, 2009 at 8:52 pm
Hola Leo Muy buen aporte pero existe la posibilidad de hacerlo funcionar en AS2??
POR FAVOR ESPERO ME RESPONDAN
3rd Enero, 2010 at 2:45 pm
hola como lepuedo cambiar las ciudades para que salgan solo las que yo quiero label:"Córdoba",data:"ARCA0023"},{label:"Buenos Aires",data:"ARBA0009"}
por ejemplo yo le quiero poner miami pero no se que es data: "ARBA0009" alguien me puede ayudar en eso ?
5th Enero, 2010 at 3:08 am
Facundo, puede que la api este enviando mal el code o la imagen que usas este cruzada en el xml
5th Enero, 2010 at 3:09 am
Agustin, utiliza el code de estado para cargar una imagen que represente dicho estado
5th Enero, 2010 at 3:10 am
RichRDZ, no hay manera que funcione en as2, pero cuéntame porque lo quisieras en as2?
5th Enero, 2010 at 3:53 am
moritoy, la linea del combo de las ciudades y código que es la siguiente "te resumo" var ciudades:Array = new Array({label:"Córdoba",data:"ARCA0023"});
Es un array o arreglo con objetos dentro, es decir que los valores que vas a colocar van de la siguiente manera: {label:"Córdoba",data:"ARCA0023"}
Donde label es el nombre de la ciudad que ven tus visitante y data es el código de la ciudad para la api, para saber que código usa tu ciudad o las ciudades que deseas cargar entra a esta web http://www.weather.com/ y en el buscador escribí la ciudad que buscas, fíjate en la URL del navegador y busca el código de ciudad que es algo asi: para córdoba ARCA0023, cópialo y pégalo entre las comillas de data.
13th Enero, 2010 at 11:10 am
Leo impresionante trabajo, me fue de mucha utilidad pero tengo algunos problemas, no se porque el fire fox no me muestra los datos al parecer no lo interpreta ya que pongo un texto fijo de prueba y esto si me lo muestra pero el contenido del tiempo no. si me pudieras ayudar porfa. Ojo que en el explorer aparece perfecto pero en fire fox no
14th Enero, 2010 at 3:39 am
muy extraño! el ejemplo desde mi web tampoco te funciona en firefox?
14th Enero, 2010 at 12:06 pm
tampoco y ya descubri que es por el plug in flash player como tengo 8 no interpreta el AS3. Lo solucione actualizando el plug in al 10, pero te pregunto sabes como detectar y actulizar automaticamente la version del flash player, esto porque me encantaria subirlo a una web y los usuario comunes no saben (obviamente)nada sobre los plug in por lo que quiero que si no lo tiene actualizado lo haga.
Espero tus comentario y denuevo gracias por compartir tremendo trabajo FELICIDADES
29th Enero, 2010 at 5:17 pm
Hola Leobaraldi.. oye muy buena la aplicacion.. tan buena que me ha sacado de un apuro,pero al momento de querer compilarla con las nuevas ciudades todo esta bien.. pero cuando le doy doble click al swf solo se abre la ventana, pero no muestra ningun dato.. me dicen que puede ser un error de Paths, pero lo compilo en el mismo lugar donde estan todos los archivos.. cual puede ser el error ? espero a haberme dado a entender
2nd Marzo, 2010 at 11:57 am
Hola leo, felicitaciones por tu sitio porque para estudiante como yo es un recurso impresionante. Bueno como veras puede modificar el tema de las ciudad para que me muestre su informacion de clima y cuando pruebo la pelicula me funciona 10 puntos, la exporto de flash cs3 profesional no es portable y junto con sus carpetas la pongo en mi sitio y me funciona el menu de donde selecciono las ciudades y me trae solamente la temperatura de dicha ciudad, no se porque el resto de la informacion no me la presenta, alguna ayudita en esto? desde ya gracias y saludos.
21st Abril, 2010 at 1:09 pm
Hola. me baje el ejemplo y lo meti en un html, pero al abrirlo no me muestra la información. Solo figura activa la solapa de la localidad. Deberia modificar algo para que me levante los datos desde internet? Poseo Flash CS3 y lo abre perfecto, pero al publicarlo en html no funciona. Muchas gracias