﻿// display a processing message
function showProcessing(control) {
    var resetValue = control.value;
    var resetClassName = control.className;        
    
    // fetch original width
    var els = control.style;
    var originalVisibility = els.visibility;
    var originalPosition = els.position;
    var originalDisplay = els.display;
	
    els.visibility = 'hidden';
    els.position = 'absolute';
    els.display = 'block';
	
    var originalWidth = control.clientWidth;
    var resetWidth = originalWidth;
    control.value = 'Please wait...';
    var newWidth = control.clientWidth;
    
    els.display = originalDisplay;
    els.position = originalPosition;
    els.visibility = originalVisibility;

    // set button properties    
    control.className = control.className + ' processing';    
    if (originalWidth > newWidth) {
        control.style.width = originalWidth + 'px';
        resetWidth = originalWidth + 'px';
    }
    
    // reset control properties once page has been processed \ unloaded
    document.getElementsByTagName("BODY")[0].onunload = function resetControl(){
        control.text = resetValue;
        control.className = resetClassName;
        control.style.width = resetWidth;
    }
}
