//mod function a mod b
function mod(a,b) {
	return Math.round(a - (Math.floor(a/b)*b));
}

function highlight(row, color)
{
    //for simple one-color table
    if(color != 1 && color != 0)
    {
       row.className = color;
       if(row.className == 'highlight')
       {
            //show question mark
            row.getElementsByTagName('td')[0].style.backgroundImage = 'url(/spportal/img-spportal/icons/question.gif)';
            row.getElementsByTagName('td')[0].style.backgroundPosition = '2px center';
            row.getElementsByTagName('td')[0].style.backgroundRepeat = 'no-repeat';
       }
       else
       {
            row.getElementsByTagName('td')[0].style.backgroundImage = '';
            row.getElementsByTagName('td')[0].style.backgroundPosition = '';
            row.getElementsByTagName('td')[0].style.backgroundRepeat = '';
       }
    }
    //for multicolored table highlight
    else if(color == 1)
    {
        var cells = row.getElementsByTagName('td');
        for(var i=0; i<cells.length; ++i)
        {
            if(i == 0)
            {
                cells[i].className = 'highlight-left';
            }
            else
            {
                cells[i].className = 'highlight-cell';
            }
        }
    }
    //for multicolored table unhighlight
    else {
        var cells = row.getElementsByTagName('td');
        if(row.className == 'white')
        {
            for(var i=0; i<cells.length; ++i)
            {
                if(i == 0)
                {
                    cells[i].className = 'border-left';
                }
                else
                {
                    cells[i].className = 'border-cell';
                }
            }
        }
        else
        {
            for(var i=0; i<cells.length; ++i)
            {
                if(i == 0)
                {
                    cells[i].className = 'green-left';
                }
                //blue column
                else if(mod(i,2) != 0)
                {
                    cells[i].className = 'blue-cell';
                }
                //green column
                else
                {
                    cells[i].className = 'green-cell';
                }                
            }            
        }
    }
}
function collapse(id, img)
{    
    if($('#'+id).css('display') != 'none')
    {
        $('#'+id).hide(300);
        img.getElementsByTagName('img')[0].src = '/spportal/img-spportal/icons/expand.gif';
    }
    else
    {
        $('#'+id).show(300);
        //$('#'+id).show(500);
        img.getElementsByTagName('img')[0].src = '/spportal/img-spportal/icons/collapse.gif';
    }
}


//functions for onclick tooltip window
var x,y, timer;

function setMouseCoords(e) {
    if(document.all) {
        x = window.event.clientX;
        y = window.event.clientY;
    } else {
        x = e.pageX;
        y = e.pageY;
    }
}            			

document.onmousemove = setMouseCoords;
var x,y, timer;
var absX;
var absY;

function findPosition(obj) {
    absX = 0;
    absY = 0;
    while (obj.offsetParent) {
        //don't include the auto margin content div        
        if(obj.id != 'content')
        {
            absX += obj.offsetLeft;
        }
        absY += obj.offsetTop;
        obj = obj.offsetParent;
    }
}

function popup(element,tag,xOffset)
{
    clearInterval(timer);
    findPosition(element);

    //compensate height for products nav pages
    if(document.getElementById('products-nav') != null && document.getElementById('products-nav').style.display == 'block')
    {
        document.getElementById("tooltip").style.top = (absY-120) + "px";
    }
    
     if(document.getElementById('profile_version2') != null && document.getElementById('profile_version2').style.display == 'block')
      {
        document.getElementById("tooltip").style.top = (absY-91) + "px";        
      }
      
    else
    {
        document.getElementById("tooltip").style.top = (absY-100) + "px";
    }
        
    document.getElementById("tooltip").style.left = (absX+xOffset) + "px";
    document.getElementById("tooltext").innerHTML = document.getElementById(tag).innerHTML;
    
    //IE
    if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
    {
        document.getElementById("tooltip").style.filter='alpha(style=0,opacity=0)';
    }
    //Firefox
    else
    {
        document.getElementById("tooltip").style.MozOpacity = 0;
    }
    
    document.getElementById('tooltip').style.display = 'block'
    
    //make the tooltip scrollable
    if(tag == 'ppcstatus' || tag == 'ppcsearchengines')
    {        
        document.getElementById('tooltip').style.height = '150px';
        document.getElementById('tooltip').style.width = '240px';        
        document.getElementById('tooltip').style.overflow = 'scroll';        
    }
    else
    {           
        document.getElementById('tooltip').style.height = 'auto';
    }
    
    fadeIn(0);
}
function fadeIn(_opacity)
{
    clearInterval(timer);
    
    //IE
    if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
    {
        if(_opacity < 100)
        {
            _opacity = _opacity + 10;
            document.getElementById("tooltip").style.filter='alpha(style=0,opacity='+_opacity+')';   
            timer = setTimeout("fadeIn("+_opacity+")", 50);                     
        }
    }
    //Firefox
    else
    {
        if(_opacity < 0.99)
        {
            _opacity = _opacity + 0.11;
            document.getElementById("tooltip").style.MozOpacity = _opacity;
            timer = setTimeout("fadeIn("+_opacity+")", 50);            
        }
    }                
}
function hideToolTip()
{
    clearInterval(timer);
    //document.getElementById('tooltip').style.display = 'none';

    //IE
    if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
    {
       fadeOut(100);
    }
    //Firefox
    else
    {
        fadeOut(1);
    }								
}
function fadeOut(_opacity)
{   
    clearInterval(timer);             
    if(_opacity > 0)
    {					
        //IE
        if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
        {
            _opacity = _opacity - 10;      
            document.getElementById("tooltip").style.filter='alpha(style=0,opacity='+_opacity+')';
        }
        //Firefox
        else
        {
            _opacity = _opacity - 0.1;
            document.getElementById("tooltip").style.MozOpacity = _opacity;
        }
        
        timer = setTimeout("fadeOut("+_opacity+")", 50);
    }	
    else
    {
        document.getElementById('tooltip').style.display = 'none';
    }
}


