//Blog Tab ---------------------------------------------------

function hideAllTabs() {
	allTabs = document.getElementById('blogArea');
	numTabs = allTabs.childNodes.length;
	for(i=0; i<numTabs; i++) {
		if (allTabs.childNodes[i].className) {
			if (allTabs.childNodes[i].className.indexOf('shown')) {
				allTabs.childNodes[i].className = "blogContent hidden";
			}
		}
	}
	
	allTabs = document.getElementById('tabBar');
	numTabs = allTabs.childNodes.length;
	for(i=0; i<numTabs; i++) {
		if (allTabs.childNodes[i].className) {
			if (allTabs.childNodes[i].className.indexOf('tabOn')) {
				allTabs.childNodes[i].className = "blogTab blogTabOff";
			}
		}
	}
}

function showTab(thisTab) {
	thisTab = document.getElementById(thisTab);
	hideAllTabs();
	thisTab.className = "blogContent shown";
	
	oldTab = thisTab.id;
	newTab = 'tab'+oldTab.substring(0,1).toUpperCase()+oldTab.substring(1, oldTab.length);
	thisTab = document.getElementById(newTab);
	thisTab.className = "blogTab blogTabOn";
}

//Combined Functions ---------------------------------------------
var leftEnd; var rightEnd; var oThis; var sThis; var status; var slideTick;

function panelSlideLength(start, end, current) {
	delta 	= end - start;
	high 	= 4;
	low 	= 1.8;
	scalar	= high-low;
	power	= 3;
	if (start > end) {
		x = high - scalar*(end-current)/delta;
		
	}
	else {
		x = low + scalar*(current-start)/delta;
		speed = delta/(Math.pow(x,power));
	}
	speed = delta/(Math.pow(x,power));
	return speed;
}

function choosePanel(thisPanel) {
	switch(thisPanel.id) {
	case 'infoTab': leftEnd = oInfo.origLeft; rightEnd = oInfo.endPoint; oThis = oInfo; sThis = sInfo; status = oInfo.status; break;
	case 'rightTab1': leftEnd = oCart.origLeft; rightEnd = oCart.endPoint; oThis = oCart; sThis = sCart; status = oCart.status; break;
	case 'leftTab1': leftEnd = oBlog.endPoint; rightEnd = oBlog.origLeft; oThis = oBlog; sThis = sBlog; status = oBlog.status; break;
	default: alert('Unknown Sliding Panel ('+thisPanel.id+')'); clearInterval(panelInterval); break;
	}
	return;
}

function panelSlideRight() {
	current = sThis.getLeft();
	if (current >= rightEnd) {
		clearInterval(panelInterval);
		sThis.setLeft(rightEnd);
		oThis.status = 1;
	}
	else {
		delta = panelSlideLength(leftEnd, rightEnd, current);
		sThis.setLeft(current + delta);
	}
}

function panelSlideLeft() {
	current = sThis.getLeft();
	if (current <= leftEnd) {
		clearInterval(panelInterval);
		sThis.setLeft(leftEnd);
		oThis.status = 0;
	}
	else {
		delta = panelSlideLength(rightEnd, leftEnd, current);
		sThis.setLeft(current + delta);
	}
}

function panelLeft() {panelInterval = setInterval(panelSlideLeft, 30);}
function panelRight() {panelInterval = setInterval(panelSlideRight, 30);}

function switchPanelPos(thisPanel) {
	allPanelsRest();
	choosePanel(thisPanel);
	if (oThis.status == 0) {panelRight(); oThis.status = 'right';}
	else {panelLeft(); oThis.status = 'left';}
}

function allPanelsRest() {
	if (oInfo) {
		if (oInfo.status == 'left') {clearInterval(panelInterval); sInfo.setLeft(oInfo.origLeft); oInfo.status = 0;}
		else if (oInfo.status == 'right') {clearInterval(panelInterval); sInfo.setLeft(oInfo.endPoint); oInfo.status = 1;}
	}
	
	if (oCart) {
		if (oCart.status == 'left') {clearInterval(panelInterval); sCart.setLeft(oCart.origLeft); oCart.status = 0;}
		else if (oCart.status == 'right') {clearInterval(panelInterval); sCart.setLeft(oCart.endPoint); oCart.status = 1;}
	}
	
	if (oBlog) {
		if (oBlog.status == 'left') {clearInterval(panelInterval); sBlog.setLeft(oBlog.endPoint); oBlog.status = 0;}
		else if (oBlog.status == 'right') {clearInterval(panelInterval); sBlog.setLeft(oBlog.origLeft); oBlog.status = 1;}
	}
}

