﻿
var timerRunning = 0;
var heroTimeout = null;


function show(id) {document.getElementById(id).style.display = 'block';}
function hide(id) {document.getElementById(id).style.display = 'none';}

function applyClass(id,c) {
	var el = document.getElementById(id);
	el.className = c;
}

function toggleClass(id,btn) {
	var el = document.getElementById(id);
	if (el.style.display != 'none') {hide(id);} else {show(id);}
	
	var t = document.getElementById(btn);
	switch (t.className) {
		case 'min': t.className = 'max'; break;
		case 'max': t.className = 'min'; break;
	}
}

function toggleSet(id,num){	
	for (i = 1; i <= num; i++) {
		var slide= 'slide' + i;
		var el = document.getElementById(slide);
		el.style.display = 'none';
	}	
	var sel = document.getElementById(id);
	sel.style.display = 'block';
}

function slide(dir,num,show,pre) {
	var lastVisible = 0;
	for (i = 1; i <= num; i++) {
		var slide = pre + i;
		var display = document.getElementById(slide).style.display;
		
		if (display == 'block') {
			lastVisible = i;
		}
		display = 'none';
	}
	
	var firstVisible = lastVisible - show + 1;
	var lastEl = pre + lastVisible;
	var firstEl = pre + firstVisible;

	var prev = lastVisible - show;
	var prevEl = pre + prev;	
	var prevBtn = pre + 'Prev';
	var next = lastVisible + 1;
	var nextEl = pre + next;
	var nextBtn = pre + 'Next';

	switch (dir) {
		case 'prev':
			if (prev >= 1) {
				document.getElementById(prevEl).style.display = 'block';
				document.getElementById(lastEl).style.display = 'none';
			} 
			if (prev <= 1) {
				document.getElementById(prevBtn).className = 'off';
			}	
			document.getElementById(nextBtn).className = 'on';
			break;
		case 'next': 
			if (next <= num) {
				document.getElementById(nextEl).style.display = 'block';
				document.getElementById(firstEl).style.display = 'none';
			} 
			if (next > num) {
				document.getElementById(nextBtn).className = 'off';
			}
			document.getElementById(prevBtn).className = 'on';
			break;
	}
	if (prev > 1) {
		document.getElementById(prevBtn).className = 'on';
	}		
	if (next < num) {
		document.getElementById(nextBtn).className = 'on';
	}		
}

function tab(id,num){	
	for (i = 1; i <= num; i++) {
		var tab = 'tab' + i;
		var panel = 'tabPanel' + i;
		
		var el = document.getElementById(panel);
		var t = document.getElementById(tab);

		if (i == id) {
			el.style.display = 'block';
			t.className = 'sel';
		} else {
			el.style.display = 'none';
			t.className = 'nsel';
		}
	}		
}

function placeOverlay() {
	var overlay = document.getElementById('overlay');
	var psType = document.getElementById('ps-type');
	var psMain = document.getElementById('psMain');
	var zoneB = document.getElementById('ps-zoneB');
	var hero = document.getElementById('hero');
	var iconLayer = document.getElementById('ctl00_PlaceHolderMain_icon');

	var iconClass = iconLayer.className;
	var layoutClass = psType.className;
	var leftpx = 0; var toppx = 0;
	

	if (overlay) {
		if (iconClass.indexOf("none") < 0) {

			if (hero) {
				var heroLeft = hero.offsetLeft;
				var heroTop = hero.offsetTop;
				var heroWidth = hero.offsetWidth;
				if (heroWidth < 600) {
					leftpx = 340; 
					toppx = 55;
				}
				overlay.style.height = '240px';
				overlay.style.width = heroWidth + 'px';
				overlay.style.left = heroLeft + leftpx;
				overlay.style.top = heroTop + toppx;
				overlay.style.display = 'block';
			} else {
			
				if (layoutClass.indexOf("detail") >= 0) {
					toppx = 90;
					var zoneBLeft = zoneB.offsetLeft;
					var zoneBTop = zoneB.offsetTop;
					var zoneBWidth = zoneB.offsetWidth;
					
					//overlay.style.height = '275px';
					//overlay.style.width = zoneBWidth + 'px';
					overlay.style.left = zoneBLeft + leftpx;
					overlay.style.top = zoneBTop - toppx;
					overlay.style.display = 'block';
				}
			}
		}
	}
}

