﻿var myTreeControlId;
var mySplitterId;
var myPrimaryContent;
var myCurrentSearch = getCookie('SearchText');

function SetPrintMediaContent() {
    myPrimaryContent = document.getElementById('PrimaryContent');
    if (myPrimaryContent != null) {
        // Set print media div section for printing
        document.getElementById('PrintMediaContent').innerHTML = myPrimaryContent.innerHTML.replace(/ctl00/gi, "PMctl00");
    }
}

function HighlightSearchTerms() {
    if (myCurrentSearch != '') {
        // If search terms exist, highlight them
        var mySearchArray = GetSearchTextArray();
        for (i = 0; i < mySearchArray.length; i++)
            HighlightWord(mySearchArray[i]);
    }
}

function GetSearchTextArray() {
    // Get quotes first
    var myFinal = '';
    var myRemains = myCurrentSearch;
    while (myRemains.indexOf('"') >= 0) {
        var myIndex1 = myRemains.indexOf('"');
        var myTemp = myRemains.substring(myIndex1 + 1);
        var myIndex2 = myTemp.indexOf('"');
        if (myIndex2 < 0) {
            var sRegExInput1 = new RegExp('"' + myTemp, "gi");
            myRemains = myRemains.replace(sRegExInput1, myTemp);
        }
        else {
            var myTemp2 = myTemp.substring(0, myIndex2);
            myFinal = myFinal + myTemp2 + '|';
            var sRegExInput1 = new RegExp('"' + myTemp2 + '"', "gi");
            myRemains = myRemains.replace(sRegExInput1, '');
        }
    }
    
    // Get remaining words
    var myWords = myRemains.split(' ');
    for (i = 0; i < myWords.length; i++) {
        var myItem = trim(myWords[i]);
        if (myItem != '') { myFinal = myFinal + myItem + '|' }
    }

    // Remote final pipe and return
    myFinal = myFinal.substring(0, myFinal.length - 1);
    alert(myFinal);
    return myFinal.split("|");
}

function trim(str) {
    return str.replace(/^\s*((?:[\S\s]*\S)?)\s*$/, '$1');
}

function HighlightWord(term) {
    // Highlight word if all lowercase, or if first letter is upper case
    var myHighlightColor = 'Yellow';
    var termFirstUpper = term.substr(0, 1).toUpperCase() + term.substr(1);
    var termUpper = term.toUpperCase();
    var termLower = term.toLowerCase();
    var myReplace1 = '<span style="background-color: ' + myHighlightColor + ';">' + termFirstUpper + '</span>';
    var myReplace2 = '<span style="background-color: ' + myHighlightColor + ';">' + termUpper + '</span>';
    var myReplace3 = '<span style="background-color: ' + myHighlightColor + ';">' + termLower + '</span>';
    var sRegExInput1 = new RegExp(termFirstUpper, "g");
    var sRegExInput2 = new RegExp(termUpper, "g");
    var sRegExInput3 = new RegExp(termLower, "g");
    myPrimaryContent.innerHTML = myPrimaryContent.innerHTML.replace(sRegExInput1, myReplace1);
    myPrimaryContent.innerHTML = myPrimaryContent.innerHTML.replace(sRegExInput2, myReplace2);
    myPrimaryContent.innerHTML = myPrimaryContent.innerHTML.replace(sRegExInput3, myReplace3);
}

function ShiftNodeIntoView() {
    var mySelectedNodeId = myTreeControlId + '_SelectedNode';
    var mySelectedNode = document.getElementById(mySelectedNodeId);

    if (mySelectedNode != null) {
        if ((mySelectedNode.value != null) && (mySelectedNode.value != "")) 
        {
            var mySelectedTreeNode = document.getElementById(mySelectedNode.value);
            mySelectedTreeNode.scrollIntoView(true);
        }
    }

}
