var win = null;

// ===============================================================================================================================

function NewWindow(mypage, myname, w, h, scroll)
{	
	
	if (win && !win.closed) win.close();
	
	

	LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
	TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
	settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable';
	win = window.open(mypage, myname, settings);
	if (win.window.focus) { win.window.focus(); }
}

// ===============================================================================================================================

function getViewport(returnmode)
{
	// Gibt Höhe oder Breite des Viewports zurück
	// returnmode == 1 gibt viewportheight zurück
	// returnmode == 2 gibt viewportwidth zurück
	var viewportwidth;
	var viewportheight;
	 
	// 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
	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;
	}
	
	if (returnmode == 1) return viewportheight;
	else return viewportwidth;
	
}

// ===============================================================================================================================

function setHeightSpacer(myValue)
{
	// Setzt Höhe für pt.gif
	var spacerHeight;
	var myHeight = getViewport(1); // aktuelle Höhe Viewport holen
	myValue = myValue || 258; 
	if (document.all) myValue = myValue - 0; // Wenn IE
	
	if (myHeight > 0)
	{
		spacerHeight = myHeight - myValue;
		document.getElementById("hoehenspacer").style.height = spacerHeight + "px";
	}
}

// ===============================================================================================================================

function showHideLanguageDiv(show)
{
	if (document.getElementById)
	{
		c = document.getElementById("current-language");
		h = document.getElementById("current-language-helper");
		l = document.getElementById("current-language-link");
		s = document.getElementById("select-language");
		
		if (show)
		{
			c.style.color = "#FFF";
			c.getElementsByTagName("div")[1].style.color = "#FFF";
			c.style.background = "#B1232C url(/images/layout/bg-nav-main-li-current.gif) no-repeat top left";
			h.style.background = "transparent url(/images/layout/bg-nav-main-li-current-span.gif) no-repeat top right";
			l.style.color = "#FFF";
			s.style.display = "block";
		}
		else
		{
			c.style.color = "#E1E1E1";
			c.getElementsByTagName("div")[1].style.color = "#E1E1E1";
			c.style.background = "transparent url(/images/layout/arrow-down-red.gif) no-repeat right 6px";
			h.style.background = "none";
			l.style.color = "#E1E1E1";
			s.style.display = "none";
		}
	}
}

// ===============================================================================================================================

function maildecode (input)
	{
	var output=input;
	output=output.replace(/\|/, '@');
	output=output.replace("#xxcom#", ".");
	return (output);
	}
	
// ===============================================================================================================================

function hideDiv(idDiv) 
{
	document.getElementById(idDiv).style.display = 'none';
}

// ===============================================================================================================================

function showDiv(idDiv) 
{
	document.getElementById(idDiv).style.display = '';
}

	
function showTab(tabname, tabno, maxtabs)
{
	if (document.getElementById)
	{		
		for (var i = 1; i <= maxtabs; i++)
		{
			if (document.getElementById(tabname + i)) document.getElementById(tabname + i).style.display = (tabno == i) ? "block" : "none";
			if (document.getElementById(tabname + i + '_link')) document.getElementById(tabname + i + '_link').className = (tabno == i) ? "atablink" : "tablink";
		}
	}
}

// ===============================================================================================================================

function check_email(email) 
{

 	var usr    = "([a-zA-Z0-9][a-zA-Z0-9_.-]*|\"([^\\\\\x80-\xff\015\012\"]|\\\\[^\x80-\xff])+\")";
  	var domain = "([a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*[a-zA-Z0-9][a-zA-Z0-9._-]*\\.[a-zA-Z]{2,6}";
  	var regex  = "^" + usr + "\@" + domain + "$";
  	var rgx    = new RegExp(regex);
  	return rgx.exec(email) ? true : false;
}

// ===============================================================================================================================

function format_fieldcolor(idDiv, showError)
{
	showError = showError | false;
	var errorClass = "fc-error";
	var normalClass = "fc-normal";
	var labelColor = (showError) ? "#CC0000" : "";
	var d = document.getElementById(idDiv);
	var currentClass = d.className;
	var myLabel = "labelfor_" + idDiv;
	
	if (showError)
	{
		var showClass = errorClass;
		var oppClass = normalClass;
	}
	else
	{
		var showClass = normalClass;
		var oppClass = errorClass;
	}
	
	if (currentClass == "" || currentClass == oppClass)
	{
		d.className = showClass;
	}
	else
	{
		var indexOfSpace = currentClass.indexOf(" ");
		if(indexOfSpace == -1)
		{
			d.className = currentClass + " " + showClass;
		}
		else
		{
			var mainClass = currentClass.substring(0, indexOfSpace + 1);
			d.className = mainClass + " " + showClass;
		}
	}
	
	if (document.getElementById(myLabel)) document.getElementById(myLabel).style.color = labelColor;
}

// ===============================================================================================================================

function fieldcolor_normal(idDiv)
{
	format_fieldcolor(idDiv);
}

// ===============================================================================================================================

function fieldcolor_error(idDiv)
{
	format_fieldcolor(idDiv, true);
}

// ===============================================================================================================================

function rc24_showToolboxText(textToShow, showOffState)
{
	showOffState = showOffState | 0;
	var el = document.getElementById("toolbox-text");
	el.style.color = (showOffState == 1) ? "#B9B9B9" : "#666666";
	el.innerHTML = textToShow;
}

// ===============================================================================================================================

function rc24_ctbg(el, show)
{
	// CHANGE BACKGROUND TOOLBOX, LANG SELECT DEALER HP
	show = show | false;
	el.style.backgroundColor = (show) ? "#FFF5F5" : "#FFF";
}

// ===============================================================================================================================

function showHideDealerLanguageDiv(show)
{
	if (document.getElementById)
	{
		s = document.getElementById("select-language-dealer");
		s.style.display = (show) ? "block" : "none";
	}
}