<!--

    function HTML_setLBValue( aListbox, sValue ) {
        for( var i = 0 ; i < aListbox.options.length ; ++i ) {
            if( aListbox.options[ i ].value == sValue ) {
                aListbox.selectedIndex = i;
                return true;
            }
        }
        return false;
    }

    function HTML_setLBSelectAll( aListbox ) {
        for( var i = 0 ; i < aListbox.options.length ; ++i ) {
            aListbox.options[ i ].selected = true;
        }
        return true;
    }

    function HTML_setLBDeselectAll( aListbox ) {
        for( var i = 0 ; i < aListbox.options.length ; ++i ) {
            aListbox.options[ i ].selected = false;
        }
        return true;
    }


    function HTML_alertAndFocus( aField, sMessage, bFocus ) {
        alert( sMessage );
        if( bFocus ) {
			aField.focus();
		}
    }

    function HTML_elementExists( aForm, sElementName ) {
        // alle Elemente des Formulars durchsuchen
        for( var i = 0 ; i < aForm.elements.length ; ++i ) {
            // Element hat den gesuchten Namen ?
            if( aForm.elements[ i ].name == sElementName )
                return true;
        }
        // nicht gefunden
        return false;
    }


    function HTML_toggleCheckbox( aCheckbox ) {
        if( parseInt( aCheckbox.value ) != -1 ) {
            aCheckbox.value = "-1";
        } else {
            aCheckbox.value = "0";
        }
    }


    function HTML_clearForm( aForm ) {
        for( var i = 0 ; i < aForm.elements.length ; ++i ) {
            var aElement = aForm.elements[ i ];

            if( aElement.type == "text" || aElement.type == "textarea" ) {
                aElement.value = "";
            }
        }
    }

    function HTML_clearAllForms() {
        for( var i = 0 ; i < document.forms.length ; ++i ) {
            HTML_clearForm( document.forms[ i ] );
        }
    }


    function HTML_checkForm( aForm ) {
        for( var i = 0 ; i < aForm.elements.length ; ++i ) {
            var aElement = aForm.elements[ i ];

            if( aElement.type == "text" || aElement.type == "textarea" ) {
                var bEmpty = ( 0 == aElement.value.length ),
                    bNullable = ( aElement.name.indexOf( "_NULL_" ) >= 0 );

                // Feld ist gefuellt oder darf nicht leer sein ?
                if( ! bEmpty || ! bNullable ) {
                    // Integer- Felder ueberpruefen
                    if( 0 == aElement.name.indexOf( "INT_" ) ) {
                        if( ! Number_isInt( aElement.value ) ) {
                            HTML_alertAndFocus( aElement, "Field must contain an integer", true );
                            return false;
                        }
                    // Float- Felder ueberpruefen
                    } else if( 0 == aElement.name.indexOf( "FLT_" ) ) {
                        if( ! Number_isFloat( aElement.value ) )
                        {
                            HTML_alertAndFocus( aElement, "Field must contan a floating point number", true );
                            return false;
                        }
                    // Datumsfelder ueberpruefen
                    } else if( 0 == aElement.name.indexOf( "DATE_" ) ) {
                        if( ! Date_isDate( aElement.value ) )
                        {
                            HTML_alertAndFocus( aElement, "Field must contain a date", true );
                            return false;
                        }
                    }

                    // nicht gefuelltes sonstiges Feld, welches gefuellt sein muesste ?
                    if( bEmpty && ! bNullable &&
                        ( ( 0 == aElement.name.indexOf( "STR_" ) ) ||
                          ( 0 == aElement.name.indexOf( "INT_" ) ) ||
                          ( 0 == aElement.name.indexOf( "FLT_" ) ) ||
                          ( 0 == aElement.name.indexOf( "DATE_" ) ) ||
                          ( 0 == aElement.name.indexOf( "TIME_" ) ) ) ) {
                        HTML_alertAndFocus( aElement, "Field must not be empty", true );
                        return false;
                    }
                }
            } else if ( aElement.type == "select-one" ) {
				// test if selection has to be set
                var bNullable = ( aElement.name.indexOf( "_NULL_" ) >= 0 );

                // nicht gefuelltes sonstiges Feld, welches gefuellt sein muesste ?
                if( ! bNullable &&
                    ( ( 0 == aElement.name.indexOf( "STR_" ) ) ||
                      ( 0 == aElement.name.indexOf( "INT_" ) ) ||
                      ( 0 == aElement.name.indexOf( "FLT_" ) ) ||
                      ( 0 == aElement.name.indexOf( "DATE_" ) ) ||
                      ( 0 == aElement.name.indexOf( "TIME_" ) ) ) &&
					"" == aElement.options[ aElement.selectedIndex ].value ) {
                    HTML_alertAndFocus( aElement, "Field must be set", true );
                    return false;
                }
		    }
        }

        return true;
    }

    function HTML_getFirstInputField( aForm ) {
        for( var i = 0 ; i < aForm.elements.length ; ++i ) {
            var aElement = aForm.elements[ i ];

            if( aElement.type == "text" || aElement.type == "textarea" || aElement.type == "password" ) {
                return aElement;
            }
        }

        return null;
    }

//-->