DOMExtender = new ( Class.create({
    
    initialize : function()
    {
    },
    
    AddTextArea : function(container, id, defaultValue, enterPressed)
    {
        this.AddInputByTagName(container, id, defaultValue, enterPressed, "textarea");
    },
    
    AddInput : function(container, id, defaultValue, enterPressed)
    {
        this.AddInputByTagName(container, id, defaultValue, enterPressed, "input");
    },
    
    AddInputByTagName : function(container, id, defaultValue, enterPressed, tagName)
    {
        var input = new Element(tagName);
        input.id = id;
        input.value = defaultValue;
        input.setStyle({color: "#888", fontWeight: "normal"});
        $(container).insert(input);
        
        Event.observe(id, "click", function(event){
            var tmpInput = Event.element(event);
            if(tmpInput.value == defaultValue)
            {
                tmpInput.value = "";
                tmpInput.setStyle({color: "#000", fontWeight: "bold"});
            }
        });
        
        Event.observe(id, "focus", function(event){
            var tmpInput = Event.element(event);
            if(tmpInput.value == defaultValue)
            {
                tmpInput.value = "";
                tmpInput.setStyle({color: "#000", fontWeight: "bold"});
            }
        });
        
        Event.observe(id, "keypress", function(event){
            if(event.keyCode == 13 && enterPressed != null ) { enterPressed(event); }
        });
        
        Event.observe(id, "blur", function(event){
            var tmpInput = Event.element(event);
            if(tmpInput.value.blank())
            {
                tmpInput.setStyle({color: "#888", fontWeight: "normal"});
                tmpInput.value = defaultValue;
            }
        });
    }
    
}))();