function highlightTab(sel) {
	var parent = document.getElementById('psTabs');
	var children = parent.getElementsByTagName('div');
	var i;
	if (children.length > 0) {
		for (i=0; i < children.length; i++) {
			var childClass = children[i].className;
			children[i].className = 'unsel';
		}
		if (document.getElementById(sel)) {
			document.getElementById(sel).className = 'sel';
		}
	}
}


function displayTabbedContent(parent,el,sel) {
	var parent = document.getElementById(parent);
	var children = parent.getElementsByTagName(el);
	var i;
	if (children.length > 0) {
		for (i=0; i < children.length; i++) {
			var childClass = children[i].className;
			if(childClass.indexOf(sel) != -1){
				children[i].style.display = 'block';
			} else {
				children[i].style.display = 'none';
			}
		}
	}
}

function vTabs(sel) {
	highlightTab(sel);
	if (document.getElementById('tabbedContent')) {displayTabbedContent('tabbedContent','div',sel);}
	if (document.getElementById('tabbedM1')) {displayTabbedContent('tabbedM1','div',sel);}
	if (document.getElementById('tabbedM3')) {displayTabbedContent('tabbedM3','div',sel);}
}

function highlightHero(sel) {
	if (document.getElementById('xHero')) {
		if(heroTimeout) {
			clearTimeout(heroTimeout);
			timerRunning = 0;
		}

		var parent = document.getElementById('xHero');
		var children = parent.getElementsByTagName('div');
		
		var xHeroItemID = 'xHeroItem' + sel;
		var xHeroItem = document.getElementById(xHeroItemID);
		var xHeroThID = 'xHeroTh' + sel;
		var xHeroTh = document.getElementById(xHeroThID);
			
		var i;
		if (children.length > 0) {
			for (i=0; i < children.length; i++) {
				var childClass = children[i].className;
				if (childClass.indexOf('xHeroTh') != -1) {
					if (childClass.indexOf(' sel') != -1) {
						children[i].className = childClass.replace(" sel", " unsel");
					}
				} else if (childClass.indexOf('xHeroItem') != -1) {
					children[i].style.display = 'none';
				}
			}
			xHeroItem.style.display = 'block';
			var selClass = xHeroTh.className;
			if (selClass.indexOf(' unsel') != -1) {
				xHeroTh.className = selClass.replace(" unsel", " sel");
			}
		}
	}
}

function rotateHero() {
	if (document.getElementById('xHero')) {
		var parent = document.getElementById('xHero');
		var children = parent.getElementsByTagName('div');
		var numPanels = children.length / 3;
		
		var current;
		var currentID;
		var i;
		var next;
		
		if (children.length > 0) {
			for (i=0; i < children.length; i++) {
				var childClass = children[i].className;
				if (childClass.indexOf('xHeroTh') != -1) {
					if (childClass.indexOf(' sel') != -1) {
						currentID = children[i].id;
						current = currentID.substring(currentID.length,currentID.length - 1);
						break;
					}
				}
			}
		}
		
		if (current) {
			next = Number(current) + 1;
			if (next > numPanels) { next = 1; }
			highlightHero(next);
		}
	}
}

function heroTimer(sel) {
	if(heroTimeout) {
		clearTimeout(heroTimeout);
		timerRunning = 0;
	}

	if (document.getElementById('xHero')) {
		highlightHero(sel);
		
		var parent = document.getElementById('xHero');
		var children = parent.getElementsByTagName('div');
		
		var cycle = children.length + 1;
		var t = 0;


		for (i=0; i < cycle; i++) {
			t = t + 4500;
			heroTimeout = setTimeout(rotateHero,t);
			timerRunning = 1;
		}
	}
}


function hero(sel) {
	highlightHero(sel);
}

function loadFunctions() {
	placeOverlay();
	heroTimer('1');
}

_spBodyOnLoadFunctionNames.push("loadFunctions");















