var ACTIVE_FIELD_CLASS= 'autoClearedInputEdited';
var INACTIVE_FIELD_CLASS= 'autoClearedInput';


function inputFieldTextHelper( used_input )
{
    var _this= this;

    this.input_field= used_input;

    
    this.default_value= used_input.value;
    
    if( used_input.className == INACTIVE_FIELD_CLASS )
    {
        this.state= 'clear';
        this.default_value= used_input.value;
    }
    else if( used_input.className == ACTIVE_FIELD_CLASS )
    {
        this.state= 'edited';
        this.default_value= '';
    }
    
    
    this.handleFocus= function( event )
    {
        if( _this.state == 'clear' )
        {
            _this.input_field.value= '';
            _this.input_field.className= ACTIVE_FIELD_CLASS;
            _this.state= 'edited';
        }
    }
    
    
    this.handleBlur= function( event )
    {
        if( ( _this.state == 'edited' ) && ( _this.input_field.value.length == 0 ) )
        {
            _this.input_field.value= _this.default_value;
            _this.input_field.className= INACTIVE_FIELD_CLASS;
            _this.state= 'clear';
        }
    }
    
    
    
    
    
    
    if( used_input.value.length > 0 )
    {
        addPortableEventListener( used_input, 'focus', function( event ){ _this.handleFocus( event ); } );
        addPortableEventListener( used_input, 'blur', function( event ){ _this.handleBlur( event ); } );
        
    }
    
    
    
    
    
    
    
    
    
    
    
    
    return this;
}







function initInputFieldTextHelper()
{
    var inputs= document.getElementsByClassName( ACTIVE_FIELD_CLASS );

    for( var itr= 0; itr < inputs.length; itr++ )
    {
        tmp= new inputFieldTextHelper( inputs[ itr ] );
    }

    var inputs2= document.getElementsByClassName( INACTIVE_FIELD_CLASS );

    for( var itr= 0; itr < inputs2.length; itr++ )
    {
        tmp= new inputFieldTextHelper( inputs2[ itr ] );
    }
    
}








runOnLoad( initInputFieldTextHelper );





