// JavaScript Document

//Details Expander:
var origDetailsTop = new Array();
var origDetailsLeft = new Array();
var origDetailsHeight = new Array();
var origDetailsWidth = new Array();
var detailsExpanded = new Array();

var detailsInnerHTML = new Array();
var detailsInnerHTMLTitle = new Array();

//Determine ie6:
var isIE6 = false /*@cc_on || @_jscript_version < 5.7 @*/;

//language:
//index-script:
if(!myLanguage || myLanguage == "en")
{
	var lang_loginMsgNorm = 'Please login to get access to your files.';
	var lang_loginMsgLogFirst = 'Please login in, so that we can add new mp3s to your account.';
	var lang_loginMsgWhere = 'You will get your user account and your password after your first order at the Audiostrobe Mp3 Store.<br />This way you can download and listen to your files at any time!';
	var lang_loginMsgLogOk = 'Login successful. Setting user rights...';
	var lang_loginMsgLogNOK = 'Username, email address or password incorrect.';
	var lang_loginMsgLogPwdSent = 'A new password has been sent to the given email address.';
	var lang_loginMsgLogPwdChd = 'Your password has been changed successfully.';
	var lang_loginMsgLogPwdNChd = 'Your password could not been changed. If you wish, request a new one please.';
	
	var lang_orderNoSum = 'You have a total order sum of 0,00 euro.\n\nPlease check if the items in your cart are still available (Art Store).\n\nPlease check if you don\'t have the cart items already (Mp3 Store).';
	var lang_orderArtItemUnavailable = 'One of your visual art products has been sold and is no more available.\nThis item will not be added to your order.';
	
	//order-script:
	var lang_submitOrder = "Submit this order";
	var lang_submittingOrder = "Submitting order...";
	
	var lang_openCart = "Open cart";
	var lang_nextAlbum = "Next album";
	var lang_nextArts = "Next art object";
	
	var lang_closeCart = "Close checkout";
	var lang_backToForm = "Back to checkout form";
}

if(myLanguage == "de")
{
	//var lang_tokenEmail = "Bitte loggen Sie sich ein, damit neue Mp3s Ihrem Benutzerkonto zugewiesen werden können.";	
	
	var lang_loginMsgNorm = 'Bitte loggen Sie sich ein, um Zugang zu Ihren Files zu erhalten.';
	var lang_loginMsgLogFirst = 'Bitte loggen Sie sich ein, damit wir neue Mp3s zu Ihrem Account hinzufügen können.';
	var lang_loginMsgWhere = 'Sie erhalten Ihren eigenen Account samt Zugangsdaten nach Ihrer ersten Bestellung im Audiostrobe Mp3 Shop.<br />Auf diese Weise können Sie jederzeit Ihre Mp3s downloaden oder online anhören!';
	var lang_loginMsgLogOk = 'Login erfolgreich. Nutzerrechte werden gesetzt...';
	var lang_loginMsgLogNOK = 'Benutzername, E-Mail-Adresse oder Passwort falsch.';
	var lang_loginMsgLogPwdSent = 'Ein neues Passwort wurde an die angegebene E-Mail-Adresse geschickt.';
	var lang_loginMsgLogPwdChd = 'Ihr Passwort wurde erfolgreich geändert.';
	var lang_loginMsgLogPwdNChd = 'Ihr Passwort wurde nicht geändert. Bitte fordern Sie ein neues an, falls gewünscht.';
	
	var lang_orderNoSum = 'Die Gesamtsumme beträgt 0,00 Euro.\n\nBitte schauen Sie nach, ob die Artikel im Warenkob noch verfügbar sind (Kunst Galerie).\n\nBitte schauen Sie nach, ob Sie die Warenkorbartikel nicht bereits besitzen (Mp3 Shop).';
	var lang_orderArtItemUnavailable = 'Eines der Kunstobjekte wurde verkauft und ist nicht länger verfügbar.\nDieses Kunstobjekt wird Ihrer nicht Rechnung nicht hinzugefügt.';
	
	//order-script:
	var lang_submitOrder = "Bestellung absenden";
	var lang_submittingOrder = "Sende Bestellung...";
	
	var lang_openCart = "Korb öffnen";
	var lang_nextAlbum = "Nächstes Album";
	var lang_nextArts = "Nächstes Objekt";
	
	var lang_closeCart = "Warenkorb schließen";
	var lang_backToForm = "Zurück zur Bestellung";
}


