var curEleIndex = 1;
var numElements = 0;
var curElement = "";
var isForm = false;

function initTabs(totalEle, element)
{
	numElements = totalEle;
	curElement = element;
	isForm = true;
}

function setNextTab()
{
	curEleIndex++;
	toggleTab(curEleIndex, numElements, curElement);
	validateFormNav();
}

function setPreviousTab()
{
	curEleIndex--;
	toggleTab(curEleIndex, numElements, curElement);
	validateFormNav();
}

function validateFormNav()
{
	if (curEleIndex == 1)
	{
		$("previous").style.display = "none";
		$("next").style.display = "";
		$("Registrate").style.display = "none";
	}
	else if (curEleIndex == numElements)
	{
		$("previous").style.display = "";
		$("next").style.display = "none";
		$("Registrate").style.display = "";
	}
	else
	{
		$("previous").style.display = "";
		$("next").style.display = "";
		$("Registrate").style.display = "none";
	}
}
/*-----------------------------------------------------------
    Toggles element's display value
    Input: any number of element id's
    Output: none 
    ---------------------------------------------------------*/

function toggleDisp() {
    for (var i=0;i<arguments.length;i++){
        var d = $(arguments[i]);
        if (d.style.display == 'none')
		{
            d.style.display = 'block';
			var h = (d.clientHeight > 200) ? d.clientHeight :  450;
			if (h == 450) h = (d.offsetHeight > 200) ? d.offsetHeight : h;
			//$('tab_content').style.height = h + 'px';
			if ($('home_mainimage'))
			{
				if ($('home_mainimage').parentNode.parentNode == d)
				{$('home_mainimage').Rewind();
				$('home_mainimage').Play();}	
			}
			
			//d.parentNode.style.height = d.clientHeight + 'px';
			//alert("setting tab_content height to "+h);
        } else {
            d.style.display = 'none';
		}
    }
}
/*-----------------------------------------------------------
    Toggles tabs - Closes any open tabs, and then opens current tab
    Input:     1.The number of the current tab
                    2.The number of tabs
                    3.(optional)The number of the tab to leave open
                    4.(optional)Pass in true or false whether or not to animate the open/close of the tabs
    Output: none 
    ---------------------------------------------------------*/
function toggleTab(num,numelems,element,elementHeader,opennum,animate) {
	if (element == null) element = "tabContent";
	if (elementHeader == null) elementHeader = "tabHeader";
	var targetElem = $(element+num);
	var eleStyle = targetElem.style.display;
    if ($(element+num).style.display == 'none'){
        for (var i=1;i<=numelems;i++){
            if ((opennum == null) || (opennum != i)){
                var temph = elementHeader+i;
                var h = $(temph);
                if (!h){
                    var h = $('current');
                    h.id = temph;
                }
                var tempc = element+i;
                var c = $(tempc);
                if(c.style.display != 'none'){
                    if (animate || typeof animate != 'undefined')
					{
                        Effect.toggle(tempc,'slide',{duration:0.5, queue:{scope:tempc, limit: 3},
						beforeSetup:function(effect) {
					        //the height gets set up on the Effect function call, make it use the height before the effect starts
					        effect.options.scaleMode.originalHeight=effect.element.getHeight();
					    }});
					}
                    else
					{
						toggleDisp(tempc);
					}
                        
                }

            }
        }
        var h = $(elementHeader+num);
        if (h)
            h.id = 'current';
        h.blur();
        var c = $(element+num);
        c.style.marginTop = '2px';
        if (animate || typeof animate != 'undefined'){
            Effect.toggle(element+num,'slide',{duration:0.5, queue:{scope:element+num, position:'end', limit: 3},
			beforeSetup:function(effect) {
		        //the height gets set up on the Effect function call, make it use the height before the effect starts
		        effect.options.scaleMode.originalHeight=effect.element.getHeight();
		    }});
        }
		else{
            toggleDisp(element+num);
        }
    }
	if (isForm)
	{
		curEleIndex = num;
		numElements = numelems;
		validateFormNav();
	}
}

function toggleTab2(num,numelems,opennum,animate) {
    if ($('tabContentB'+num).style.display == 'none'){
        for (var i=1;i<=numelems;i++){
            if ((opennum == null) || (opennum != i)){
                var temph = 'tabHeaderB'+i;
                var h = $(temph);
                if (!h){
                    var h = $('current');
                    h.id = temph;
                }
                var tempc = 'tabContentB'+i;
                var c = $(tempc);
                if(c.style.display != 'none'){
                    if (animate || typeof animate != 'undefined')
					{
                        Effect.toggle(tempc,'slide',{duration:0.5, 
							queue:{scope:tempc, limit: 3},
							beforeSetup:function(effect) {
						        //the height gets set up on the Effect function call, make it use the height before the effect starts
						        effect.options.scaleMode.originalHeight=tempc.getHeight();
						    }});
					}
               		else
					{
						toggleDisp(tempc);
					}
                }
            }
        }
        var h = $('tabHeaderB'+num);
        if (h)
            h.id = 'current';
        h.blur();
        var c = $('tabContentB'+num);
        c.style.marginTop = '2px';
        if (animate || typeof animate != 'undefined'){
            Effect.toggle('tabContentB'+num,'slide',{duration:0.5, queue:{scope:'tabContentB'+num, position:'end', limit: 3},
			beforeSetup:function(effect) {
		        //the height gets set up on the Effect function call, make it use the height before the effect starts
		        effect.options.scaleMode.originalHeight=effect.element.getHeight();
		    }});
        }else{
            toggleDisp('tabContentB'+num);
        }
    }
}
function findStretcher(formRef) {
	var container = formRef.parentNode.parentNode.parentNode;
	var num = parseInt(container.id.substring(container.id.length-1, container.id.length));
	var element = container.id.substring(0, container.id.length-1);
	var elements = $(container).adjacent('div.container');
	var numElements = elements.length + 1;
	curEleIndex = num;
	//toggleDisp(element+numElements);
	var h = $('current');
	h.id = "tabHeader"+numElements;
	toggleTab(curEleIndex, numElements, element);
	validateFormNav();
}