﻿var keywordSearch;

window.onload = function(e) {

    provider = new DataProvider();
        
    if (document.getElementById && document.getElementById("currentSize") != null)
    {
        if(document.getElementById("currentSize").value == "")
        {
            resetCurrentSize();
        }
        else
        {
            setCurrentSize(document.getElementById("currentSize").value);
        }
        document.getElementById("textSizer").style.cssText = "display: block; float: right;";
    }
   
    keywordSearch = new KeywordSearch();
    
    
};


function getCurrentSize()   {
    return currentSize;
}

function setCurrentSize(newSize)    {
    currentSize = newSize;
    if (document.getElementById)
    {
        document.getElementById("soloContent").style.cssText = "font-size:" + currentSize + "px;";
        document.getElementById("textSize").style.cssText = "display: block;";
    }
}

function resetCurrentSize()    {
    currentSize = 11.5;
    document.getElementById("currentSize").value = currentSize;
    document.getElementById("soloContent").style.cssText = "font-size:" + currentSize + "px;";
}

function sizeUp()   {
    if (document.getElementById)
    {
        if (currentSize <= 15)
        {
            currentSize++;
            document.getElementById("currentSize").value = currentSize;
            document.getElementById("soloContent").style.cssText = "font-size:" + currentSize + "px;";
        }
    }
}

function sizeDown()   {
    if (document.getElementById)
    {
        if (currentSize >= 10)
        {
            currentSize--;
            document.getElementById("currentSize").value = currentSize;
            document.getElementById("soloContent").style.cssText = "font-size:" + currentSize + "px;";
        }
    }
}


function KeywordSearch() {

    this.provider = new DataProvider();
    this.textResponse = null;
    this.init();
};

KeywordSearch.prototype.init = function() {

    var spans = document.getElementsByTagName("span");
    
    for (var i = 0; i < spans.length; i++)
    {
        var element = spans[i];
        
        if (element.className == "keyword" || element.getAttribute("class") == "keyword")
        {
            /*if (element.addEventListener)
            (
                element.addEventListener("mouseover", showSearchResults, false);
            }
            else */
            if (element.attachEvent)
            {
                element.attachEvent("onmouseover", showSearchResults);
            }
        }
        
    }
};


function showSearchResults() {
    
    var oThis = this;
    
    var span = event.srcElement;
    var keyword = span.innerText;
    
    oThis.provider.requestData(oThis, "/AJAX/keywordSearch.ashx?keyword=" + keyword);
    
    var container = document.getElementById("keywordSearchResultsContainer");
    container.innerHTML = oThis.textResponse;
    
    container.style.top = (span.offsetParent.offsetTop + span.offsetTop) + "px";
    container.style.left = (span.offsetParent.offsetLeft + span.offsetLeft + span.offsetWidth + 5) + "px";
    container.style.visibility = "visible";
    
}


function hideSearchResultsContainer() {
    
    var container = document.getElementById("keywordSearchResultsContainer");
    container.innerHTML = "";
    
    container.style.visibility = "hidden";
}
