Blog
CountDown to date
2 years, 10 months ago Posted in: Blog Comments Off

Easter’s present!
here’s a little script to show the countdown to a specified date. feel free to use it, please send a comment showing where you use it.

Example implementation @ http://www.garminbarcelonatriathlon.com

[as]
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;

public class CountDown extends MovieClip{

public var label_txt:TextField;
private var jahr : Number = 2009;
private var monat : Number = 10;
private var tag : Number = 18 ;
private var today : Date;
private var targetDate : Date;
private var baseColor : String = “#4E9EFB”;
private var otherColor : String = “#F4C836″;

public function CountDown(){
super();
addEventListener(Event.ADDED_TO_STAGE,initialize);
addEventListener(Event.REMOVED_FROM_STAGE,dispose);
}

private function initialize(event:Event):void{

// esperamos parametros desde el exterior en formato flashvars
jahr = (stage.loaderInfo.parameters["year"])?stage.loaderInfo.parameters["year"]:jahr;
monat = (stage.loaderInfo.parameters["month"])?stage.loaderInfo.parameters["month"]:monat;
tag = (stage.loaderInfo.parameters["day"])?stage.loaderInfo.parameters["day"]:tag;
baseColor = (stage.loaderInfo.parameters["baseColor"])?stage.loaderInfo.parameters["baseColor"]:baseColor;
otherColor = (stage.loaderInfo.parameters["otherColor"])?stage.loaderInfo.parameters["otherColor"]:otherColor;

targetDate = new Date(jahr, monat – 1, tag, 0, 0, 0);

addEventListener(Event.ENTER_FRAME, update,false,0,true);
}

/**
*
*/
private function update(event : Event) : void {

today = new Date();

var days : Number = countdate(targetDate, today).days;
var hours : Number = countdate(targetDate, today).hours;
var minutes : Number = countdate(targetDate, today).minutes;
var seconds : Number = countdate(targetDate, today).seconds;

label_txt.htmlText = “” +”COUNTDOWN “+ formatValue(days) + ” DAYS “+ formatValue(hours) +” HOURS ” + formatValue(minutes) + ” MINUTES ” + formatValue(seconds) +” SECONDS”+ “” ;

}

private function dispose(event:Event):void{
removeEventListener(Event.ENTER_FRAME, update);
}

private function formatValue(inNumber : Number) : String {
return “” + inNumber.toString() + “
}

/**
*
*
*/
private function countdate(targetDate : Date, todayDate : Date) : Object {

var res : Object = new Object();

var _differ = targetDate.getTime() – todayDate.getTime();
var tmpms = _differ;

var tmps = Math.floor(tmpms / 1000);

tmpms = tmp % 1000;

var tmpmin = Math.floor(tmps / 60);
tmps = tmps % 60;

var tmphour = Math.floor(tmpmin / 60);
tmps = tmps % 60;

var tmpday = Math.floor(tmphour / 24);
tmphour = tmphour % 24;

var tmpyr = Math.floor(tmpday / 400);
tmpday = tmpday % 400;

res.differencia = _differ;
res[0] = _differ;
res.years = tmpyr;
res[1] = tmpyr;
res.days = tmpday;
res[2] = tmpday;
res.hours = tmphour;
res[3] = tmphour;
res.minutes = tmpmin;
res[4] = tmpmin;
res.seconds = tmps;
res[5] = tmps;
res.milliseconds = tmpms;
res[6] = tmpms;
return res;
};

}
}
[/as]

implementación HTML/ JAVASCRIPT

asumiendo que:

El swf se encuentre en:
http://www.thefestival.eu/swf/contador.swf

y exista

http://www.thefestival.eu/js/swfobject.js

copia este codigo entre las tags head
[html]

[/html]

copia este codigo en tu pagina donde quieras que aparezca el contador
[html]

Para ver este archivo necesita instalarse Flash Player en su navegador
Haga click aquí para instalarlo.

[/html]

Comments are closed.