function getArticlesTab(dataSource, divID)
{
    var mySubjects;
    mySubjects = getSubjectsForCategories("subjectdimension");
    mySubjects += " " + getTitleForCategories("titleTerms");
    mySubjects += " " + getTitleForCategories("facetTerms");
    mySubjects = mySubjects.replace(/\n/g,"");
    mySubjects = mySubjects.replace(/undefined/g,"");
    dataSource = dataSource.replace(/subjectStr/,mySubjects);
    
    var XMLHttpRequestObject = false;

    if (window.XMLHttpRequest) 
    {
        XMLHttpRequestObject = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    {
        XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
    }

    if(XMLHttpRequestObject) 
    {
        var obj = document.getElementById(divID);

        obj.innerHTML += "<p><span class='progresstext'>Getting more sources...please be patient.</span>";
        obj.innerHTML += "<p><span class='progressbar'><img src='images/progressbar.gif'></span>";
        
        XMLHttpRequestObject.open("GET", dataSource);
        
        XMLHttpRequestObject.onreadystatechange = function()
        {
            if (XMLHttpRequestObject.readyState == 4 &&
                    XMLHttpRequestObject.status == 200) 
            {
                obj.innerHTML = XMLHttpRequestObject.responseText;

                new Effect.Highlight(obj, {startcolor: '#ffff99', endcolor: '#f5f5f5'});

                if (obj.innerHTML != null)
                {
                    swapRecordLayers("CatalogRecords", "swap");
                    var pos = obj.innerHTML.indexOf("\u001D");
                    var pos2 = obj.innerHTML.lastIndexOf("\u001D");
                    var posA = obj.innerHTML.indexOf("\u001E");
                    var posB = obj.innerHTML.lastIndexOf("\u001E");
                    var newDataSource = obj.innerHTML.substring(pos+1,pos2);
                    var clusterDataSource = obj.innerHTML.substring(posA+1,posB);

                    if (clusterDataSource.length > 0)
                        ShowMetaLibClusters(clusterDataSource, "MetaLibClusters");
                    if (newDataSource.length > 0)
                        ShowMetaLibRecords(newDataSource, "MetaLibRecords");
                }
            }
        }
        XMLHttpRequestObject.send(null);
    }
}

function getLibGuides(dataSource, divID)
{
    var XMLHttpRequestObject = false;

    if (window.XMLHttpRequest) 
    {
        XMLHttpRequestObject = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    {
        XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
    }

    if(XMLHttpRequestObject)
    {
    
        var obj = document.getElementById(divID);
        
        XMLHttpRequestObject.open("GET", dataSource);
        
        XMLHttpRequestObject.onreadystatechange = function()
        {
            if (XMLHttpRequestObject.readyState == 4 &&
                    XMLHttpRequestObject.status == 200) 
            {
                obj.innerHTML = XMLHttpRequestObject.responseText;
                new Effect.Highlight(obj, {startcolor: '#ffff99', endcolor: '#f5f5f5'});
            }
        }
        XMLHttpRequestObject.send(null);
    }

}
function getNoTermTab(dataSource, divID)
{
    var XMLHttpRequestObject = false;

    if (window.XMLHttpRequest) 
    {
        XMLHttpRequestObject = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    {
        XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
    }

    if(XMLHttpRequestObject) 
    {
        var obj = document.getElementById(divID);
        XMLHttpRequestObject.open("GET", dataSource);

        XMLHttpRequestObject.onreadystatechange = function()
        {
            if (XMLHttpRequestObject.readyState == 4 &&
                    XMLHttpRequestObject.status == 200) 
            {
                obj.innerHTML += XMLHttpRequestObject.responseText;
                new Effect.Highlight(obj, {startcolor: '#ffff99', endcolor: '#f5f5f5'});
            }
        }
        XMLHttpRequestObject.send(null);
    }
}

function getSubjectsForCategories(name)
{
    var terms = getElementsByName_iefix("a", name);
    var theTerm;
    var jString;
    for (i = terms.length - 1 ; i > -1 ; i--)
    {
        theTerm = terms[i].innerHTML;
        jString += theTerm + " ";
    }
    return jString;
}
function getTitleForCategories(theName)
{
    var terms = getElementsByName_iefix("span", theName);
    var theTerm;
    var jString;
    for (i = terms.length - 1 ; i > -1 ; i--)
    {
        theTerm = terms[i].innerHTML;
        jString += theTerm + " ";
    }
    return jString;
}
function ShowMetaLibClusters(dataSource, divID)
{
    var XMLHttpRequestObject = false;
    
    if (window.XMLHttpRequest) 
    {
        XMLHttpRequestObject = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    {
        XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
    }

    if(XMLHttpRequestObject) 
    {
        var obj = document.getElementById(divID);
        dataSource = dataSource.replace(/\&amp;/g,'&');
        XMLHttpRequestObject.open("GET", dataSource);
        obj.innerHTML = "<center><br /><img class='spinner1' src='images/spinner.gif'><br /><br /></center>";
        
        XMLHttpRequestObject.onreadystatechange = function()
        {
            if (XMLHttpRequestObject.readyState == 4 &&
                    XMLHttpRequestObject.status == 200) 
            {
                obj.innerHTML = XMLHttpRequestObject.responseText;
                swapRecordLayers("CatalogRecords", "swap");
            }
        }
        XMLHttpRequestObject.send(null);
    }
}

function ShowMetaLibRecords(dataSource, divID)
{
    var XMLHttpRequestObject = false;

    if (window.XMLHttpRequest) 
    {
        XMLHttpRequestObject = new XMLHttpRequest();
    } 
    else if (window.ActiveXObject) 
    {
        XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
    }

    if(XMLHttpRequestObject) 
    {
        var obj = document.getElementById(divID);
        dataSource = dataSource.replace(/\&amp;/g,'&');
        
        XMLHttpRequestObject.open("GET", dataSource);
        obj.innerHTML = "<center><br /><img class='spinner2' height='55px' src='images/spinner.gif'><br /><br /></center>";
        
        XMLHttpRequestObject.onreadystatechange = function()
        {
            if (XMLHttpRequestObject.readyState == 4 &&
                    XMLHttpRequestObject.status == 200) 
            {
                obj.innerHTML = XMLHttpRequestObject.responseText;
                swapRecordLayers("CatalogRecords", "swap");
            }
        }
        XMLHttpRequestObject.send(null);
    }
}

function swapRecordLayers(theName, theStyle)
{
    if (document.getElementById)
    {
        // this is the way the standards work
        //var style2 = document.getElementsByName(theName);
        var style2 = getElementsByName_iefix("tr",theName);
    }       
    else if (document.all)
    {
        // this is the way old msie versions work
        //var style2 = document.all[theName].style;
        var style2 = getElementsByName_iefix("tr",theName);
    }
    else if (document.layers)
    {   
        // this is the way nn4 works
        var style2 = document.layers[theName].style;
    }
    
    if (theStyle == "swap")
    {
        for(var e=0; e<style2.length; e++)
        {
            style2[e].style.display = "none";
        }
    }
}

function dimTheElement(element)
{
    new Effect.Opacity(element, 
            {duration:2, from:1.0, to:0.35});
}

function UndimTheElement(element)
{
    new Effect.Opacity(element, {duration:2, from:0.35, to:1.0});
}

function dimCatalogRecords(whichName, x)
{
    var myDiv = document.getElementById("mangobreadcrumb");
    myDiv.style.display = "none";

    var myDiv2 = document.getElementById("recordcount");
    myDiv2.style.display = "none";

    var i=0;
    var myElements = getElementsByName_iefix("td",whichName);

    for (i=2; i <= myElements.length; i++)
    {
        dimTheElement('dimRecords' + i);
    }
}

function UndimCatalogRecords(whichName)
{
    var myDiv = document.getElementById("mangobreadcrumb");
    myDiv.style.display = "block";
    
    var myDiv2 = document.getElementById("recordcount");
    myDiv2.style.display = "block";
    
    var i=0;
    var newStyle;
    var myElements = getElementsByName_iefix("td",whichName);
    for (i=2; i <= myElements.length; i++)
    {
        myElement = "dimRecords" + i;
        UndimTheElement(myElement);
    }
}

function toggleDigiTable(whichLayer)
{
    var div;
    var style2;
    if (document.getElementById)
    {
        // this is the way the standards work
        div = document.getElementById(whichLayer);
        style2 = document.getElementById(whichLayer).style;
    }
    else if (document.all)
    {
        // this is the way old msie versions work
        div = document.all[whichLayer].style;
        style2 = document.all[whichLayer].style;
    }
    else if (document.layers)
    {
        // this is the way nn4 works
        div = document.layers[whichLayer].style;
        style2 = document.layers[whichLayer].style;
    }
    style2.display = "none";
    UndimCatalogRecords("myDimRecords");
}

function changePagingFont(my_id)
{
    var newStyle = document.getElementById(my_id);
    newStyle.style.fontWeight = "bold";
}
        
/*function hideLinkStyle(whichLayer)
{
    var style2;
    if (document.getElementById)
    {
        // this is the way the standards work
        style2 = document.getElementById(whichLayer);
    }
    else if (document.all)
    {
        // this is the way old msie versions work
        style2 = document.all[whichLayer];
    }
    else if (document.layers)
    {
        // this is the way nn4 works
        style2 = document.layers[whichLayer];
    }
    style2.style = "text-decoration:none";
    style2.style = "color:black";
}*/
