function loading()
{
  document.getElementById('loading').innerHTML='<font color="#FFFFFF"><span style="background-color: #FF0000">Loading...</span></font>';
}

function done()
{
  document.getElementById('loading').innerHTML="";
}

function failure()
{
  alert('Error Occurred');
}

function rand()
{
	return "&rand="+(Math.random()*Math.random());
}

function rand2()
{
	return "?rand="+(Math.random()*Math.random());
}

function invite()
{
  var url="action2.php"+rand2();
  var myAjax = new Ajax.Updater('panel', url, {method: 'post', parameters: Form.serialize(frm_invite),onFailure: failure,onLoading:loading,onComplete:done});
}

function accept_invitation(gid)
{
	var url="action2.php?action=accept_invitation&gid="+gid+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function list_pool(gid,page)
{
	var url="action2.php?action=list_pool&gid="+gid+"&page="+page+rand();
	var pars;
	var myajax=new Ajax.Updater('layer_pool', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function list_members(gid,page)
{
	var url="action2.php?action=list_members&gid="+gid+"&page="+page+rand();
	var pars;
	var myajax=new Ajax.Updater('layer_members', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function refuse_invitation(gid)
{
	var url="action2.php?action=refuse_invitation&gid="+gid+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function invoke_groups_default(param,page)
{
	var url="action2.php?action=invoke_groups_default&page="+page+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function invoke_frm_newgroup()
{
	var url="action2.php?action=invoke_frm_newgroup"+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function addgroup()
{
  var url="action2.php"+rand2();
  var myAjax = new Ajax.Updater('panel', url, {method: 'post', parameters: Form.serialize(frm_addgroup),onFailure: failure,onLoading:loading,onComplete:done});
}

function invoke_frm_editgroup(gid)
{
	var url="action2.php?action=invoke_frm_editgroup&gid="+gid+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function editgroup()
{
  var url="action2.php"+rand2();
  var myAjax = new Ajax.Updater('panel', url, {method: 'post', parameters: Form.serialize(frm_editgroup),onFailure: failure,onLoading:loading,onComplete:done});
}

function deletegroup(gid)
{
  if (confirm('Are you sure to delete this group?'))
	  {
		  var url="action2.php?action=deletegroup&gid="+gid+rand();
		  var pars;
		  var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
	}
}

function group_main(gid,page)
{
	var url="action2.php?action=group_main&gid="+gid+"&page="+page+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
	list_members(gid);
}

function invoke_frm_postthread(gid)
{
	var url="action2.php?action=invoke_frm_postthread&gid="+gid+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function frm_group_icon(gid)
{
	var url="action3.php?action=frm_group_icon&gid="+gid+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function postthread()
{
  var url="action2.php"+rand2();
  var myAjax = new Ajax.Updater('panel', url, {method: 'post', parameters: Form.serialize(frm_postthread),onFailure: failure,onLoading:loading,onComplete:done});
}

function postreply()
{
  var url="action2.php"+rand2();
  var myAjax = new Ajax.Updater('panel', url, {method: 'post', parameters: Form.serialize(frm_postreply),onFailure: failure,onLoading:loading,onComplete:done});
}

function thread_main(pid)
{
	var url="action2.php?action=thread_main&pid="+pid+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function invoke_frm_editthread(id)
{
	var url="action2.php?action=invoke_frm_editthread&id="+id+rand();
	var pars;
	var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
}

function deletethread(pid,gid)
{
	if (confirm('Are you sure to delete this thread?'))
	{
		var url="action2.php?action=delete_thread&pid="+pid+"&gid="+gid+rand();
		var pars;
		var myajax=new Ajax.Updater('panel', url, {method: 'get', parameters: pars,onFailure: failure,onLoading:loading,onComplete:done});
	}
}

function editthread()
{
  var url="action2.php"+rand2();
  var myAjax = new Ajax.Updater('panel', url, {method: 'post', parameters: Form.serialize(frm_editthread),onFailure: failure,onLoading:loading,onComplete:done});
}
