var _overridePostFormScript = null;
var _cancelFormScript = null;

function viewForm(formId, postScript, cancelFormScript)
{
	_overridePostFormScript = postScript;
	_cancelFormScript = cancelFormScript;
	
	var buttonType = 0;
	if (postScript != null)
		buttonType = 1;
	
	getPage(_JF_ROOT_URL +'mover/view_form.php?id='+ formId +'&bt='+ buttonType, 'formFieldContainer');
	showCurtain();
}

function formIsValid()
{
	var theForm = document.getElementById('frmEntry');
	var count = theForm.elements.length;
	var isValid = true;
	
	var fieldTypeText = 1;
	var fieldTypeNumeric = 2;
	var fieldTypeDate = 3;
	var fieldTypeMoveDate = 107;
	var fieldTypeBirthDate = 108;
	
	for (var i = 0; i < count; i++)
	{
		var el = theForm.elements[i];
		if (el.name != '')
		{
			if (el.name.indexOf('is_required[',0) > -1 && el.value == 1)
			{
				var formFieldId = el.name.substr(12, el.name.length - 13);
				
				// Check if value is set for the field
				var fieldValue = document.getElementById('field['+ formFieldId +']').value;
				var fieldType = document.getElementById('field_type['+ formFieldId +']').value;
				
				// Remove all spaces from numeric input
				if (fieldType == fieldTypeNumeric)
				{
					fieldValue = removeSpaces(fieldValue);
					document.getElementById('field['+ formFieldId +']').value = fieldValue;
				}
				
				if (fieldValue.length == 0 || (fieldType == fieldTypeNumeric && !isNumeric(fieldValue)) || ((fieldType == fieldTypeDate || fieldType == fieldTypeMoveDate || fieldType == fieldTypeBirthDate) && fieldValue.length < 10))
				{
					isValid = false;
					if (fieldType == fieldTypeDate)
						document.getElementById('label['+ formFieldId +']').style.color = 'red';
					else
						document.getElementById('field['+ formFieldId +']').style.backgroundColor = '#E8A6B0';
				}
				else
				{
					if (fieldType == fieldTypeDate)
						document.getElementById('label['+ formFieldId +']').style.color = '#345565';
					else
						document.getElementById('field['+ formFieldId +']').style.backgroundColor = '#f0f0f0';
				}
			}
		}
	}
	
	return isValid;
}

function sendForm()
{
	if (formIsValid())
	{
		if (_overridePostFormScript != null)
			eval(_overridePostFormScript);
		else
			postPage('frmEntry', _JF_ROOT_URL +'mover/send_form.php', null, null, 'receiveSendFormResult');
	}
	else
		showMsg('Noen av feltene er ikke utfylt/ noen av verdiene er ugyldige');
}

function receiveSendFormResult(strResult)
{
	if (parseInt(strResult) > 0)
	{
		closeForm();
		showMsg('Forespørsel er sendt');
	}
	else
		showMsg(strResult);
}

function cancelForm()
{
	if (_cancelFormScript != null)
		eval(_cancelFormScript);
		
	closeForm();
}

function closeForm()
{
	var formFieldContainer = document.getElementById('formFieldContainer');

	if (formFieldContainer != null)
		formFieldContainer.style.display = 'none';
		
	removeCurtain();
}

function setDateValue(fieldId)
{
	var el = document.getElementById('field['+ fieldId +']');
	if (el != null)
	{
		var valDay = document.getElementById('field_date[day]['+ fieldId +']').value;
		var valMonth = document.getElementById('field_date[month]['+ fieldId +']').value;
		var valYear = document.getElementById('field_date[year]['+ fieldId +']').value;
		
		if (valDay < 10) valDay = '0' + valDay;
		if (valMonth < 10) valMonth = '0' + valMonth;
		
		el.value = valDay +'.'+ valMonth +'.'+ valYear;
	}
}
