var bFirstTime = true;

function GetObj(objectId)
{
	return document.getElementById(objectId);
}

function ScrollToTopOfPage()
{
	if(bFirstTime == true)
	{
		bFirstTime = false;
	}
	else
	{
		scroll(0,400);
	}
}

function isObj(obj)
{
	if(obj) return true;
	return false;
}

function checkInput(obj, value)
{
	if(obj)
	{
		setMessage("");
		
		if(obj.value == value)
		{
			obj.value = "";
		}
		else if(obj.value == "")
		{
			obj.value = value;
		}
		else
		{
			cleanMessage();
		}
	}
}

function isEmpty(obj)
{
	if(obj.value == "") return true;
	return false;
}

function isEmail(obj)
{
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	if (filter.test(obj.value)) return true;
	return false;
}

function isPostcode(obj)
{
	var filter = /^[1-9]{1}[0-9]{3}[a-zA-Z]{2}$/;
	
	if (filter.test(obj.value)) return true;
	return false;
}

function isSameAsTitle(obj)
{
	if(obj.value == obj.title) return true;
	return false;
}

function focusObject(obj)
{
	obj.focus();
}

function setMessageById(value, messageId)
{
	objMessage = document.getElementById(messageId);
	
	if(objMessage)
	{
		objMessage.innerHTML = value;
	}
}

function setMessage(value, objectId)
{
	objMessage = document.getElementById(objectId);
		
	if(objMessage)
	{
		objMessage.innerHTML = value;
	}
	else
	{
		
		objMessage = document.getElementById('message');
		
		if(objMessage)
		{
			if(value != "")
			{
				scroll(0,0);
				objMessage.innerHTML = value;
			}
		}
	}
}

function cleanMessage()
{
	objMessage = document.getElementById('message');
		
	if(objMessage)
	{
		objMessage.innerHTML = "";
	}
}

function VerstuurContactFormulier(sUrl)
{
	objForm		= document.getElementById('ContactForm');
	objComment	= document.getElementById('comment');
	objName 	= document.getElementById('name');
	objEmail 	= document.getElementById('email');
	
	if(objComment && objName && objEmail)
	{
		if(isEmpty(objName) || isSameAsTitle(objName))
		{
			focusObject(objName);
			setMessage("U bent vergeten uw <strong>naam</strong> in te vullen!");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessage("U bent vergeten uw <strong>e-mailadres</strong> in te vullen!");
			return;
		}

		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessage("Het opgegeven <strong>e-mailadres</strong> is onjuist!");
			return;
		}
		
		if(isEmpty(objComment) || isSameAsTitle(objComment))
		{
			focusObject(objComment);
			setMessage("U bent vergeten uw <strong>vraag/opmerking</strong> in te vullen!");
			return;
		}
		
		/* submit the form */
		objForm.submit();
	}
}

function createQuery(formOject)
{
	var pairs = new Array();
	
	if(formOject)
	{
		for(var i=0; i<formOject.elements.length; i++)
		{
			if ((name = formOject.elements[i].name) && (value = formOject.elements[i].value))
			{
				if(formOject.elements[i].type == "checkbox")
				{
					if(formOject.elements[i].checked)
						pairs.push(encodeURIComponent(name) + "=" + encodeURIComponent(value));	
					else
						pairs.push(encodeURIComponent(name) + "=" + encodeURIComponent("off"));	
				}
				else
				{
					pairs.push(encodeURIComponent(name) + "=" + encodeURIComponent(value));	
				}
			}
		}
	}

	return pairs.join("&");
}

function VerstuurZoekopdracht(sUrl)
{
	ojbFirma 	= document.getElementById('firma');
	objEmail 	= document.getElementById('email');
	
	if(ojbFirma && objEmail)
	{
		if(isEmpty(ojbFirma) || isSameAsTitle(ojbFirma))
		{
			focusObject(ojbFirma);
			setMessage("U bent vergeten uw <strong>firma</strong> in te vullen!");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessage("U bent vergeten uw <strong>e-mailadres</strong> in te vullen!");
			return;
		}

		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessage("Het opgegeven <strong>e-mailadres</strong> is onjuist!");
			return;
		}
		
		sUrl += "?" + createQuery(document.ContactForm);
		
		scroll(0,0);
		
		bFirstTime = true;
		$("#ContentPanel").load(sUrl);
	}
}

