// Andrew Urquhart : CountDown Timer : http://andrewu.co.uk/clj/countdown/
function CD_T(id,e){var n=new Date();
CD_D(+n,id,e);
setTimeout("if(typeof CD_T=='function'){CD_T('"+id+"',"+e+")}",1100-n.getMilliseconds())};

function CD_D(n,id,e)
{
var ms=e-n;
if(ms<=0) ms*=-1;
var d=Math.floor(ms/864E5);
ms-=d*864E5;
var h=Math.floor(ms/36E5);
ms-=h*36E5;
var m=Math.floor(ms/6E4);
ms-=m*6E4;
var s=Math.floor(ms/1E3);

if(CD_OBJS[id])
{
CD_OBJS[id].innerHTML=d+" day"+(d==1?" ":"s ")+CD_ZP(h)+"h "+CD_ZP(m)+"m "+CD_ZP(s)+"s"
}
};

function CD_ZP(i)
{return(i<10?"0"+i:i)};

function CD_Init()
{
var pref="countdown";
var objH=1;

if(document.getElementById||document.all)
{
for(var i=1;objH;++i){
var id=pref+i;
objH=document.getElementById?document.getElementById(id):document.all[id];

if(objH&&(typeof objH.innerHTML)!='undefined')
{
var s=objH.innerHTML;
var dt=CD_Parse(s);

if(!isNaN(dt))
{
CD_OBJS[id]=objH;
CD_T(id,dt.valueOf());

if(objH.style)
{
objH.style.visibility="visible"
}
}

else 
{
objH.innerHTML=s+"<a href=\"http://andrewu.co.uk/clj/countdown/\" title=\"Countdown Error:Invalid date format used,check documentation (see link)\">*</a>"
}}}}};


function CD_Parse(strDate)
{
var objReDte=/(\d{4})\-(\d{1,2})\-(\d{1,2})\s+(\d{1,2}):(\d{1,2}):(\d{0,2})\s+GMT([+\-])(\d{1,2}):?(\d{1,2})?/;

if(strDate.match(objReDte))
{
var d=new Date(0);
d.setUTCFullYear(+RegExp.$1,+RegExp.$2-1,+RegExp.$3);
d.setUTCHours(+RegExp.$4,+RegExp.$5,+RegExp.$6);
var tzs=(RegExp.$7=="-"?-1:1);
var tzh=+RegExp.$8;var tzm=+RegExp.$9;
if(tzh){d.setUTCHours(d.getUTCHours()-tzh*tzs)}if(tzm){d.setUTCMinutes(d.getUTCMinutes()-tzm*tzs)};

return d
}
else 
{
return NaN
}};

var CD_OBJS=new Object();

if(window.attachEvent)
{
window.attachEvent('onload',CD_Init)
}
else if(window.addEventListener)
{
window.addEventListener("load",CD_Init,false)
}
else 
{
window.onload=CD_Init
};

