/* Core Page functionalities for disease managament application
Date: 12/22/2008
*/

function pop(l,n) {
var w = window.open(l,n,'status=0,scrollbars=1,width=800,height=600')
}

function setCurrentSection(sid) {
    if (currIdx > sid)
        currIdx = sid;
}

function setURB(nameregex, current) {
    re = new RegExp(nameregex);
    for (i = 0; i < document.forms[0].elements.length; i++) {
        elm = document.forms[0].elements[i]
        if (elm.type == 'radio') {
            if (re.test(elm.name)) {
                elm.checked = false;
            }
        }
    }
    current.checked = true;
}

function addSelect(e) {
    var rows;
    rows = xGetElementsByTagName('tr', e.parentNode);
    for (var i = rows.length; i > 0; i--) {
        xRemoveClass(rows[i - 1], 'hrow');
    }
    xAddClass(e, 'hrow');
}

function fSCh(sid) {
    for (var i = sid+1; i < sPanelsN.length; i++) {
        if (sPanelsN[i] != '')
            xStyle('display', 'none', 'div' + sPanelsN[i]);
    }    
}

function toggleDisplay(obj) {
if (!obj) return;
var sTarget = xGetElementById(obj);
if (sTarget) xToggleClass(sTarget, 'toggledisp');
}

function hideS(secH, secD) {
    var sSrc = xGetElementById(secH);
    if (sSrc.innerHTML.indexOf('-') > 0) {
        sSrc.innerHTML = sSrc.innerHTML.replace('[-]', '[+]');
        xAddClass(secD, 'toggledisp')
        //xToggleClass(xGetElementById(secD), 'toggledisp');
    }
}

function showS(secH, secD) {
    var sSrc = xGetElementById(secH);
    if (sSrc.innerHTML.indexOf('+') > 0) {
        sSrc.innerHTML = sSrc.innerHTML.replace('[+]', '[-]');
        xRemoveClass(secD, 'toggledisp')
        //xToggleClass(xGetElementById(), 'toggledisp');
    }
}

function toggleS(secH, secD) {
    var sSrc = xGetElementById(secH);
    if (sSrc.innerHTML.indexOf('+') > 0) {
        sSrc.innerHTML = sSrc.innerHTML.replace('[+]', '[-]');
    }
    else sSrc.innerHTML = sSrc.innerHTML.replace('[-]', '[+]');
    xToggleClass(xGetElementById(secD), 'toggledisp');
}

function scrollToElem(elemId) {
var elem = xGetElementById(elemId)
var selectedPosX = 0;
var selectedPosY = 0;
while (elem != null) {
selectedPosX += elem.offsetLeft;
selectedPosY += elem.offsetTop;
elem = elem.offsetParent;
}
window.scrollTo(selectedPosX, selectedPosY);
}

function endRequestHandler(sender, e) {
if (e.get_error() == undefined) {
if (currIdx == 2) { //hide Intro
xAddClass('divIntro','toggledisp');
}
if (currIdx == 5) { //reset location to top
//location.href = '#a' + sPanelsN[currIdx];
scrollToElem('a' + sPanelsN[currIdx]);
}
}
else {
//alert(e.get_error().message);
alert('The system is experiencing some technical difficulties right now. Please try later.');
e.set_errorHandled(true);
}
}


xEach(sPanelsN, function(sPanelN, i) {
    var e = xGetElementById('div' + sPanelN);
    xAddEventListener(e, 'click', function() { setCurrentSection(i); }, false)
});   


Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler);   //init end-request handler   