﻿/// <reference name="MicrosoftAjax.js"/>

(function() {
    var onload = function() {
        var forms = document.getElementsByTagName('form');
        for (var index = 0; index < forms.length; index++) {
            var entry = forms[index];
            $addHandler(entry, 'submit', function() { setTimeout('DisableAllButtons();', 0); });
        }
        Sys.Application.remove_load(onload);
    }
    Sys.Application.add_load(onload);
} ())

function DisableAllButtons() {
    if (typeof (Page_IsValid) != 'undefined') {
        if (!Page_IsValid) {
            return;
        }
    }
    var status = Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack();
    if (status) {
        return;
    }
    var inputs = document.getElementsByTagName('input');
    for (var index = 0; index < inputs.length; index++) {
        var entry = inputs[index];
        switch (entry.type) {
            case 'button':
            case 'submit':
            case 'image':
                entry.setAttribute('disabled', 'disabled');
                entry.setAttribute('onclick', 'return false;');
                break;
        }
    }
    var links = document.getElementsByTagName('a');
    for (var index = 0; index < links.length; index++) {
        var entry = links[index];
        if (entry.getAttribute('href').indexOf("__doPostBack") != -1) {
            entry.setAttribute('disabled', 'disabled');
            entry.setAttribute('href', 'javascript:return false;');
        }
    }
}
