var currentTopic;
var categories = ["basics","enterprise"];
function getQuestions(name, id) {
    var obj = document.getElementById(name+"_questions");
    
    if (currentTopic != null && currentTopic == obj) {
        if (obj.style.display=="block") {
            obj.style.display="none";
            currentTopic = null;
        }
    } else {
        if (currentTopic != null) {
            currentTopic.style.display = "none";
            currentTopic = null;
        }

        currentTopic = obj;
        var request = new AjaxRequest("getQuestions.do?topicId="+id, "getQuestionsHandler");
        request.send();
    }
}

function getQuestionsHandler(response) {
    currentTopic.innerHTML = response.getText();
    currentTopic.style.display="block";
}

function getSolutionById(id, skip) {
    if (!skip) {
        dhtmlHistory.add("ID~"+id, "link");
    }
    
    var request = new AjaxRequest("GetSolutionById.do?solutionId="+id, "getSolutionHandler");
    request.send();
}

function getSolutionByPhrase(phrase, skip) {
    if (!skip) {
        dhtmlHistory.add("PHRASE~"+phrase, "link");    
    }
    
    var request = new AjaxRequest("GetSolutionByPhrase.do?phrase="+phrase, "getSolutionHandler");
    request.send();
}

function getSolutionByName(name, skip) {
    if (!skip) {
        dhtmlHistory.add("NAME~"+encodeSpaces(name), "link");    
    }

    if (name.indexOf('Glossary')>=0 || name.indexOf('glossary')>=0) {
        var ndx = name.indexOf("#");
        if (ndx >= 0) {
            name = "Glossary_" + name.substring(ndx+1,ndx+2).toLowerCase();
        }
    }

    var request = new AjaxRequest("GetSolutionByName.do?name="+name, "getSolutionHandler");
    request.send();
}

function getSolutionHandler(response) {
    document.getElementById("solutionsContainer").innerHTML = response.getText();

}

function switchCategory(cat) {
    for (var i=0; i<categories.length; i++) {
        if (categories[i] != cat) {
            document.getElementById(categories[i]+"_anchor").className="tabLink";
            document.getElementById(categories[i]+"_div").className="tab";
            document.getElementById(categories[i]+"_tabLeft").src="images/tabLeft.gif";
            document.getElementById(categories[i]+"_tabRight").src="images/tabRight.gif";
        }
    }
    document.getElementById(cat+"_anchor").className="tabLink_Live";
    document.getElementById(cat+"_div").className="tab_Live";
    document.getElementById(cat+"_tabLeft").src="images/tabLeft_Live.gif";
    document.getElementById(cat+"_tabRight").src="images/tabRight_Live.gif";
}

function searchAnswers() {
    var str = jQuery.trim($("#searchTerm").val());
    if (str=="") {
        alert("Please provide a search term before continuing.");
        return;
    }
    sendForm('searchSolutionsForm');
}


/* **************** UTILITY FUNCTIONS ******************** */
function sendForm(id)
{
    var f = $("#"+id);
    f.submit();
}

function sendFormWithAction(id, action)
{
    var f = document.getElementById(id);
    f.action = f.action+"?action="+action;
    f.submit();
}

function getGlossary(id) {
    var name = "Glossary_"+id;
    getSolutionByName(name);
}

function encodeSpaces(str) {
    var len = str.length;
    var newStr = "";
    for (i=0; i<len; i++) {
        if (str.substring(i,i+1).charCodeAt(0) == 32) {
            newStr = newStr + "%20";
        } else {
            newStr = newStr + str.substring(i,i+1); 
        }
    }
    return newStr;
}

function checkInput(event) {
    if(event.keyCode==13) {
        var str = jQuery.trim($("#searchTerm").val());
        if (str=="") {
            alert("Please provide a search term before continuing.");
            return false;
        } else {
            sendForm('searchSolutionsForm');   
        }
    }
}
