
function makeEditable(id){
        var idObj = $(id);
        addEvent(idObj, 'click', function(){edit(idObj)}, false);
}

function edit(obj){
        obj.style.display = 'none';

        var editor = document.createElement('DIV');
        editor.id = obj.id + '_editor';
        editor.innerHTML = '<input type="text" id="' + obj.id + '_edit" name="' + obj.id + '" size="50" maxlength="200" value="' + obj.innerHTML + '"/>';
        insertAfter(obj, editor);

	var editObj = $(obj.id + '_edit');
	addEvent(editObj, 'blur', function(){cleanUp(obj)}, false);
	addEvent(editObj, 'change', function(){saveChanges(obj)}, false);
	editObj.focus();
}

function saveChanges(obj){
	var editObj = $(obj.id + '_edit');
        var new_content =  escape(editObj.value);

	if (new_content != ''){
	        obj.innerHTML   = "Guardando...";
	        var success     = function(t){editComplete(t, obj);}
        	var failure     = function(t){editFailed(t, obj);}
	        AjaxRequest('tag.php', 'POST', 'content=' + new_content, success, failure);
	}
}

function cleanUp(obj){
        var editor = $(obj.id + '_editor');
        editor.parentNode.removeChild(editor);
        obj.style.display = '';
}

function editComplete(t, obj){ obj.innerHTML = t.responseText; }
function editFailed(t, obj){ /*obj.innerHTML = '[ERROR] No se pudo guardar';*/ }

function init(){ makeEditable('tag'); }
addEvent(window, 'load', init, false);