//mail to:
function mailTo(prefix)
{
	location.href = "mailto:" + prefix + "@audiostrobe.com";
}


function displayContentDetails(contentPath)
{
	loadingDetails('divDetails');
	setMyiFrameSecond(contentPath);
}

function updateContent()
{
	setMyiFrameSecond("display.php?updateContent=true");
}

function displayUserArea()
{
	showLoginMessage('normal',0);
	loadingDetails('divUserArea');
	setMyiFrameSecond("display.php?showUserArea=true");
}

function displayShoppingCart()
{

	loadingDetails('divShopCart');
	setMyiFrameSecond("display.php?showShopCart=true");	
}


//Endsumme mit versandtkosten updaten:
function updateShoppingCartCosts(thisSum, costString)
{
	//Checkout:
	var objTotal2 = document.getElementById('shopCartTotal2');
	if(objTotal2) objTotal2.innerHTML = "&euro; " + thisSum;
	
	document.getElementById('orderSumCard').innerHTML = costString;
	document.getElementById('orderSumDebit').innerHTML = costString;
	document.getElementById('orderSumPrepay').innerHTML = costString;
}


//Update cart-objects content on change:
function updateShoppingCart(thisSum, cartLinkText, cartHeadText)
{
	//Link top page:
	if(cartLinkText) document.getElementById('cartLinkText').innerHTML = cartLinkText;
	
	//if cart visible:
	if(document.getElementById('divShopCart').style.display=="block")
	{
		//Cart head text:
		if(cartLinkText){
			objCartHead = document.getElementById('divCartHeadCount');
			if(objCartHead) objCartHead.innerHTML = cartHeadText;
		}
		
		//Cart Total:
		var objTotal1 = document.getElementById('shopCartTotal1');
		if(objTotal1) objTotal1.innerHTML = "&euro; " + thisSum;
		//Checkout:
		var objTotal2 = document.getElementById('shopCartTotal2');
		if(objTotal2) objTotal2.innerHTML = "&euro; " + thisSum;
	}
}

function reloadShoppingCart()
{
	//reload cart if visible:
	if(document.getElementById('divShopCart').style.display=="block")
	{
		loading(0);
		setMyiFrame('display.php?showShopCart=true');
	}else{
		hideLoading();
	}
}

function showShoppingCartCheckoutStart()
{
	if(location.search.indexOf("displayCheckout=1")>-1)
	{
		detailsExpanded['divShopCart'] = true;
		toggleCartContent();
	}	
}



function setMyiFrame(path)
{
	var myiFrame = document.getElementById('myiFrame');
	if(myiFrame){
		myiFrame.src = path;
	}else{
		//wait until iframe is loaded:
		setTimeout( function(){setMyiFrameSecond(path)} , 1000 );	
	}
}

function setMyiFrameSecond(path)
{
	var myiFrame = document.getElementById('myiFrameSecond');
	if(myiFrame){
		myiFrame.src = path;
	}else{
		//wait until iframe is loaded:
		setTimeout( function(){setMyiFrameSecond(path)} , 1000 );	
	}
}


//logout from userArea
function userAreaLogout()
{
	setMyiFrame("display.php?login=tryLogout");
}


//Open UserArea/Submit order in order form
function openAfterLoginSuccess(language)
{
	//Display User Area:
	if(document.getElementById("divUserArea").style.display=="block")
	{
		closeDetails('divUserArea');
		loadingDetails('divUserArea');
		setMyiFrame('display.php?showUserArea=true');
	}
	
	//Hide login in cart:
	if(document.getElementById("divShopCart").style.display=="block")
	{
		document.getElementById("divShopCartLogin").style.display="none";
		submitThisOrder(language);
	}
	
	//Update Content (new prices on login etc):
	updateContent();
}

//Update content of logged-in user (new prices on login etc):
function updateAfterLoginSuccess(language)
{
	updateContent();	
}


var divUserAreaLoginInfoLast = 0;
var changeLoginMessageVal = 0;
function showLoginMessage(msg, delay)
{
	changeLoginMessageVal = true;
	setTimeout( function(){changeLoginMessage(msg)} ,delay );	
}

