function getViewportSize()
{
	var size = [0, 0];
	if (typeof window.innerWidth != 'undefined')
	{
		size = [
			window.innerWidth,
			window.innerHeight
		];
	}
	else if (typeof document.documentElement != 'underfined'
			&& typeof document.documentElement.clientWidth != 'undefined'
			&& document.documentElement.clientWidth != 0)
	{
		size = [
			document.documentElement.clientWidth,
			document.documentElement.clientHeight
		];
	}
	else
	{
		size = [
			document.getElementsByTagName('body')[0].clientWidth,
			document.getElementsByTagName('body')[0].clientHeight
		];
	}
	return size;
}

function getDaysInMonth(aDate){
   // returns the last day of a given month
    var m = new Number(aDate.getMonth());
    var y = new Number(aDate.getYear());

    var tmpDate = new Date(y, m, 28);
    var checkMonth = tmpDate.getMonth();
    var lastDay = 27;

    while(lastDay <= 31){
        temp = tmpDate.setDate(lastDay + 1);
        if(checkMonth != tmpDate.getMonth())
            break;
        lastDay++
    }
    return lastDay;
}

function getElementsByClassName(oElm, strTagName, oClassNames){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	var arrRegExpClassNames = new Array();
	if(typeof oClassNames == "object"){
		for(var i=0; i<oClassNames.length; i++){
			arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames[i].replace(/-/g, "\-") + "(\s|$)"));
		}
	}
	else{
		arrRegExpClassNames.push(new RegExp("(^|\s)" + oClassNames.replace(/-/g, "\-") + "(\s|$)"));
	}
	var oElement;
	var bMatchesAll;
	for(var j=0; j<arrElements.length; j++){
		oElement = arrElements[j];
		bMatchesAll = true;
		for(var k=0; k<arrRegExpClassNames.length; k++){
			if(!arrRegExpClassNames[k].test(oElement.className)){
				bMatchesAll = false;
				break;
			}
		}
		if(bMatchesAll){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

/*USAGE

http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/


To get all a elements in the document with a “info-links” class.
    getElementsByClassName(document, "a", "info-links");
To get all div elements within the element named “container”, with a “col” and a “left” class.
    getElementsByClassName(document.getElementById("container"), "div", ["col", "left"]);



*/


function Switch_Search_Homepage_Panel()
{
	if (document.getElementById("search_homepage_date").style.visibility == "hidden")
		Shows_Search_Homepage_Date_Panel();
	else
		Hide_Search_Homepage_Date_Panel();
}

function Shows_Search_Homepage_Date_Panel(){
	document.getElementById("search_homepage_date").style.visibility = "visible";
	document.getElementById("search_homepage_date").style.display = "block";
}

function Hide_Search_Homepage_Date_Panel()
{
	document.getElementById("search_homepage_date").style.visibility = "hidden";
	document.getElementById("search_homepage_date").style.display = "none";
}

var active_banner_id = 1;
function randomBanner(number_of_banners)
{
	for (i = 1; i <= number_of_banners; i++)
	{
		HideBanner('random_banner_' + i);
	}
	active_banner_id = active_banner_id +1
	if (active_banner_id > number_of_banners)
	{
		active_banner_id = 1;
	}
	ShowBanner('random_banner_' + active_banner_id);
	setTimeout("randomBanner(" + number_of_banners + ")",20000); 
}
function ShowBanner(layer_id)
{
	if (document.getElementById(layer_id))
	{
		document.getElementById(layer_id).style.display = 'block';
		document.getElementById(layer_id).style.visibility = 'visible';
	}
}
function HideBanner(layer_id)
{
	if (document.getElementById(layer_id)){
		document.getElementById(layer_id).style.display = 'none';
		document.getElementById(layer_id).style.visibility = 'hidden';
	}
}


		function loadHomepageSearch()
			{
				if (document.getElementById('holder_search'))
					{
					var http = false;
					if(navigator.appName == "Microsoft Internet Explorer") {
					  http = new ActiveXObject("Microsoft.XMLHTTP");
					} else {
					  http = new XMLHttpRequest();
					}
					var dt = new Date();
					http.open("GET", "http://www.shortstay-apartment.com/thehague/./plugin/search_homepage.html?dt=" + dt.toUTCString(), true);
					http.onreadystatechange=function() {
						if(http.readyState == 4) {
								document.getElementById('holder_search').innerHTML = http.responseText;
						}
					}
					http.send(null);
				}
			}
		function loadContentSearch()
		{
			if (document.getElementById('content_searchpanel'))
					{
					var http = false;
					if(navigator.appName == "Microsoft Internet Explorer") {
					  http = new ActiveXObject("Microsoft.XMLHTTP");
					} else {
					  http = new XMLHttpRequest();
					}
					var dt = new Date();
					http.open("GET", "http://www.shortstay-apartment.com/thehague/./plugin/search_content.html?dt=" + dt.toUTCString(), true);
					http.onreadystatechange=function() {
						if(http.readyState == 4) {
								document.getElementById('content_searchpanel').innerHTML = http.responseText;
						}
					}
					http.send(null);
				}
		}
		
		function loadSpecialOffer()
		{
			if (document.getElementById('special'))
			{
				var http = false;
				if(navigator.appName == "Microsoft Internet Explorer") {
				  http = new ActiveXObject("Microsoft.XMLHTTP");
				} else {
				  http = new XMLHttpRequest();
				}
				var dt = new Date();
				http.open("GET", "http://www.shortstay-apartment.com/thehague/./plugin/special_content.html?dt=" + dt.toUTCString(), true);
				http.onreadystatechange=function() {
					if(http.readyState == 4) {
							document.getElementById('special').innerHTML = http.responseText;
							randomBanner(document.getElementById('number_of_banner_items').innerHTML);
					}
				}
				http.send(null);
			}
		}
		
		function loadDiscountedApartments()
		{
			if (document.getElementById('holder_featured'))
			{
				var http = false;
				if(navigator.appName == "Microsoft Internet Explorer") {
				  http = new ActiveXObject("Microsoft.XMLHTTP");
				} else {
				  http = new XMLHttpRequest();
				}
				var dt = new Date();
				http.open("GET", "http://www.shortstay-apartment.com/thehague/./plugin/featured_apartments.html?dt=" + dt.toUTCString(), true);
				http.onreadystatechange=function() {
					if(http.readyState == 4) {
						document.getElementById('holder_featured').innerHTML = http.responseText;
						document.getElementById("holder_featured").style.visibility = "visible";
						document.getElementById("holder_featured").style.display = "block";
					}
				}
				http.send(null);
			}
		}

	function loadLargePhoto(URL)
	{
		if (document.getElementById('object_image'))
		{
				document.getElementById('object_image').src=URL;
		}
	}
	function SetSearchAction()
	{
		object_overview_sort_form.elements['search_action'].value = "true";
	}