var color = 0;
var dir = 1;
function fade()
{
    var quick = 50;
    var slow = 500;
    var el = document.getElementById('submit_progress');
    if (!el) {
        return;
    }

    if (dir) {
        if (color < 255) {
            setTimeout("fade()", 100);
            color += 10;
        }
        else {
            setTimeout("fade()", quick);
            color = 255;
            dir = 0;
        }
    }
    else {
        if (color > 0) {
            setTimeout("fade()", quick);
            color -= 10;
        }
        else {
            setTimeout("fade()", slow);
            color = 0;
            dir = 1;
        }
    }
    el.style.color = "rgb(" + color + "," + color + "," + color + ")";
}

function load_submit(url, parameters)
{
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }

    req.onreadystatechange = function() {
        //window.alert('readystate: ' + req.readyState);
        if (req.readyState == 4) {
            var el = document.getElementById('content');
            if (req.status == 200) {
                el.innerHTML = req.responseText;
            }
            else {
                el.innerHTML = "Error connecting to server.";
            }
        }
    };

    req.open("POST", url, true);
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    req.setRequestHeader("Content-Length", parameters.length);
    req.setRequestHeader("Connection", "close");
    req.send(parameters);

    setTimeout("fade()", 100);
}

function fws_onsubmit()
{
    if (window.XMLHttpRequest || window.ActiveXObject) {
        var s = document.fws_submit_form.action;
        s = s.replace(/submit.cgi/, "submit-async.cgi");
        document.fws_submit_form.action = s;
    }
    document.fws_submit_form.submit();
}