//++ USE showLoginMessage for Changes (above) ++
function changeLoginMessage(msg)
{
	if(changeLoginMessageVal)
	{
		var msgOut = "";
		
		if(msg=="normal") msgOut = '<p class="font_UserAreaInfoNorm">'+lang_loginMsgNorm+'</p>';
		if(msg=="info") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgWhere+'</p>';
		if(msg=="loggedIn") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgLogOk+'</p>';
		if(msg=="wrongLogin") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgLogNOK+'</p>';
		if(msg=="newPassword") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgLogPwdSent+'</p>';
		if(msg=="passValidOK") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgLogPwdChd+'</p>';
		if(msg=="passValidNOK") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgLogPwdNChd+'</p>';
		if(msg=="loginFirst") msgOut = '<p class="font_UserAreaInfoGreen">'+lang_loginMsgLogFirst+'</p>';
		
		
		if(msgOut)
		{
			divUserAreaLoginInfoLast = document.getElementById("divUserAreaLoginInfo").innerHTML;
			document.getElementById("divUserAreaLoginInfo").innerHTML = msgOut;
			document.getElementById("divUserAreaLoginInfo1").innerHTML = msgOut;
		}
		
		changeLoginMessageVal = false;
	}
}

function toggleLoginPassword(show)
{
	if(show){
		document.getElementById('divReqirePassword').style.display='block';
		document.getElementById('divReqirePassword1').style.display='block';
	}else{
		document.getElementById('divReqirePassword').style.display='none';
		document.getElementById('divReqirePassword1').style.display='none';
	}
	
}

function hideLoginMessage()
{
	changeLoginMessageVal = false;
	if(divUserAreaLoginInfoLast)
	{
		document.getElementById("divUserAreaLoginInfo").innerHTML = divUserAreaLoginInfoLast;
		document.getElementById("divUserAreaLoginInfo1").innerHTML = divUserAreaLoginInfoLast;
		divUserAreaLoginInfoLast = 0;
	}
}


function submitForm(formID)
{
	if(formID)
	{
		myForm = document.getElementById(formID);
		myForm.submit();
	}
}





//toggle tab display:
function toggleTab(whichTab)
{
	var myTab = document.getElementById('divUserAreaTabContent-'+whichTab);
	var myTabToggled = document.getElementById('divUserAreaTabContentToggled-'+whichTab);

	if(myTab.style.display == 'block'){
		myTab.style.display = 'none';
		myTabToggled.style.display = 'block';
		setMyiFrameSecond('display.php?saveTabView='+whichTab+'|none');
	}else{
		myTab.style.display = 'block';
		myTabToggled.style.display = 'none';
		setMyiFrameSecond('display.php?saveTabView='+whichTab+'|block');
	}
}


//Updates the content of a window tab (userArea, Cart...):
function updateTab(tabID, whichTab)
{
	var iFrame = document.getElementById("myiFrame"+tabID+"-"+whichTab);
	if(iFrame){
		loading(0);
		iFrame.src = "display.php?show"+tabID+"Tab="+whichTab;
	}else{
		hideLoading();
	}
}

function setShopCartTabContent(whichTab, innerHTML)
{
	var parentNode = top.document.getElementById("divShopCartContent");
	var childNode = getParentChildNodeById(parentNode, "divShopCartTabContent-"+whichTab);
	
	childNode.innerHTML = innerHTML;
}

function setUserAreaTabContent(whichTab, innerHTML)
{
	var parentNode = top.document.getElementById("divUserAreaContent");
	var childNode = getParentChildNodeById(parentNode, "divUserAreaTabContent-"+whichTab);
	
	childNode.innerHTML = innerHTML;
	
	//Send Flash to update play-links:
	if(whichTab=="Albums" || whichTab=="Tracks") document.getElementById('myiPlayer').contentWindow.soundPlayer('soundPlayer1').requirePlaylink();
}

//Searches through all childNodes of an HTML-Element-Object(parentNode) for an ID(idToFind):
function getParentChildNodeById(parentNode, idToFind)
{
	var nodeList = parentNode.childNodes;
	var childFound = 0;
	var currentChild = 0;
	
	for(var x=0;x<nodeList.length;x++)
	{
		currentChild = nodeList[x];
		
		//nur HTML Elemente:
		if(currentChild.nodeType==1)
		{
			if(currentChild.id==idToFind) {
				return currentChild;
			} else {
				currentChild = getParentChildNodeById(currentChild, idToFind);
				if(currentChild.id==idToFind) return currentChild;
			}
		}
	}
	
	return childFound;
}

