// getElementById helper function
function element(id) {
    if (id && id != "") return document.getElementById(id);
}

// check that the __EVENTVALIDATION element has rendered - form submission is not allowed until this is available!
function check__EVENTVALIDATION() {
    //return !(element('__EVENTVALIDATION')==null);
    return true;
}

// clickOnce handlers for buttons
function clickOnce(ctrl,message,disable) {
    ctrl.blur();
    var ctrl_stopclick = ctrl.stopclick;
    var ctrl_disabled = ctrl.disabled;
    if (typeof(ctrl_disabled) == "undefined") {
        ctrl_disabled = (ctrl.getAttribute && ctrl.getAttribute("disabled") == "disabled");
    } 
    if (!ctrl_stopclick && !ctrl_disabled && check__EVENTVALIDATION()) {
        ctrl.stopclick = true;
        if (typeof(message) == "undefined") {
            message = "";
        } else if (message == "@") {
            message = "Wait...&nbsp;";
        } else {
            message = message.replace(/'/g,"\\'");
        }
        if (typeof(disable) == "undefined") disable = true;
        setTimeout("_delayed_clickOnce('"+ctrl.id+"','"+message+"',"+disable+")",100);
        return true;
    }
    return false;

}

function _delayed_clickOnce(id,message,disable) {
    var ctrl = document.getElementById(id);
    if (ctrl) {
        if (typeof(Page_ClientValidate) != "function" || Page_IsValid) {
            if (typeof(ctrl.value) != "undefined" && message != "") {
                ctrl.value = message;
            } else if (typeof(ctrl.innerHTML) != "undefined" && message != "") {
                ctrl.innerHTML = message;
            }
            if (message != "") ctrl.title = message.replace(/&.+;/g,"");
            ctrl.style.cursor = 'wait';
            document.body.style.cursor = 'wait';
            ctrl.disabled = disable;
        } else {
            ctrl.stopclick = false;
        }
    }
}