ajaxCaller.shouldDebug = false;
ajaxCaller.shouldMakeHeaderMap = false;
ajaxCaller.shouldEscapeVars = false;

var editing = false;
var currententryid = -1;

function onmsg_load()
{
	var entrydivs = document.getElementsByName("entrydiv");
	var entrydivvars = entrydivs[0].id.split(":");
	currententryid = entrydivvars[1];
	return true;
}

function onmsg_keypress(event, entryid)
{
	var keynum;
	var keychar;
	var numcheck;

	if (window.event) // IE
	{
		keynum = event.keyCode;
	}
	else if(event.which) // Netscape/Firefox/Opera
	{
		keynum = event.which;
	}

	keychar = String.fromCharCode(keynum)

	if (keychar == "v")
	{
		editentry(currententryid);
		return false;
	}
	return true; // passthrough
}

function onmsg_mouseover(entrydiv)
{
	entrydiv.style.borderColor = "#999999";
}
function onmsg_mouseout(entrydiv)
{
	entrydiv.style.borderColor = "#FFFFFF";
}
function editentry(entryid)
{
	var displaybox = $("entrydisplay:" + entryid);
	var editbox = $("entryedit" + entryid);
	
	editbox.style.width = displaybox.offsetWidth;
	displaybox.style.display = "none";
	//editbox.value = displaybox.innerHTML;
	//resize_vertical(editbox);
	editbox.style.display = "block";
	editbox.focus();
	editing = true;
}
function onmsg_click(entryid)
{
	editentry(entryid);
}
function onResponse(text, headers, callingContext)
{
	var contextVars = callingContext.split(":");
	var displaybox = $("entrydisplay:" + contextVars[1]);
	if (contextVars[0] == "edit")
	{
		if (text.charAt(0) == "1")
		{
			displaybox.innerHTML = text.substr(1, text.length - 1);
		}
		else
		{
			displaybox.innerHTML = "edit failed, server returned: " + text;
		}
	}
}
function onmsg_blur(entryid)
{
	var displaybox = $("entrydisplay:" + entryid);
	var editbox = $("entryedit" + entryid);
	var encodedtext = escape(editbox.value);

	var vars = {
		text: encodedtext,
		id: entryid
	};

	ajaxCaller.postVars("writex.pl", vars, null, onResponse, false, "edit:" + entryid);

	editbox.style.display = "none";
	displaybox.innerHTML = "waiting for response";
	displaybox.style.display = "block";
	editing = false;
}