//Display Content in full place (without title line):
function setFullContentInnerHTML(innerHTMLcontent)
{
	//hide mp3 player:
	hidePlayer();
	
	document.getElementById("divContentTitleContainer").style.display = "none";
	document.getElementById("divContentTitleLine").style.display = "none";
	document.getElementById("divContent").innerHTML = innerHTMLcontent;
}

//Display Content with title line:
function setContentInnerHTML(innerHTMLcontent)
{
	document.getElementById("divContentTitleContainer").style.display = "block";
	document.getElementById("divContentTitleLine").style.display = "block";
	document.getElementById("divContent").innerHTML = innerHTMLcontent;
}


function setDetailsContent(innerHTML, whichDiv)
{
	detailsInnerHTML[whichDiv] = innerHTML;
	//Set Content when details-box is ready:
	waitDetailsContent(whichDiv);
}

function setDetailsContentTitle(title, whichDiv)
{
	detailsInnerHTMLTitle[whichDiv] = title;
}

function setDetailsCloseText(textClose)
{
	document.getElementById("linkDetailsCloseTxt1").innerHTML = textClose;
	document.getElementById("linkDetailsCloseTxt2").innerHTML = textClose;
}

function setDetailsNextID(nextDetail)
{
	document.getElementById("linkDetailsNext1").href = "display.php?" + nextDetail;
	document.getElementById("linkDetailsNext2").href = "display.php?" + nextDetail;
	
	if(myShop=="Mp3" || myShop=="CDs") { var lang_Next = lang_nextAlbum; }
	if(myShop=="Arts") { var lang_Next = lang_nextArts; }
	
	if(nextDetail=='')
	{
		document.getElementById("linkDetailsNextTxt1").innerHTML = "";
		document.getElementById("linkDetailsNextTxt2").innerHTML = "";
		document.getElementById("linkDetailsNextSp1").innerHTML = "";
		document.getElementById("linkDetailsNextSp2").innerHTML = "";
	} else {
		document.getElementById("linkDetailsNextTxt1").innerHTML = lang_Next;
		document.getElementById("linkDetailsNextTxt2").innerHTML = lang_Next;
		document.getElementById("linkDetailsNextSp1").innerHTML = "&nbsp;|&nbsp;";
		document.getElementById("linkDetailsNextSp2").innerHTML = "&nbsp;|&nbsp;";		
	}
}


function detailsShowCartLink(changeAlbumLink)
{
	var link1 = document.getElementById("detailBuyAlbum");
	var link2 = document.getElementById("detailOpenCart");
	
	if(link1 && changeAlbumLink)
	{
		link1.innerHTML = "<p class=\"font_buyAlbumText\">" + lang_openCart + "</p>";
		link1.href = "javascript:top.displayShoppingCart()";
	}
	if(link2)
	{
		document.getElementById("detailOpenCart").style.display="inline-block";
	}
}

function cartAddCD(albumID)
{
	loading(0);
	setMyiFrame("display.php?buy=CD&itemID=" + albumID);
	detailsShowCartLink(1);
}

function cartAddAlbum(albumID)
{
	loading(0);
	setMyiFrame("display.php?buy=mp3Album&itemID=" + albumID);
	detailsShowCartLink(1);
}

function cartAddTrack(trackID)
{
	loading(0);
	setMyiFrame("display.php?buy=mp3Track&itemID=" + trackID);
	detailsShowCartLink(0);	
}

function cartAddArt(artID)
{
	loading(0);
	setMyiFrame("display.php?buy=art&itemID=" + artID);
	detailsShowCartLink(1);
}

