// Funktionen, die im Formularen nützlich sind

// Entfernt alles ausser Ziffern aus einem Formularfeld
function onlyNumbers( field )
{
	if ( field.value.match( /[^0-9]/ ) ) // if-Abfrage wegen IE notwendig
		field.value = field.value.replace( /[^0-9]/, "" );
}

// aktiviert das nächste Feld, wenn das übergebene Feld gefüllt ist (Anzahl Zeichen = maxlength)
function skipToNextTextFieldWhenCompleted( field, e )
{
	if ( !e )
		e = window.event;
	if ( e && 
		( ( e.charCode > 0 && ( e.charCode<32 || e.charCode>63200 ) )
		|| ( e.keyCode > 0 && e.keyCode<32 ) ) )
		return;
	
	if ( field.value.length==field.maxLength ) {

		var input_fields = document.getElementsByTagName('input');
		
		for ( var i = 0; i < input_fields.length; i++ ) {
			if ( input_fields[i]==field ) {
				var next_field = input_fields[i+1];
				if ( next_field.type=='text' ) {
					next_field.focus();
					next_field.select();
				}
				break;
			}
		}
	}
}

// Sucht einen Text in einem Select-Feld und selektiert die Option. Gibt's nur einen
// Treffer, wird der Suchtext grün. Gibt's keinen Treffer, wird er rot.
function searchTextInSelect( textField, selectField, event )
{
	var options = selectField.options;

	var i;
	for ( i=0; i<options.length; ++i ) {

		// gefunden
		if ( options[i].text.indexOf( textField.value ) != -1 ) {
			options[i].selected = true;

			// einziger Treffer?
			var j;
			for ( j=i+1; j<options.length; ++j ) {
	
				// gefunden
				if ( options[j].text.indexOf( textField.value ) != -1 ) {
					textField.style.color = 'black';
					return;
				}
			}
			
			textField.style.color = 'green';
			return;
		}
	}
	
	textField.style.color = 'red';
}
