var W3CDOM = (document.createElement && document.getElementsByTagName);
var redirectTimer=15;



var focusInInput = false;

$(function(){
	$('input,textarea')
		.focus(function(){focusInInput = true})
		.blur(function(){focusInInput = false});
				
				
	$(document).keydown(function(event){
		var link;
		if (!document.getElementById) return;
		if (window.event) event = window.event;
		if ((event.ctrlKey || event.altKey || true) && !focusInInput){
			var link = null;
			var href = null;
			switch (event.keyCode ? event.keyCode : event.which ? event.which : null){
				case 0x24:
					link = document.getElementById ('HomeLink');
					break;
				case 0x25:
					link = document.getElementById ('PrevLink');
					break;
				case 0x26:
					link = document.getElementById ('UpLink');
					break;
				case 0x27:
					link = document.getElementById ('NextLink');
					break;
				case 0x28:
					link = document.getElementById ('DownLink');
					break;
			}		
			if (link && link.href) document.location = link.href;
		}
	});
 });

function goTo(URL, target){
	if(target==null) target='parent';
	if(navigator.appName=="Netscape") eval('window.'+target+'.location = "'+URL+'"');
	else eval('window.'+target+'.navigate("'+URL+'")');
}

function checkFields(elmts, rules){
var valid = true;
var errorMessage = [];
elmts.reverse();
rules.reverse();

elmts.each(function(elmt, index){
	$('label_'+elmt).removeClassName('error');
	if(typeof rules[index][0] == 'object' ) {
		for(ind=0; ind<rules[index][0].length; ind++){
				if(eval(rules[index][0][ind])) {
					$('label_'+elmt).addClassName('error');
					valid=false;
					$(elmt).activate();
					errorMessage[errorMessage.length] = rules[index][1][ind];
					break;
				}
		  }
		}
	else if(eval(rules[index][0])) {
		$('label_'+elmt).addClassName('error');
		valid=false;
		$(elmt).activate();
		errorMessage[errorMessage.length] = rules[index][1];
	}
		
});

errorMessage.reverse();
	
return [valid, errorMessage];
}

function checkEmail(eMail){
var pattern1 = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}([\w-]+\.)+[a-zA-Z]{2,7}$/;
var pattern2 = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
return (pattern1.test(eMail) || pattern2.test(eMail));
}

function redirectToURL(url){
	if( redirectTimer == 0 ) {
		goTo(url);		
	} else {
		$('timerContainer').innerHTML = redirectTimer;
		setTimeout("redirectToURL('"+url+"')", 1000);
		redirectTimer--;
	}
}


function selectAllRows(){
var elmts = $A(document.getElementsByClassName('rowSelect'));
elmts.each(function(elmt, index){elmt.checked = $('rowSelectAll').checked});
}