function waitDetailsContent(whichDiv)
{
	var divContent = document.getElementById(whichDiv + "Content");
	var divTitle = document.getElementById(whichDiv + "Titel");
	var divLoading = document.getElementById(whichDiv + "Loading");
	
	
	//Wait for details-box to be expanded:
	if(detailsExpanded[whichDiv])
	{
		
		if(whichDiv=="divUserArea")
		{
			if(detailsInnerHTML[whichDiv] == '')
			{
				//User Login aufklappen (wenn nicht eingeloggt):
				document.getElementById("divUserAreaContentLogin").style.display = "block";
				document.getElementById("divUserAreaContent").style.display = "none";
			}
			else
			{
				//User Area aufklappen (wenn eingeloggt):
				document.getElementById("divUserAreaContentLogin").style.display = "none";
				document.getElementById("divUserAreaContent").style.display = "block";				
			}
		}

		//Hide Loading:
		divLoading.style.display = "none";
		//Set Content:
		divContent.innerHTML = detailsInnerHTML[whichDiv];
		divTitle.innerHTML = detailsInnerHTMLTitle[whichDiv];
		
		//Send Flash to update Playlinks (if playing a file and player visible):
		//Row wih player visible?:
		var playerVis = 0;
		if(top.document.getElementById("divContentTitleContainer").style.display == "block") playerVis = 1;
		if(whichDiv=="divDetails" && playerVis) document.getElementById('myiPlayer').contentWindow.soundPlayer('soundPlayer1').requirePlaylink();
	
	}
	else
	{
		setTimeout( function () { waitDetailsContent(whichDiv); },10);
	}
}


function hideLoading()
{
	showPlayerAfterLoad();
	document.getElementById("divContentLoading").style.display = "none";
}

function loading(hideDetails)
{

	//close details (if not floating):
	if(floatingDetailsWindow==0 && hideDetails ==1) closeDetails('divDetails');
	
	//Hide Mp3Player while loading:
	hidePlayerWhileLoad();

	//Show Loading:
	document.getElementById("divContentLoading").style.display = "block";
}

function closeWindows()
{
	if(floatingDetailsWindow==0) closeDetails('divUserArea',0);

	closeDetails('divUserArea',0);
	closeDetails('divShopCart',0);
}


function loadingDetails(whichDiv)
{
	
	//These Divs Have to be available:
	var divMain = document.getElementById(whichDiv);
	var divFrame = document.getElementById(whichDiv + "Frame");
	var divContent = document.getElementById(whichDiv + "Content");
	var divTitle = document.getElementById(whichDiv + "Titel");
	var divLoading = document.getElementById(whichDiv + "Loading");

	//Msg if not available:
	if(!divMain || !divFrame || !divContent || !divTitle || !divLoading) 
	{
		alert("Missing DivElement in Function: loadingDetails!");
	}
	else
	{
		//Hide other window when not wide-screen mode:
		if(floatingDetailsWindow==0)
		{
			if(whichDiv=="divUserArea") { closeDetails("divDetails",0); closeDetails("divShopCart",0); }
			if(whichDiv=="divShopCart") { closeDetails("divDetails",0); closeDetails("divUserArea",0); }
			if(whichDiv=="divDetails") { hideDetails("divUserArea"); hideDetails("divShopCart"); }
		}
	
		//show loading, hide login-content. hide product-details:
		if(whichDiv=="divUserArea" ) {
				document.getElementById("divUserAreaContentLogin").style.display = "none";
				document.getElementById("divUserAreaContent").style.display = "block";
				toggleLoginPassword(0);
		}

		//show content car, hide checkout:
		if(whichDiv=="divShopCart" ) {
				document.getElementById("divShopCartContentCheckout").style.display = "none";
				document.getElementById("divShopCartContentOrderResult").style.display = "none";
				document.getElementById("divShopCartContent").style.display = "block";
				document.getElementById('divShopCartLogin').style.display = "none";
				toggleLoginPassword(0);
		}
		
		
		//Empty Content (IE6 knows no min-height):
		if(isIE6){
			divContent.innerHTML = "<div style='height:327px;'>&nbsp;</div>";
		}else{
			divContent.innerHTML = "&nbsp;";
		}
		
		if(divMain.style.display=="block") {
			divTitle.innerHTML = "Loading...";
		} else {
			divTitle.innerHTML = "&nbsp;";
			divFrame.style.background = "none";
		}
		
		if(origDetailsTop[whichDiv] == undefined)
		{
			origDetailsTop[whichDiv] = divFrame.style.top;
			origDetailsHeight[whichDiv] = divContent.style.minHeight;
			origDetailsLeft[whichDiv] = divFrame.style.left;
			origDetailsWidth[whichDiv] = divFrame.style.width;
		}
		
		var currentWidth = 0;
		

		
		if(divMain.style.display == "none")
		{
			currentWidth = divFrame.style.width;
			currentWidth = parseInt(currentWidth.replace("px", ""));
			currentLeft = divFrame.style.left;
			currentLeft = parseInt(currentLeft.replace("px", ""));
			
			currentHeight = divContent.style.minHeight;
			currentHeight = parseInt(currentHeight.replace("px", ""));
			currentTop = divFrame.style.top;
			currentTop = parseInt(currentTop.replace("px", ""));
			
			//no width-change for if6
			if(!isIE6) divFrame.style.top = currentTop + 50 + "px";
			if(!isIE6) divContent.style.minHeight = currentHeight - 100 + "px";
			divFrame.style.left = currentLeft + 150 + "px";
			divFrame.style.width = currentWidth-300 + "px";
		}
	
		divMain.style.display = "block";
		divLoading.style.display = "block";
	
		
		if(currentWidth) expandDetailsWidth(currentWidth, currentHeight, divFrame, divContent, whichDiv);
		
	}


}