function VerstuurTaxatieOfBevestiging(sUrl)
{
	ojbFirma 	= document.getElementById('firma');
	objEmail 	= document.getElementById('email');
	
	if(ojbFirma && objEmail)
	{
		if(isEmpty(ojbFirma) || isSameAsTitle(ojbFirma))
		{
			focusObject(ojbFirma);
			setMessage("U bent vergeten uw <strong>firma</strong> in te vullen!");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessage("U bent vergeten uw <strong>e-mailadres</strong> in te vullen!");
			return;
		}

		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessage("Het opgegeven <strong>e-mailadres</strong> is onjuist!");
			return;
		}
		
		sUrl += "?" + createQuery(document.ContactForm);
		
		//document.getElementById('log').value = sUrl;
		scroll(0,0);
		
		bFirstTime = true;
		$("#ContentPanel").load(sUrl);
	}
}

function VerstuurOnlineAfspraak(sUrl)
{
	objName 	= document.getElementById('naam');
	objEmail 	= document.getElementById('email');
	objPhone 	= document.getElementById('telefoon');
	
	if(objName && objEmail && objPhone)
	{
		if(isEmpty(objName) || isSameAsTitle(objName))
		{
			focusObject(objName);
			setMessage("U bent vergeten uw <strong>naam</strong> in te vullen!");
			return;
		}
		
		if(isEmpty(objEmail) || isSameAsTitle(objEmail))
		{
			focusObject(objEmail);
			setMessage("U bent vergeten uw <strong>e-mailadres</strong> in te vullen!");
			return;
		}

		if(!isEmail(objEmail))
		{
			focusObject(objEmail);
			setMessage("Het opgegeven <strong>e-mailadres</strong> is onjuist!");
			return;
		}
		
		if(isEmpty(objPhone) || isSameAsTitle(objPhone))
		{
			focusObject(objPhone);
			setMessage("U bent vergeten uw <strong>telefoonnummer</strong> in te vullen!");
			return;
		}
		
		sUrl += "?" + createQuery(document.ContactForm);
		
		//document.getElementById('log').value = sUrl;
		scroll(0,0);
		
		bFirstTime = true;
		$("#ContentPanel").load(sUrl);
	}
}

function CollapseSubMenu()
{
	$("#MenuHolder").animate({height: "68px"},500);
}

function CollapseChildMenu()
{
	$("#MenuHolder").animate({height: "102px"},500);
}

function ToggleMenu()
{
	$("#MenuHolder").animate({height: "34px"},500);
}

function ToggleSubMenu(oCallback)
{
	$("#MenuHolder").animate({height: "34px"},500, oCallback);
}

function ToggleChildMenu()
{
	$("#MenuHolder").animate({height: "68px"},500);
}

function MenuEffectOver(sMenuItemId)
{
	//$("#met_" + sMenuItemId).fadeIn("normal");
	//$("#meb_" + sMenuItemId).fadeIn("normal");
	
	$("#met_" + sMenuItemId).show();
	$("#meb_" + sMenuItemId).show();
}

function MenuEffectOut(sMenuItemId)
{
	//$("#met_" + sMenuItemId).fadeOut("normal");
	//$("#meb_" + sMenuItemId).fadeOut("normal");
	$("#met_" + sMenuItemId).hide();
	$("#meb_" + sMenuItemId).hide();
}

/* Autobedrijf Schouten  */

var sActiveMenuItem = "";
var sActiveSubMenuItem = "";
var sActiveChildMenuItem = "";

function ActiveMenuItem(sMenuItemId)
{
	ActiveObj = GetObj(sActiveMenuItem);
	
	if(ActiveObj)
	{
		$("#a_met_" + sActiveMenuItem).hide();
	}
	
	sActiveMenuItem = sMenuItemId;
	
	$("#a_met_" + sMenuItemId).show();
}

function ActiveSubMenuItem(sSubMenuItemId)
{
	ActiveObj = GetObj(sActiveSubMenuItem);
	
	if(ActiveObj)
	{
		$("#a_met_sub_" + sActiveSubMenuItem).hide();
	}
	
	sActiveSubMenuItem = sSubMenuItemId;
	
	$("#a_met_sub_" + sSubMenuItemId).show();
}

function ActiveChildMenuItem(sChildMenuItemId)
{
	ActiveObj = GetObj(sActiveChildMenuItem);
	
	if(ActiveObj)
	{
		$("#a_met_child_" + sActiveChildMenuItem).hide();
	}
	
	sActiveChildMenuItem = sChildMenuItemId;
	
	$("#a_met_child_" + sChildMenuItemId).show();
}

