﻿// JScript File

var sTabIndexID;
var ctrlInputHiddenTabs, ctrlInputVisibleTabs;

var Timer;
var iTabPosition = 0;
var iTabWidth = 0;
var iTabOffSet = 0;
var iScrollStep = 3;
var bScrollInProgress = false;
var bEndScroll = false;

function HideTab(sTabID)
{
    document.getElementById(ctrlInputHiddenTabs).value += sTabID + ',';
    document.getElementById(sTabIndexID + '_' + sTabID).style.display = 'none';
}

function ShowTab(sTabID)
{
    document.getElementById(ctrlInputVisibleTabs).value += sTabID + ',';
    document.getElementById(sTabIndexID + '_' + sTabID).style.display = '';
}

function CancelScroll()
{
    bEndScroll = true;
}

function Scroll(bScrollLeft)
{    
    iTabOffSet -= iScrollStep;

	if (iTabOffSet <= 0)
	{
	    if (bEndScroll == true)
	    {
	        if (bScrollLeft == true)
	        {
	            document.getElementById(sTabIndexID + '_tabholder').scrollLeft -= (iScrollStep + iTabOffSet);
	        }
	        else
	        {
	            document.getElementById(sTabIndexID + '_tabholder').scrollLeft += (iScrollStep + iTabOffSet);
	        }

            bScrollInProgress = false;
	        bEndScroll = true;
		    clearInterval(Timer);
		    iTabWidth = 0;
		    iTabOffSet = 0;
		    iScrollStep = 3;
	    }
	    else
	    {
	        iTabOffSet += iScrollStep;

	        if (bScrollLeft == true)
	        {
	            ScrollLeft();
	        }
	        else
	        {
	            ScrollRight();
	        }
	        iScrollStep++;
	    }
	}
	else
	{
	    if (bScrollLeft == true)
        {
	        document.getElementById(sTabIndexID + '_tabholder').scrollLeft -= iScrollStep;
	    }
	    else
	    {
	        document.getElementById(sTabIndexID + '_tabholder').scrollLeft += iScrollStep;
	    }
	}
}

function ScrollLeft()
{           
    iTabPosition--;
    
    if (iTabPosition < 0)
    {
        iTabPosition = 0;
        bScrollInProgress = false;
	    bEndScroll = true;
    }
    else
    {
        while (document.getElementById(sTabIndexID + '_tabs').childNodes[iTabPosition].offsetWidth == null)
	    {
	        iTabPosition--;
	    }
	    iTabWidth = document.getElementById(sTabIndexID + '_tabs').childNodes[iTabPosition].offsetWidth;
	    iTabOffSet += iTabWidth;	    
	    
	    if (bScrollInProgress == false)
	    {
	        Timer = setInterval("Scroll(true);", 5);
	        bScrollInProgress = true;
	        bEndScroll = false;
	    }
	}
}

function ScrollRight()
{       
    if (iTabPosition == document.getElementById(sTabIndexID + '_tabs').childNodes.length -1)
    {
        bScrollInProgress = false;
	    bEndScroll = true;
    }
	else
	{   	    
        while (document.getElementById(sTabIndexID + '_tabs').childNodes[iTabPosition].offsetWidth == null)
	    {
	        iTabPosition++;
	    }

	    iTabWidth = document.getElementById(sTabIndexID + '_tabs').childNodes[iTabPosition].offsetWidth
	    iTabOffSet += iTabWidth;
	    iTabPosition++;
	    
	    if (bScrollInProgress == false)
	    {
	        Timer = setInterval("Scroll(false);", 5);
	        bScrollInProgress = true;
	        bEndScroll = false;
	    }
	}
}