function expandDetailsWidth(width, height, divFrame, divContent, whichDiv)
{

	detailsExpanded[whichDiv] = false;
	
	currentWidth = divFrame.style.width;
	currentWidth = parseInt(currentWidth.replace("px", ""));
	
	if(currentWidth < width)
	{	
		currentLeft = divFrame.style.left;
		currentLeft = parseInt(currentLeft.replace("px", ""));
		
		divFrame.style.width = (currentWidth + 10) + "px";
		divFrame.style.left = (currentLeft - 5) + "px";
		
		setTimeout( function () { expandDetailsWidth(width, height, divFrame, divContent, whichDiv); }, 10);
	}
	else
	{
		expandDetailsHeight(height, divFrame, divContent, whichDiv);
	}
}

function expandDetailsHeight(height, divFrame, divContent, whichDiv)
{
	currentHeight = divContent.style.minHeight;
	currentHeight = parseInt(currentHeight.replace("px", ""));

	if(currentHeight < height)
	{	
		currentTop = divFrame.style.top;
		currentTop = parseInt(currentTop.replace("px", ""));
		
		divContent.style.minHeight = (currentHeight + 10) + "px";
		divFrame.style.top = (currentTop - 5) + "px";

		setTimeout( function () { expandDetailsHeight(height, divFrame, divContent, whichDiv); }, 15);
	}
	else
	{
		divFrame.style.background = "#FFFFFF";
		detailsExpanded[whichDiv] = true;
	}
}

function closeDetails(whichDiv, toggleCenterProp)
{
	var divMain = document.getElementById(whichDiv);
	
	if(divMain)
	{
		//alert(divMain.style.display);
		
		if(divMain.style.display == "block")
		{
			var divFrame = document.getElementById(whichDiv + "Frame");
			var divContent = document.getElementById(whichDiv + "Content");
			var divTitle = document.getElementById(whichDiv + "Titel");
			var divLoading = document.getElementById(whichDiv + "Loading");
			
			divMain.style.display = "none";
			
			if(origDetailsTop[whichDiv])
			{
				//reset DivDetails height/width:
				divFrame.style.top = origDetailsTop[whichDiv];
				divContent.style.minHeight = origDetailsHeight[whichDiv];		
				divFrame.style.left = origDetailsLeft[whichDiv];
				divFrame.style.width = origDetailsWidth[whichDiv];
			}
			
			if(toggleCenterProp) toggleDetailsWindow("center");
		}
		
		detailsExpanded[whichDiv] = false;
	
		//unhide hidden windwos:		
		if(detailsExpanded['divDetails']==true) unhideDetails('divDetails');
		if(detailsExpanded['divUserArea']==true) unhideDetails('divUserArea');
		if(detailsExpanded['divShopCart']==true) unhideDetails('divShopCart');
	}
}

//do not close, just hide:
function hideDetails(whichDiv)
{
	var divMain = document.getElementById(whichDiv);
	
	if(divMain.style.display == "block")
	{
		divMain.style.display = "none";
	}
	
}
//just unhide:
function unhideDetails(whichDiv)
{
	var divMain = document.getElementById(whichDiv);
	
	if(divMain.style.display == "none")
	{
		divMain.style.display = "block";
	}
	
}




