/**
 * @package     Quookershop
 * @author      4worx <info@4worx.com>
 * @copyright   2009, 4worx
 * @version     $Id: scripts.js 4256 2009-09-25 15:17:26Z sdvalk $
 */

dojo.addOnLoad(function()
{
	var tab = dojo.byId('contact-alternateaddress');
	if (tab)
	{
		if (tab.checked)
		{
			toggleTab(dojo.byId('delivery'));
		}
	}
	
	var form = dojo.query('form');
	if (form)
	{
		var radios = dojo.query('input[name="type"]');
		var activeElement = null;
		for (i = 0; i < radios.length; i++)
		{
			if (radios[i].checked)
			{
				var activeElement = radios[i].id;
				var labels = dojo.query('label');
				for (i = 0; i < labels.length; i++)
				{
					if (labels[i].getAttribute('for') == activeElement)
					{
						toggleActive(labels[i]);
					}
					else if (labels[i].getAttribute('htmlFor') == activeElement)
					{
						toggleActive(labels[i]);
					}
				}
			}
		}
	}
	if (dojo.byId('submitJS'))
	{
		dojo.byId('submitJS').href = 'javascript:formSubmit();';
	}

	if (dojo.byId('flashError')) 
	{
		var version = swfobject.getFlashPlayerVersion();
		if (!version || !version.major)
		{
			dojo.byId('flashError').style.display = 'block';
		}
	}
});

function nextDemo()
{
	var player = swfobject.getObjectById('player');
	player.style.visibility = 'hidden';
	player.sendEvent('next');
}

function getUpdate(type, pr1, pr2, pid)
{
	playerId = 'player';
	if (pid == playerId)
	{
		var player = swfobject.getObjectById(playerId);
		player.style.visibility = 'visible';
		
		if (type == 'time' && pr2 == 0 && pr1 != 0)
		{
			player.sendEvent('playpause');
		}		
	}
}

function formSubmit()
{
	var form = dojo.query('form');
	if (form)
	{
		form = form[0];
		form.submit();
	}
	return false;
}

function toggleActive(clickElm)
{
	var elms = dojo.query('label');
	var clickedElmId = clickElm.getAttribute('for');
	if (null == clickedElmId)
	{
		clickedElmId = clickElm.getAttribute('htmlFor');
	}
	
	for (i = 0; i < elms.length; i++)
	{
		var elm = elms[i];
		var elmClass = elm.className;
		var elmFor = elm.getAttribute('for');
		if (null == elmFor)
		{
			elmFor = elm.getAttribute('htmlFor');
		}
		if (elmClass)
		{
			if (elmClass == 'button' && elmFor == clickedElmId)
			{
				dojo.byId(clickedElmId).checked = true; // IE fix
				elm.className = 'button active';
			}
			else if (elmClass == 'button active' && elmFor == clickedElmId)
			{
				//This is the element that is active being clicked again
			}
			else if ('optional' == elmClass || 'required invalid' == elmClass)
			{
				//Is used for the order/installation, otherwise the label class is 'buttons'.
			}
			else
			{
				elm.className = 'button';
			}
		}
	}
}

function toggleTab(elementId)
{
	var elm = dojo.byId(elementId);
	var elmClass = elm.className;
	if (elmClass)
	{
		if (elmClass == 'hidden')
		{
			elm.className = 'show';
		}
		else
		{
			elm.className = 'hidden';
		}
	}
	else
	{
		elm.className = 'show';
	}
}

function toggleTank(label, image)
{
	swfobject.getObjectById('components').changeTank(image);

	toggleActive(label);
}

function toggleTap(label, image)
{
	swfobject.getObjectById('components').changeTap(image);
	
	toggleActive(label);
}

function submitPaymentForm()
{
	window.setTimeout(function() {
		dojo.byId('paymentForm').submit();
	}, 2000);
}

function highlightRow(link)
{
	var tr = link.parentNode.parentNode;
	var className = (tr.className == 'highlight') ? '' : 'highlight';
	tr.className = className;
}

var step = 1;
var timerUp = null;
var timerDown = null;

function scrollDivDown()
{
	var content = document.getElementById('scrollableContent');
	//console.log(content.scrollHeight + ": " + content.scrollTop);	
	
	clearTimer(timerDown);	
	content.scrollTop += step;
	timerDown = setTimeout(scrollDivDown, 10);
}

function scrollDivUp()
{
	var content = document.getElementById('scrollableContent');	
	//console.log(content.scrollHeight + ": " + content.scrollTop);	
	
	clearTimer(timerUp);
	content.scrollTop -= step;
	if (content.scrollTop != 0)
	{
		timerUp = setTimeout(scrollDivUp, 10);
	}
}

function clearTimer(timer)
{
	if (timer)
	{
		clearTimeout(timer);
	}
}
