function confirmDelete()
{
	return confirm( "Are you sure you wish to delete this item?" );
}

function validateCheckgroup( checkgroup )
{
	for( var i=0; i<checkgroup.length; ++i )
	{
		if( checkgroup[i].checked ) 
		{
			highlightCheckgroup( checkgroup[i].name, true, '' );
			return true;
		}
	}
	highlightCheckgroup( checkgroup[0].name, false, 'please check at least one option' );
	return false;	
}

function highlightCheckgroup( name, valid, reason )
{
	var nameStub = name.substr( 0, name.length-2 );
	if( valid == false )
	{
		var errorEl = document.getElementById( nameStub + 'Error' );
		errorEl.style.display = 'inline';
		errorEl.innerHTML = '[' + reason + ']';
		
		document.getElementById(nameStub + 'Label').style.color = 'red';
	}	
	else
	{
		document.getElementById(nameStub + 'Error').style.display = 'none';
		document.getElementById(nameStub + 'Label').style.color = '#333';
	}
}

function highlight( nameStub, valid, reason )
{
	if( valid == false )
	{
		var errorEl = document.getElementById( nameStub + 'Error' );
		errorEl.style.display = 'inline';
		errorEl.innerHTML = '[' + reason + ']';
		
		document.getElementById(nameStub + 'Label').style.color = 'red';
		document.getElementById(nameStub).style.border = '1px solid red';
	}	
	else
	{
		document.getElementById(nameStub + 'Error').style.display = 'none';
		document.getElementById(nameStub + 'Label').style.color = '#333';
		document.getElementById(nameStub).style.border = '1px solid #7f9db9';
	}
}

function validateInput( form, nameStub, expr )
{
	var str = new String( form.elements[nameStub].value );
	if( str.length == 0 )
	{
		highlight( nameStub, false, 'field is required' );
		return false;
	}
	
	var regexp = new RegExp( expr );
	if( regexp.exec( str ) == null ) 
	{
		highlight( nameStub, false, 'invalid text' )
		return false;
	}
	else
	{
		highlight( nameStub, true, '' ); 
	}
	return true;
}

/*==============================================*/
// Specific validation routines

function validateNewsItem( form )
{
	var valid = true;
	if( validateCheckgroup( form.elements['newscentre[]'] ) == false ) valid = false;
	if( validateInput( form, 'title', '^[a-zA-Z0-9,. -]+$' ) == false ) valid = false;
	if( validateInput( form, 'posted', '^[0-9-]+$' ) == false ) valid = false;

	//validateInput( form, 'text', '^[a-zA-Z!-) -]+$' );	
	return valid;
}

/*function validateAddPage( form )
{
	var valid = true;
	if( validateInput( form, 'name', '^[a-zA-Z0-9-]+$' ) == false ) valid = false;
	if( validateInput( form, 'title', '^[a-zA-Z0-9?:., !-)-]+$' ) == false ) valid = false;
	return valid;
}*/

function validateMenu( form )
{
	var valid = true;
	if( validateInput( form, 'menuText', '^[a-zA-Z0-9\'?,. -]+$' ) == false ) valid = false;
	if( validateInput( form, 'order', '^[0-9]+$' ) == false ) valid = false;
	return valid;
}

function validateEvent( form )
{
	var valid = true;
	if( validateInput( form, 'title', '^[a-zA-Z0-9 ,.():?/!-]+$' ) == false ) valid = false;
	if( validateInput( form, 'date', '^[0-9]{4}-[0-9]{2}-[0-9]{2}$' ) == false ) valid = false;
	return valid;
}

function validateCaseStudy( form )
{
	var valid = true;
	if( validateInput( form, 'name', '^[a-zA-Z0-9 ,.()!-]+$' ) == false ) valid = false;
	return valid;
}

function validatePartner( form )
{
	var valid = true;
	if( validateInput( form, 'name', '^[a-zA-Z0-9 ,.()!-]+$' ) == false ) valid = false;
	return valid;
}


function validateDocumentUpload( form )
{
	var valid = true;
	if( validateInput( form, 'name', '^[a-zA-Z0-9 ,.()!:-]+$' ) == false ) valid = false;
	return valid;
}

function validateEditPage( form )
{
}

function validateDownloadItem( form )
{
}

function validateImageUpload( form )
{
}

function validateDocumentUpload( form )
{
}

function validateVideoUpload( form )
{
}

function validateVacancy( form )
{
}

function validateProject( form )
{
}

function validateNonMemberEvent( form )
{
	var valid = true;
	if( validateInput( form, 'tel', '^[a-zA-Z0-9 ,.!-):-]+$' ) == false ) valid = false;
	if( validateInput( form, 'email', '^[a-zA-Z0-9 ,.!-)@:-]+$' ) == false ) valid = false;
	return valid;
}
