function setIndicatorVisible(componentId, visible) {
    var component = $(componentId);
    if (component) {
        component.setOpacity(visible ? 0.0 : 1.0);
    }
    //component.style.zIndex = visible ? 1 : 2;
    
    var indicator = getIndicator(componentId);
    if (indicator) {
        if (visible) {
            indicator.setOpacity(0.0);
            indicator.show();
            indicator.absolutize();
            indicator.clonePosition(indicator.previous());
            indicator.setOpacity(1.0);
            //indicator.style.zIndex = 2;
        }
        else {
            indicator.setOpacity(0.0);
            //indicator.style.zIndex = 1;
        }
    }
}

function getIndicator(componentId) {
    return $(componentId + 'Indicator');
}

function showIndicator(componentId) {
    setIndicatorVisible(componentId, true);
}

function hideIndicator(componentId) {
    setIndicatorVisible(componentId, false);
}

/*Event.observe(window, 'load', function() {
    $$('span.ajax-indicator').each(function(indicator) {
        indicator.setOpacity(0.0);
        indicator.show();
        indicator.absolutize();
        indicator.clonePosition(indicator.previous());
    });
});*/