//function to display the next image in the animation sequence
function Switch() {                              
    //IE
    if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
    {
       imgFadeOut(100);
    }
    //Firefox
    else
    {
        imgFadeOut(1);
    }		
                  
    imgNumber++;
   //if we've reached the last image, start over form the first image
   if(imgNumber >= totalimgNumber) 
    imgNumber = 0;                        
}

//function to start the animation, calls the switch() every 'delay' microseconds
function animate() {
    Switch();            
}


function imgFadeIn(_opacity)
{         
    var flag = true;   
    //IE
    if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
    {
        if(_opacity < 99)
        {
            _opacity = _opacity + 3;
            document.getElementById("animatedimage").style.filter='alpha(style=0,opacity='+_opacity+')';                        
            setTimeout("imgFadeIn("+_opacity+")", 10);
            flag = false;
        }                
    }
    //Firefox
    else
    {
        if(_opacity < 0.96)
        {
            _opacity = _opacity + 0.03;
            document.getElementById("animatedimage").style.MozOpacity = _opacity;
            setTimeout("imgFadeIn("+_opacity+")", 10);                    
            flag = false;
        }                
    }   
    if(flag == true)                             
    {
        setTimeout( "Switch();", delay);
    }
}
function imgFadeOut(_opacity)
{                
    if(_opacity > 0)
    {					
        //IE
        if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
        {
            _opacity = _opacity - 3;      
            document.getElementById("animatedimage").style.filter='alpha(style=0,opacity='+_opacity+')';
        }
        //Firefox
        else
        {
            _opacity = _opacity - 0.03;
            document.getElementById("animatedimage").style.MozOpacity = _opacity;
        }
        
        setTimeout("imgFadeOut("+_opacity+")", 10);
    }	
    else
    {
        document.getElementById("animatedimage").src = anim[imgNumber].src;
        setTimeout("imgFadeIn("+_opacity+")", 100);
    }
}

function openWindow(loc) {         
    if(typeof(popWin) != "undefined" && popWin &&!popWin.closed)               
    {
        popWin.close();
    }
    
    if(loc == 1)
    {
        popWin = window.open('/spportal/jsp/popups/websites/packagewizard/start.jsp?flag=1','packageWindow','width=500, height=420,toolbar=0,scrollbars=0,status=0');            
        popWin.resizeTo(510,450);
    }
    else if(loc == 2)
    {
        popWin = window.open('/spportal/jsp/popups/websites/websitetour/intro.jsp?flag=1','packageWindow','width=670, height=550,toolbar=0,scrollbars=0,status=0');            
        popWin.resizeTo(680,580);
    }
    else if(loc == 3)
    {
        popWin = window.open('/spportal/jsp/popups/websites/websiteos/intro.jsp?flag=1','packageWindow','width=670, height=550,toolbar=0,scrollbars=0,status=0');            
        popWin.resizeTo(680,580);
    }
    initPopUpBlockerTimer();
    
}  

