function serverCall(method, url, params, status)
{
var currentStatus = status;
var q = url;
var connector = '?';
for(var field in params)
{
if(params[field] == undefined || typeof params[field] == 'function')
continue;
q += connector + field + "=" + escape(params[field]);
connector = '&';
}
try
{
addStatus(status);
var text = JwacsLib.fetchData(method, q);
currentStatus = null;
removeStatus(status);
return unpackResponse(text);
}
catch(e)
{
// Just passing through
if(currentStatus)
removeStatus(currentStatus);
alert("Sorry, an error occurred while " + status + ".");
throw e;
}
}
function fetchEvent(eventID)
{
var rows = serverCall("GET",
serviceRootPath + "/event-query",
{id: eventID},
"fetching event #" + eventID);
return rows[0];
}