function postBack(invokerId, eventName, submitterId, ajaxSubmitterId,
		disableAfterClick, eventArgs,eventType)
{
	var myform = document.getElementById(submitterId);
	if (myform == null)
	{
		myform = document.forms[0];
		document.getElementById('_Invoker').value = invokerId;
		document.getElementById('_EventName').value = eventName;
		document.getElementById('_EventArgs').value = eventArgs;
		document.getElementById('_EventType').value = eventType;
		document.getElementById('_EventTarget').value = ajaxSubmitterId;
	}
	else
	{
		myform.elements[0].value = invokerId;
		myform.elements[1].value = eventName;
		myform.elements[2].value = eventArgs;
		myform.elements[3].value = eventType;
		myform.elements[5].value = ajaxSubmitterId;
	}
	var invokerElement = document.getElementById(invokerId);
	if (invokerElement != null)
	{
		if (disableAfterClick)
			invokerElement.disabled = 'disabled';
		else
			invokerElement.removeAttribute("disabled");
	}
	if (ajaxSubmitterId == null || ajaxSubmitterId == ''
			|| ajaxSubmitterId == 'null')
	{
		if (myform.onsubmit && myform.onsubmit!= '' )//&&typeof(myform.onsubmit) == "function")
		{
			myform.onsubmit();
		}
		myform.submit();
	}
	else
		submitAjax(myform, invokerId, ajaxSubmitterId);
}

function validatePostBack(invokerId, eventName, submitterId, ajaxSubmitterId,
		groupName, disableAfterClick, eventArgs)
{
	try
	{
		var group = eval(groupName);
	}
	catch (e)
	{
		alert('Oops, it seems that you are using a validation group does not exist!');
		return;
	}
	var validInput = false;
	try
	{
		validInput = validateFormData(eval(groupName), groupName,
				submitterId);
	}
	catch (e)
	{
	}
	var invoker = document.getElementById(invokerId);
	if (validInput == true)
	{
		postBack(invokerId, eventName, submitterId, ajaxSubmitterId,
				disableAfterClick, eventArgs);
		return;
	}
	else if (disableAfterClick)
	{
		if (invoker)
			invoker.removeAttribute("disabled");
	}
	if (invoker.tagName != 'A' && invoker.tagName != 'a')
		return false;
}

function postInternal(invokerId, eventName, eventArgs, submitterId,
		ajaxSubmitterId)
{
	post_ternal(invokerId, eventName, eventArgs, submitterId, ajaxSubmitterId,
			'internal');
}

function postExternal(invokerId, eventName, eventArgs, submitterId,
		ajaxSubmitterId)
{
	post_ternal(invokerId, eventName, eventArgs, submitterId, ajaxSubmitterId,
			'external');
}
function post_ternal(invokerId, eventName, eventArgs, submitterId,
		ajaxSubmitterId, eventType)
{
	var myform = document.getElementById(submitterId);
	if (myform == null)
	{
		document.getElementById('_EventArgs').value = eventArgs;
		document.getElementById('_EventType').value = eventType;
		document.getElementById('_Group').value = '';
	}
	else
	{
		myform.elements[2].value = eventArgs;
		myform.elements[3].value = eventType;
		myform.elements[4].value = '';
	}
	postBack(invokerId, eventName, submitterId, ajaxSubmitterId, false,
			eventArgs,eventType);
}

function refreshPanel(time, eventName, submitterId, ajaxSubmitterId, groupName)
{
	if (groupName != null && groupName != ''
			&& !validateFormData(eval(groupName), groupName, submitterId))
		setTimeout('refreshPanel(1,"' + eventName + '","' + submitterId + '","'
				+ ajaxSubmitterId + '","' + groupName + '","', time);
	else
		setTimeout('postBack("' + ajaxSubmitterId + '","' + eventName + '","'
				+ submitterId + '","' + ajaxSubmitterId + '")', time);
}

