﻿// JScript File
//Function that displays a countdown clock to the specified date.
function Countdown(strMessage,strTargetID,year, month, day, hour, minute,strDay,strHour,strMinute,strSecond){
	
	var target = "";
	
	if(document.getElementById(strTargetID) != null){
	
	    target = document.getElementById(strTargetID);
    	
	    Today = new Date();
	    Target_Date = (new Date(year, month-1, day, hour, minute, 00));

	    //Find their difference, and convert that into seconds.
	    Time_Left = Math.round((Target_Date.getTime() - Today.getTime()) / 1000);

	    if(Time_Left < 0)
		    {
		    Time_Left = 0;
		    //target.innerHTML = "&nbsp;Hope you had a great trip!"
		    //target.innerHTML = strMessage + 'Now!';
	    }
	    else
		    {
		    days = Math.floor(Time_Left / (60 * 60 * 24));
		    Time_Left %= (60 * 60 * 24);
		    hours = Math.floor(Time_Left / (60 * 60));
		    Time_Left %= (60 * 60);
		    minutes = Math.floor(Time_Left / 60);
		    Time_Left %= 60;
		    seconds = Time_Left;

		    dps = 's'; hps = 's'; mps = 's'; sps = 's';
		    //ps is short for plural suffix.
		    if(days == 1) dps ='';
		    if(hours == 1) hps ='';
		    if(minutes == 1) mps ='';
		    if(seconds == 1) sps ='&nbsp;&nbsp;';
    		
		    target.innerHTML = strMessage + "&nbsp;";
            
            if(days > 0){
                target.innerHTML += days + ' ' + strDay + dps + '&nbsp;'         
            }
            
		    if(minutes < 10){
		        target.innerHTML += hours + ' ' + strHour + hps + '&nbsp;0';
		    }else{
		        target.innerHTML += hours + ' ' + strHour + hps + '&nbsp;';
		    }		    
		    if(seconds < 10){
		        target.innerHTML += minutes + ' ' + strMinute + mps + '&nbsp;0';
		    }else{
		        target.innerHTML += minutes + ' ' + strMinute + mps + '&nbsp;';
		    }
		    target.innerHTML += seconds + ' ' + strSecond + sps + '&nbsp;';			

		    /*target.innerHTML = '&nbsp;&nbsp;Time To Departure:&nbsp;&nbsp;';
		    target.innerHTML += days + ' day' + dps + ' ';
		    target.innerHTML += hours + ' hour' + hps + '&nbsp;&nbsp;';
		    target.innerHTML += minutes + ' minute' + mps + ' ';
		    target.innerHTML += seconds + ' second' + sps ;
             */
             
		    //Recursive call, keeps the clock ticking.
		    setTimeout('Countdown("' + strMessage + '","' + strTargetID + '",' + year + ',' + month + ',' + day + ',' + hour + ',' + minute  + ',"' + strDay + '","' + strHour + '","' + strMinute + '","' + strSecond + '");', 1000);
	    }
	}else{
	    //if you can't find the control, don't freak out the naive user
	    //what do we do?
	    //Just don't display the countdown.!
	    
	    //alert("There is an error " + strTargetID + " is null");
	}
}

function windowOpener(windowHeight, windowWidth, windowName, windowUri)

{

    var centerWidth = (window.screen.width - windowWidth) / 2;

    var centerHeight = (window.screen.height - windowHeight) / 2;

    //alert(windowUri); 

    newWindow = window.open(windowUri, windowName, 'toolbar=0,location=0,resizable=0,scrollbars=1,width=' + windowWidth + 

        ',height=' + windowHeight + 

        ',left=' + centerWidth + 

        ',top=' + centerHeight);

 

    newWindow.focus();

    return newWindow.name;

}

 

function getParentElement(it) {

    content = window.opener.document.getElementById(it);

    //alert(content.innerHTML);

    document.write(content.innerHTML);

}

// common javascript functions

function ExpandOrCollapse(a){
  var e=document.getElementById(a);
  if(!e)return true;
  if(e.style.display=="none"){
    e.style.display="block"
  } else {
    e.style.display="none"
  }
  return true; 
}

function ToggleSwap(c) {
	var myElement = document.getElementById(c); 
	// after click
	if ( myElement.className == 'toggle_closed' ) {
  		myElement.className = 'toggle_open';
	} else {
  		myElement.className = 'toggle_closed';
	}
}

function TogglerMessage(h, s, e, o) {
    var element = document.getElementById(e);
    var oelement = document.getElementById(o);
    
    if (oelement.style.display == "block") {
        element.innerHTML = h;
    }
    else {
        element.innerHTML = s;
    }
    
    //alert(s);
}

function relative_time(time_value) {
  var values = time_value.split(" ");
  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
  var parsed_date = Date.parse(time_value);
  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
  delta = delta + (relative_to.getTimezoneOffset() * 60);

  if (delta < 60) {
    return 'less than a minute ago';
  } else if(delta < 120) {
    return 'about a minute ago';
  } else if(delta < (60*60)) {
    return (parseInt(delta / 60)).toString() + ' minutes ago';
  } else if(delta < (120*60)) {
    return 'about an hour ago';
  } else if(delta < (24*60*60)) {
    return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
  } else if(delta < (48*60*60)) {
    return '1 day ago';
  } else {
    return (parseInt(delta / 86400)).toString() + ' days ago';
  }
}

