LiveEdit = Class.create();
LiveEdit.prototype = {
    
	initialize: function() {
		this.url  = 'save.php';
		this.id   = null;
		this.edit = false;
	},

    showForm: function(element) {
        if(this.edit == false) {
            document.getElementById('actions' + element.id).style.display = 'block';
            var value = element.innerHTML;
        	var str =  '<input type="hidden" id="edit_cancel" value="' + value + '">';
        	str += '<input style="font-size:12px; color:#000000;border:0px; background-color:#fff; width:280px;" type="text" size="30" maxlength="150" id="edit" value="' + value + '">';
            element.innerHTML = str;
        	element.firstChild.focus();
            this.edit = true;
        }
    },

    save: function(id) {
        id = parseInt(id);
        this.id = id;
        var text = escape(document.getElementById('edit').value);
    	if(text != '' && text != null && text != undefined) {
            var pars = 'action=save&text=' + escape(text) + '&id=' + id;
            new Ajax.Request(this.url, {method: 'post', parameters: pars, onComplete: this.handleSave.bind(this)});        
    	}
    },

    handleSave: function(originalRequest) {
        document.getElementById('actions' + this.id).style.display = 'none';
        var text = document.getElementById('edit').value;
        document.getElementById(this.id).innerHTML = text;
        this.edit = false;        
    },

    cancel: function(id) {
        document.getElementById('actions' + id).style.display = 'none';
        var text = document.getElementById('edit_cancel').value;
        document.getElementById(id).innerHTML = text;
        this.edit = false;        
    }
}

var liveedit = null;
window.onload = function() {
    liveedit = new LiveEdit();
}