function MainButtonClick(sMainItemId)
{
	var sUrl 		= "contentloader.php";
	
	ActiveMenuItem(sMainItemId);
	
	if(sMainItemId != "")
	{
		sUrl 		+= "?page=" + sMainItemId;
	}
	
	bFirstTime = true;
	$("#ContentPanel").load(sUrl);
}

function SubButtonClick(sMainItemId, sSubItemId)
{
	var sUrl 		= "contentloader.php";
	
	ActiveSubMenuItem(sSubItemId);
	
	if(sMainItemId != "")
	{
		sUrl 		+= "?page=" + sMainItemId;
	}
	
	if(sSubItemId != "")
	{
		sUrl 		+= "&subpage=" + sSubItemId;
	}
	
	bFirstTime = true;
	$("#ContentPanel").load(sUrl);
}

function ChildButtonClick(sMainItemId, sSubItemId, sChildItemId)
{
	var sUrl 		= "contentloader.php";
	
	ActiveChildMenuItem(sChildItemId);
	
	if(sMainItemId != "")
	{
		sUrl 		+= "?page=" + sMainItemId;
	}
	
	if(sSubItemId != "")
	{
		sUrl 		+= "&subpage=" + sSubItemId;
	}

	if(sChildItemId != "")
	{
		sUrl 		+= "&childpage=" + sChildItemId;
	}
	
	bFirstTime = true;
	$("#ContentPanel").load(sUrl);
}

function LoadHeaderImageTimeout(sImageUrl, iTime)
{
	setTimeout(function() {LoadHeaderImage(sImageUrl);}, iTime);
}

function LoadHeaderImage(sImageUrl)
{
	var imageObj_0 = document.getElementById('ImgHeaderPhoto_0');
	var imageObj_1 = document.getElementById('ImgHeaderPhoto_1');
	
	if(imageObj_0 && imageObj_1)
	{
		var sCurrentSource = imageObj_0.src;
		
		if(StringContains(sCurrentSource, sImageUrl) == false)
		{
			imageObj_0.src = sImageUrl;
			
			imageObj_0.onload = function()
			{				
				$('#ImgHeaderPhoto_1').animate({opacity: 0}, 500, function() 
				{
					imageObj_1.src = sImageUrl;
					
					$('#ImgHeaderPhoto_1').css('opacity',1); 
				});
			};
		}
	}
}

function StringContains(sValue, sPattern)
{
	var bReturn = false;
	
	if(sValue.match(sPattern) != null)
	{
		bReturn = true;
	}
	
	return bReturn;
}

function InitMenu(sMenuItem, sSubMenuItem, sChildMenuItem, bHasSub, bHasChild)
{
	sActiveMenuItem = sMenuItem;
	sActiveSubMenuItem = sSubMenuItem;
	sActiveChildMenuItem = sChildMenuItem;
	
	if(bHasChild == "1")
	{
		CollapseChildMenu();
		$('#IdSub' + sActiveMenuItem).show();
		$('#IdChild' + sActiveSubMenuItem).show();
	}
	else if(bHasSub == "1")
	{
		CollapseSubMenu();
		$('#IdSub' + sActiveMenuItem).show();
	}
}

var sActiveSubmenu = "";
var sActiveChildmenu = "";

function HandleSubMenu(IdOfSubMenu)
{
	if(sActiveSubmenu != IdOfSubMenu)
	{
		var oSubMenu = GetObj(IdOfSubMenu);
		
		var oCallback = function()
			{
				if(sActiveSubmenu != "") $('#' + sActiveSubmenu).hide();
				if(sActiveChildmenu != "") $('#' + sActiveChildmenu).hide();
				sActiveSubmenu = "";
				sActiveChildmenu = "";
				
				if(oSubMenu)
				{
					sActiveSubmenu = IdOfSubMenu;
					$('#' + IdOfSubMenu).show();
					CollapseSubMenu();
				}
				else
				{
					ToggleMenu();
				}
			};
		
		if(sActiveChildmenu != "")
		{
			ToggleSubMenu(oCallback);
		}
		else
		{
			setTimeout(oCallback, 0);
		}
	}
}

function HandleChildMenu(IdOfChildMenu)
{
	if(sActiveChildmenu != IdOfChildMenu)
	{
		var oChildMenu = GetObj(IdOfChildMenu);

		if(sActiveChildmenu != "") $('#' + sActiveChildmenu).hide();
		sActiveChildmenu = "";
		
		if(oChildMenu)
		{
			sActiveChildmenu = IdOfChildMenu;
			$('#' + IdOfChildMenu).show();
			CollapseChildMenu();
		}
		else
		{
			ToggleChildMenu();
		}
	}
}