var iniDetailsWindowX;
var iniDetailsWindowY;
var iniDetailsLoadingX;
var iniDetailsLoadingY;
var floatingDetailsWindow = 0;
function toggleDetailsWindow(whichToggle)
{	
	var toggleMode = "toggle"; 
	if(whichToggle=="center") toggleMode = "center";
	
	if(!floatingDetailsWindow && toggleMode == "toggle")
	{
		var deltaX = 548;
		var deltaY = -214;
		
		//window:
		iniDetailsWindowX = document.getElementById("divDetailsFrame").style.left;
		iniDetailsWindowY = document.getElementById("divDetailsFrame").style.top;

		currentX = parseFloat(iniDetailsWindowX.replace("px", ""));
		currentY = parseFloat(iniDetailsWindowY.replace("px", ""));

		document.getElementById("divDetailsFrame").style.left = currentX + deltaX + "px";
		document.getElementById("divDetailsFrame").style.top = currentY + deltaY + "px";	
		
		//loading-msg:
		iniDetailsLoadingX = document.getElementById("divDetailsLoading").style.left;
		iniDetailsLoadingY = document.getElementById("divDetailsLoading").style.top;
		
		currentX = parseFloat(iniDetailsLoadingX.replace("px", ""));
		currentY = parseFloat(iniDetailsLoadingY.replace("px", ""));

		document.getElementById("divDetailsLoading").style.left = currentX + deltaX + "px";
		document.getElementById("divDetailsLoading").style.top =  currentY + deltaY + "px";

		floatingDetailsWindow = 1;
		
		//unhide windows in background:
		if(detailsExpanded['divUserArea']==true) unhideDetails('divUserArea');
		
		toggleContainerProps("left");
	}
	else
	{
		//Nur wenn wirklich toggelt gewesen:
		if(floatingDetailsWindow==1)
		{
			document.getElementById("divDetailsFrame").style.left = iniDetailsWindowX;
			document.getElementById("divDetailsFrame").style.top = iniDetailsWindowY;
			
			document.getElementById("divDetailsLoading").style.left = iniDetailsLoadingX;
			document.getElementById("divDetailsLoading").style.top = iniDetailsLoadingY;	
			
			floatingDetailsWindow = 0;
			
			toggleContainerProps("center");
		}
	}
}

var iniContainerLeft = 0;
var iniContainerCenter = 0;
var iniContainerRight = 0;
var containerIsCenter = 1;
var objContainerLeft = 0;
var objContainerCenter = 0;
var objContainerRight = 0;
function toggleContainerProps(direction)
{
	//store objects:
	if(!objContainerLeft)
	{
		objContainerLeft = document.getElementById("divContainerLeft");
		objContainerCenter = document.getElementById("divContainerCenter");
		objContainerRight = document.getElementById("divContainerRight");		
	}	
	
	//Movespeed
	var moveSpeed = 0.5;
	
	if(containerIsCenter)
	{
		iniContainerLeft = objContainerLeft.style.width;
		iniContainerCenter = objContainerCenter.style.width;
		iniContainerRight = objContainerRight.style.width;
		
		containerIsCenter = 0;
	}
	
	var widthLeft = objContainerLeft.style.width;
	var widthCenter = objContainerCenter.style.width;
	
	widthLeft =  parseFloat(widthLeft.replace("%", ""));
	widthCenter =  parseFloat(widthCenter.replace("%", ""));
	
	if(direction=="left")
	{
		widthLeft = widthLeft - moveSpeed;
		widthCenter = widthCenter - moveSpeed;
		var widthRight = 100 - widthLeft - widthCenter;
		
		if( widthLeft > 0)
		{
			objContainerLeft.style.width = widthLeft + "%";
			objContainerCenter.style.width = widthCenter + "%";
			document.getElementById("divContainerRight").style.width = widthRight + "%";
			
			setTimeout('toggleContainerProps("left")',10);
		}
		else
		{
			//Expand Details if not visible:
			if(document.getElementById("divDetails").style.display=="none")
			{
				loadingDetails('divDetails');
				if(document.getElementById("divDetailsContent").innerHTML=="&nbsp;")
				{
					setMyiFrameSecond('display.php?showUsersFirst=1');
				}
			}
		}
	}
	else
	{
		objContainerLeft.style.width = iniContainerLeft;
		objContainerCenter.style.width = iniContainerCenter;
		objContainerRight.style.width = iniContainerRight;	
		
		containerIsCenter = 1;
	}

}
