function checkValue(checkField,value,displayDiv){
	document.getElementById(displayDiv).style.display = (document.getElementById(checkField).value == value) ? 'block' : 'none';
}

function clearInput(id) {
    $(id).find(':input').each(function() {
        switch(this.type) {
            case 'password':
            case 'select-multiple':
            case 'select-one':
            case 'text':
            case 'textarea':
                $(this).val('');
                break;
            case 'checkbox':
            case 'radio':
                this.checked = false;
        }
    });
}

function radioOnClick(field,message){
	document.getElementById(field).checked = true;
	alert(message);
}

function setStations(field1,field2) {
	var field = document.getElementById(field1).value;
	for (var i = 2; i < 9; i++) {
		node = document.getElementById(field2+i);
		if (i <= field) {
			node.style.display = 'inline';
		}
		else {
			node.style.display = 'none';
			node.value = '';
		}
	}
}

function fillInField(fromField,toField1,toField2){
	if (document.getElementById(toField1).value == '') 
		document.getElementById(toField1).value = document.getElementById(fromField).value;
	if (toField2 > '' && document.getElementById(toField2).value == '') 
		document.getElementById(toField2).value = document.getElementById(fromField).value;
}

function fillInResult(text) {
	document.getElementById('result').innerHTML = text;
}

function fillInResult1(text) {
	document.getElementById('result1').innerHTML = text;
}

function setDisplay(div1,status1,div2,status2){
	document.getElementById(div1).style.display=status1;
	if (div2 > '') document.getElementById(div2).style.display=status2;
}

function setDisplayIfChecked(div,field,number){
	var isChecked = false;
	if (number == 0) {
		if (document.getElementById(field).checked == true) isChecked = true;
	}
	else {
		for (var i = 1; i <= number; i++) {
			if (document.getElementById(field+i).checked == true) isChecked = true;
		}
	}
	document.getElementById(div).style.display = (isChecked == true) ? 'block' : 'none';	
}
function setDisplayIfNotChecked(div,field,number,count){
	var checkedCount = 0;
	for (var i = 1; i <= number; i++) {
		if (document.getElementById(field+i).checked == true) checkedCount++;
	}
	document.getElementById(div).style.display = (checkedCount < count) ? 'block' : 'none';
}
function getValueFromRadio(form,name){
	node = document.forms[form].elements[name];
	radioLength = node.length;
	for(var i = 0; i < radioLength; i++) {
		if(node[i].checked) return node[i].value;
	}
	return "";
}
function getValueFromSelect(form,name){
	node = document.forms[form].elements[name];
	return node.options[node.selectedIndex].value;
}

function openHelp(){
	mywindow = window.open("help_s260.htm", "help_s260", "status=no, scrollbars=yes, width=600, height=300");
	mywindow.moveTo(25,25);
} 

function initBF(errors) {
	setDisplay('main','block');
	if(typeof(errors) == 'object') {
		for(var index in errors) {
			if(typeof(index) == 'string') {
				var node = document.getElementById(index.slice(0,4)+'div');
				if(node != undefined) {
					node.style.border = '4px solid #FF0000';
					node.style.backgroundColor = '#FFFFFF';
				}
			}
		}
	}
}

function myHelp(div) {
	node = document.getElementById(div);
	node.style.display = (node.style.display == 'block') ? 'none' : 'block';
	function closeMyHelp() {
		setDisplay(div,'none');
	}
	setTimeout(closeMyHelp,10000);
}

function myPopUp(img) {
	node = document.getElementById('popup');
	if (img > '') {
		document.getElementById('popupImage').src = "pictures/"+img;
		node.style.display = 'block';
	}
	else node.style.display = 'none';
}

function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  return new XMLHttpRequest();
  }
if (window.ActiveXObject)
  {
  // code for IE6, IE5
  return new ActiveXObject("Microsoft.XMLHTTP");
  }
return null;
}

////////////////
//EVENT SYSTEM
////////////////

var LoadEvent = {};
LoadEvent.COMPLETE = 'LoadEvent.COMPLETE';

var _listeners = [];
function addEventListener(event,listener) {
	removeEventListener(event,listener);
	_listeners.push({event:event,listener:listener});
}
function removeEventListener(event,listener) {
	for(var index in _listeners) {
		if(_listeners[index].event == event && _listeners[index].listener == listener) {
			delete _listeners[index];
		}
	}
}
function invokeEventListener(event) {
	for(var index in _listeners) {
		if(_listeners[index].event == event) {
			_listeners[index].listener(event);
		}
	}
}

window.onload = function() { invokeEventListener(LoadEvent.COMPLETE); }