function redirectWindow(loc, flag)
{        
    var pageLabel;
    var type;
    var product;
    var url;
         
    url = '/spportal';        
    
    
    if(loc < 7)
    {
        //product pages
        pageLabel = '/websitepackage.do?';
        if(loc == 1)
        {
            type = 'Hosting';
            product = 'Package1';
        }
        else if(loc == 2)
        {
            type = 'Hosting';
            product = 'Package2';
        }
        else if(loc == 3)
        {
            type = 'Hosting';
            product = 'Package3';
        }
        else if(loc == 4)
        {
            type = 'eCommerce';
            product = 'Package1';
        }
        else if(loc == 5)
        {
            type = 'eCommerce';
            product = 'Package2';
        }
        else if(loc == 6)
        {
            type = 'eCommerce';
            product = 'Package3';
        }
        
        url += pageLabel + '&type='+type+'&product='+product;
    }
    else
    {
        //comparison pages
        pageLabel = '/comparetype.do?';
        if(loc == 7)
        {
            pageLabel += 'type=Hosting';            
        }
        else if(loc == 8)
        {
            pageLabel += 'type=eCommerce';
        }
        
        url += pageLabel;
    }                
    
    if(window.opener != null && typeof(window.opener) != "undefined" && !window.opener.closed)
    {               
        window.opener.focus();
        window.opener.location.href = url;                
    }
    else
    {
        popWin = window.open(url);         
    }
}

// SEO Javascript functions

// email domain selection.jsp

function hasEmailWebsite(input)
        {
            document.websiteForm.transferDomain[1].checked = true;
            if(input.value == 'y')
            {
                document.getElementById('websiteYes').style.display = 'block';
                document.getElementById('websiteNo').style.display = 'none';                
            }
            else
            {
                document.getElementById('websiteYes').style.display = 'none';
                document.getElementById('terms').style.display = 'none';                
                document.getElementById('websiteNo').style.display = 'block';
            }
            document.getElementById('continue').style.display = 'block';
            
        }
        
// domain selection.jsp

function hasWebsite(input)
        {
            document.websiteForm.transferDomain[1].checked = true;
            if(input.value == 'y')
            {
                document.getElementById('websiteYes').style.display = 'block';
                document.getElementById('websiteNo').style.display = 'none';                
            }
            else
            {
                document.getElementById('websiteYes').style.display = 'none';
                document.getElementById('terms').style.display = 'none';                
                document.getElementById('websiteNo').style.display = 'block';
            }
            document.getElementById('continue').style.display = 'block';
            
        }
        

 function toTransfer(input)
        {
            if(input.value == 'y')
            {
                document.getElementById('terms').style.display = 'block';
            }
            else
            {
                document.getElementById('terms').style.display = 'none';
            }
        }


function popupAbs(element,tag,xOffset,yOffset)
{
    clearInterval(timer);    
    
    document.getElementById("tooltip").style.top = yOffset + "px";    
    document.getElementById("tooltip").style.left = xOffset + "px";
    document.getElementById("tooltext").innerHTML = document.getElementById(tag).innerHTML;
    
    //IE
    if(navigator.userAgent.indexOf( "MSIE" ) >= 0)
    {
        document.getElementById("tooltip").style.filter='alpha(style=0,opacity=0)';
    }
    //Firefox
    else
    {
        document.getElementById("tooltip").style.MozOpacity = 0;
    }
    
    document.getElementById('tooltip').style.display = 'block'
    
    //make the tooltip scrollable
    if(tag == 'ppcstatus' || tag == 'ppcsearchengines')
    {        
        document.getElementById('tooltip').style.height = '150px';
    }
    else
    {        
        document.getElementById('tooltip').style.height = 'auto';
    }
    
    fadeIn(0);
}        

//validation on website domain selection page
function checkInput()
{
    var flag = false;
    
    if (document.getElementById('terms').style.display == 'block' && document.websiteForm.terms.checked == false)
    {
        alert('Please check the "I agree" box to continue.');
        return false;
    }    
    if(document.getElementById('websiteYes').style.display == 'block' && document.getElementById('existingAddress').value != '')
        flag = true;
    
    if(document.getElementById('websiteNo').style.display == 'block')
    {
        if(document.getElementById('newAddress').value != '')
            flag = true;
    }
    if(flag == false)
    {
        alert('Please choose a domain name to continue.');
        flag = false;
    }
    return flag;
}

function createVideoPopup() {
   popWin = window.open("/spportal/jsp/popups/video/createvideo1.jsp","create_your_video","width=382,height=350,toolbar=0,scrollbars=0,status=0");                            
}
function pPage2_highlight(this_tr,flag)
{
	if(flag==0)
	{
		$(this_tr).addClass('highlighted-row');
	}
	else
		$(this_tr).removeClass('highlighted-row');
}  
function pPage2_togglecat(id)
{
	if($('#'+id).css('display') != 'none')
		$('#'+id).fadeOut(300);
	else
		$('#'+id).fadeIn(300);
}
