function setCookie(c_name,value,domain,expiredays) {
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+"="+escape(value)+((expiredays==null)?"":";expires="+exdate.toGMTString())+((domain)?";domain="+domain:"");
}
function maxSelectMulti(form, mctr) {
	var ctr = 0;
	
	for(var i=0; i<form.options.length; i++) {
		if (form.options[i].selected==true)
		ctr++;
	}
	if (ctr>mctr) {
		alert("You have selected too many options, only " + mctr + " are permitted.");
		return false;
	}
	return true;
}
function MultiDimensionalArray(iRows,iCols) {
	var i;
	var j;
	var a = new Array(iRows);
	for (i=0; i < iRows; i++){
		a[i] = new Array(iCols);
		for (j=0; j < iCols; j++){
			a[i][j] = "";
		}
	}
	return(a);
}
function timePassed(time) {
	var currentTime=new Date();
	return Math.floor((currentTime.getTime()/1000)-time);
}
function getTimeZone() {
	var currentTime=new Date();
	return currentTime.getTimezoneOffset();
}
function timeAgo(time) {
	var string;
	var absoluteTime=new Date();
	var timeAgo=timePassed(time);
	absoluteTime.setTime(time*1000);
	return absoluteTime.getUTCDate()+"."+absoluteTime.getUTCHours()+"."+absoluteTime.getUTCMinutes()+"."+absoluteTime.getUTCSeconds();
	var newTime=new Date();
	newTime.setTime(timeAgo*1000);
	if(newTime.getUTCDate()>7) { return "on "+absolute.toDateString(); }
	if(newTime.getUTCDate()>1) {
		string = newTime.getUTCDate()-1; string+=" days";
	}else if(newTime.getUTCHours()>0) {
		string = newTime.getUTCHours()+" hours";
	}else if(newTime.getUTCMinutes()>0) {
		string = newTime.getUTCMinutes()+" minutes";
	}else if(newTime.getUTCSeconds()>0) {
		string = newTime.getUTCSeconds()+" seconds";
	}
	return string+" ago.";
}
function timeAgo(time, lockTime) {
	if(time>lockTime) {
		return "0 seconds ago.";
	}
	var string;

	var absoluteTime=new Date();	
	var timezone=getTimeZone()*60;
	absoluteTime.setTime( (time-timezone)*1000 );
	/*return time+"time "+timezone+"tz "+absoluteTime.getUTCFullYear()+"Y "+absoluteTime.getUTCMonth()+"M "+absoluteTime.getUTCDate()+"D "+absoluteTime.getUTCHours()+"H "+absoluteTime.getUTCMinutes()+"m "+absoluteTime.getUTCSeconds();*/
	
	var timeAgo=lockTime-time;
	var newTime=new Date();
	newTime.setTime(timeAgo*1000);
	/*return timeAgo+"time "+newTime.getUTCFullYear()+"Y "+newTime.getUTCMonth()+"M "+newTime.getUTCDate()+"D "+newTime.getUTCHours()+"H "+newTime.getUTCMinutes()+"m "+newTime.getUTCSeconds();*/
	
	if(newTime.getUTCDate()>7) { return "on "+absoluteTime.toDateString(); }

	if(newTime.getUTCMonth()>0) {
		string = newTime.getUTCMonth()+" months";
	}else if(newTime.getUTCDate()>1) {
		string = newTime.getUTCDate()-1; string+=" days";
	}else if(newTime.getUTCHours()>0) {
		string = newTime.getUTCHours()+" hours";
	}else if(newTime.getUTCMinutes()>0) {
		string = newTime.getUTCMinutes()+" minutes";
	}else if(newTime.getUTCSeconds()>0) {
		string = newTime.getUTCSeconds()+" seconds";
	}
	return string+" ago.";
}
function isEven(index) {
	if (index%2==0) {
		return true;
	}
	return false;
}
function isDefined(variable) {
    return (variable==undefined)?false:true;
}

function getViewport() {
	/* the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight */
	if (typeof window.innerWidth != 'undefined') {
		viewportWidth = window.innerWidth,
		viewportHeight = window.innerHeight
	}
	
	// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
	else if (typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth != 'undefined' && document.documentElement.clientWidth != 0) {
		viewportWidth = document.documentElement.clientWidth,
		viewportHeight = document.documentElement.clientHeight
	}
	
	// older versions of IE
	else {
		viewportWidth = document.getElementsByTagName('body')[0].clientWidth,
		viewportHeight = document.getElementsByTagName('body')[0].clientHeight
	}
	return [viewportWidth, viewportHeight];
}

function return2br(dataStr) {
	return dataStr.replace(/(\r\n|[\r\n])/g, "<br />");
}


