/*********************************************************
Author: Raul Ciotescu
Based on http://scripts.hashemian.com/js/countdown.js
*********************************************************/
Date.prototype.toUTCDate = function(){    var D = this;    return new Date(D.getUTCFullYear(), D.getUTCMonth(), D.getUTCDate(), D.getUTCHours(),		D.getUTCMinutes(), D.getUTCSeconds());}
Counter = function(init_params) {
	this.counter_id = init_params.counter_id;
	this.label_id = init_params.label_id;
	this.target_date = new Date(init_params.target_date); // this date should be UTC
	this.finish_text = init_params.finish_text || "00";
	
	this.tick = function() {
    // get the current date and convert it to utc
		var dnow = new Date().toUTCDate();
		
		ddiff = new Date(this.target_date - dnow);		
		seconds_left = Math.floor(ddiff.valueOf() / 1000);

		if (seconds_left < 0) {
			document.getElementById(this.counter_id).innerHTML = this.finish_text;
		  document.getElementById(this.label_id).innerHTML = "HOURS LEFT";
			clearInterval(this.counter_tick);

			return;
		}
	  
		// check if we have less then one day left
		days_left = Math.floor(seconds_left / 86400 /* 24 hours * 60 minutes * 60 seconds */ );
		if (days_left >= 1) {
			count = days_left;
			message = ((days_left > 1) ? "DAYS" : "DAY" ) + " LEFT";
		}
		else {
			count = Math.floor(seconds_left / 3600) + 1;
			
			if(count > 1) {
				message = ((count > 1) ? "HOURS": "HOUR") + " LEFT";
			} else {
				count = Math.floor(seconds_left / 60) + 1;
				message = ((count > 1) ? "MINUTES": "MINUTE") + " LEFT";
			}
			
			
		}

    // display += "<br />" + seconds_left;

		document.getElementById(this.counter_id).innerHTML = count;
		document.getElementById(this.label_id).innerHTML = message;
	};
};

function set_timer(counter) {
	// tick each second
	counter.counter_tick = setInterval(function() { counter.tick(); }, 1000);
}


