var xmlDoc = null;

function SortBanner()
{
    
    var imgctrl = document.getElementById('hpimgctrl');
    var lrgImg = document.getElementById('largeFeature');
    var lrgLink = document.getElementById('largeFeatureLink');
    var lrgH2 = document.getElementById('largeFeatureH2');
    var tmpInt;
    var curBoxNo;



    if(document.images)
    {

        lrgImg.src = GetInfBoxImg(imgctrl.value);
        lrgImg.alt = GetInfBoxTitle(imgctrl.value);
        lrgLink.href = GetInfBoxURL(imgctrl.value);
        lrgH2.innerHTML = GetInfBoxTitle(imgctrl.value);
    }
    
    


    //Increment the sequence number for the current box
    tmpInt = parseInt( imgctrl.value ) + 1; 

    if(tmpInt > GetNoSequences( ) )
       tmpInt = 1;


    imgctrl.value = tmpInt; 
    PreloadNextImage( imgctrl.value ); 
}

function moveNext()
{
    SortBanner();
    self.clearInterval();
}

function movePrev()
{
    var imgctrl = document.getElementById('hpimgctrl');
    var tmp = GetNoSequences( );

    tmpInt = parseInt( imgctrl.value ) - 2; 
    if(tmpInt < 1 )
       tmpInt = tmp + tmpInt;

    imgctrl.value = tmpInt; 
    SortBanner();
    self.clearInterval();


}

function PreloadNextImage(sqnno)
{
    var node = GetCorrectSequenceNode(sqnno);
    var nodeVal = "";
    if(node!=null)
    {
        var imgNode = node.getElementsByTagName("img")[0];
        if(document.images)
        {
            img1 = new Image();
            img1.src = imgNode.childNodes[0].nodeValue;
        }
    }
    return nodeVal;
}

function GetInfBoxImg(sqnno)
{
    var node = GetCorrectSequenceNode(sqnno);
    var nodeVal = "";
    if(node!=null)
    {
        var imgNode = node.getElementsByTagName("img")[0];
        nodeVal = imgNode.childNodes[0].nodeValue;
    }
    return nodeVal;
}

function GetInfBoxTitle(sqnno)
{
    var node = GetCorrectSequenceNode(sqnno);
    var nodeVal = "";
    if(node!=null)
    {
        var imgNode = node.getElementsByTagName("title")[0];
        if(imgNode.childNodes.length > 0)
			nodeVal = imgNode.childNodes[0].nodeValue;
    }
    return nodeVal;
}

function GetInfBoxURL(sqnno)
{
    var node = GetCorrectSequenceNode(sqnno);
    var nodeVal = "#";
    if(node!=null)
    {
        var imgNode = node.getElementsByTagName("url")[0];
        if(imgNode.childNodes.length > 0)
	        nodeVal = imgNode.childNodes[0].nodeValue;
    }
    return nodeVal;
}

function GetInfBoxSummary(sqnno)
{
    var node = GetCorrectSequenceNode(sqnno);
    var nodeVal = "";
    if(node!=null)
    {
        var imgNode = node.getElementsByTagName("title")[0];
        if(imgNode.childNodes.length > 0)
	        nodeVal = imgNode.childNodes[0].nodeValue;
    }
    return nodeVal;
}

function GetNoSequences()
{
    if(xmlDoc==null)
        loadXMLDoc();
    return xmlDoc.getElementsByTagName("infboxes")[0].childNodes.length;
}

function GetCorrectSequenceNode(sqnno)
{
    var seqnode = null;
    if(xmlDoc==null)
        loadXMLDoc();
    
    seqnode = xmlDoc.getElementsByTagName("sequence" + sqnno)[0];
    return seqnode;    
}


function loadXMLDoc()
{
    var imgXML = document.getElementById('hpimgxml');

    // code for IE
    if (window.ActiveXObject)
    {
        xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.loadXML(imgXML.value);

    }
        // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation && document.implementation.createDocument)
    {
        //xmlDoc=document.implementation.createDocument("","",null);
        var parser=new DOMParser();
		xmlDoc=parser.parseFromString(imgXML.value,"text/xml");
    }

    return(xmlDoc);
}

