function createFormObjects_dta_daa_enquire_part01_v2( formNode ) {
    return createFormObjects_dta_daa_enquire_part01( formNode );
}
function createFormObjects_dta_daa_enquire_part01( formNode ) {
    var formObjectsArray = new Array(0);
    if( formNode != null ) {
        // nights, ArrivalDay, ArrivalMonth, ArrivalYear, DepartureDay, DepartureMonth, DepartureYear

        var durationNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "nights" )[0];

        var fromDayNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "ArrivalDay" )[0];
        var fromMonthNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "ArrivalMonth" )[0];
        var fromYearNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "ArrivalYear" )[0];

        var toDayNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "DepartureDay" )[0];
        var toMonthNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "DepartureMonth" )[0];
        var toYearNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "DepartureYear" )[0];

        var duration = new ValidatorNumber( new FormNode( durationNode ), 1, 60 );

        var fromDate = new ValidatorDateMulti(
                        new FormNode( fromDayNode ),
                        new FormNode( fromMonthNode ),
                        new FormNode( fromYearNode ),
                        new Date(),
                        null,
                        0 );

        var toDate = new ValidatorDateMulti(
                        new FormNode( toDayNode ),
                        new FormNode( toMonthNode ),
                        new FormNode( toYearNode ),
                        new Date(),
                        null,
                        0 );


        formObjectsArray.push( duration );
        formObjectsArray.push( new ValidatorDateRangeDuration( fromDate, toDate, duration ) );

    }
    return formObjectsArray;
};

function createFormObjects_dta_daa_enquire_part03_v2( formNode ) {
    return createFormObjects_dta_daa_enquire_part03( formNode );
}
function createFormObjects_dta_daa_enquire_part03( formNode ) {
    var formObjectsArray = new Array(0);

    if( formNode != null ) {

        var nameMinLength = 3;
        var nameMaxLength = 32;

	    var salutationNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "salutation" );
        if( salutationNodes != null && salutationNodes.length > 0 ) {
            for( var i = 0; i < salutationNodes.length; i++ ) {
                var nextNode = salutationNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }

        var firstNameNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "firstname" );
        if( firstNameNodes != null && firstNameNodes.length > 0 ) {
            for( var i = 0; i < firstNameNodes.length; i++ ) {
                var nextNode = firstNameNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), nameMinLength, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }

        var lastNameNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "lastname" );
        if( lastNameNodes != null && lastNameNodes.length > 0 ) {
            for( var i = 0; i < lastNameNodes.length; i++ ) {
                var nextNode = lastNameNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), nameMinLength, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }

        var countryNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "country" );
        if( countryNodes != null && countryNodes.length > 0 ) {
            for( var i = 0; i < countryNodes.length; i++ ) {
                var nextNode = countryNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, 2 );
                formObjectsArray.push( nextFormObject );
            }
        }

        var emailFormNode = null;
        var emailNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "email" );
        if( emailNodes != null && emailNodes.length > 0 ) {
            for( var i = 0; i < emailNodes.length; i++ ) {
                var nextNode = emailNodes[i];
                emailFormNode = new FormNode( nextNode );
                var nextFormObject = new ValidatorEMail( emailFormNode );
                formObjectsArray.push( nextFormObject );

            }
        }

        if( emailFormNode != null ) {
            var emailConfirmationNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "email_confirmation" );
            if( emailConfirmationNodes != null && emailConfirmationNodes.length > 0 ) {
                for( var i = 0; i < emailConfirmationNodes.length; i++ ) {
                    var nextNode = emailConfirmationNodes[i];
                    var nextFormObject = new ValidatorEqualNodeValue( new FormNode( nextNode ), emailFormNode );
                    formObjectsArray.push( nextFormObject );
                }
            }
        }

    }

    return formObjectsArray;
};

function createFormObjects_dta_daa_directEnquire_v2( formNode ) {
    return createFormObjects_dta_daa_directEnquire( formNode );
}
function createFormObjects_dta_daa_directEnquire( formNode ) {

    var formObjectsArray = new Array(0);

    if( formNode != null ) {

        var durationNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "nights" )[0];

        var fromDayNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "ArrivalDay" )[0];
        var fromMonthNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "ArrivalMonth" )[0];
        var fromYearNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "ArrivalYear" )[0];

        var toDayNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "DepartureDay" )[0];
        var toMonthNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "DepartureMonth" )[0];
        var toYearNode = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "DepartureYear" )[0];

        var duration = new ValidatorNumber( new FormNode( durationNode ), 1, 60 );

        var fromDate = new ValidatorDateMulti(
                        new FormNode( fromDayNode ),
                        new FormNode( fromMonthNode ),
                        new FormNode( fromYearNode ),
                        new Date(),
                        null,
                        -1 );

        var toDate = new ValidatorDateMulti(
                        new FormNode( toDayNode ),
                        new FormNode( toMonthNode ),
                        new FormNode( toYearNode ),
                        new Date(),
                        null,
                        -1 );

        formObjectsArray.push( duration );
        formObjectsArray.push( new ValidatorDateRangeDuration( fromDate, toDate, duration ) );

        var nameMinLength = 3;
        var nameMaxLength = 32;

	    var salutationNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "salutation" );
        if( salutationNodes != null && salutationNodes.length > 0 ) {
            for( var i = 0; i < salutationNodes.length; i++ ) {
                var nextNode = salutationNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }

        var firstNameNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "firstname" );
        if( firstNameNodes != null && firstNameNodes.length > 0 ) {
            for( var i = 0; i < firstNameNodes.length; i++ ) {
                var nextNode = firstNameNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), nameMinLength, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }

        var lastNameNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "name" );
        if( lastNameNodes != null && lastNameNodes.length > 0 ) {
            for( var i = 0; i < lastNameNodes.length; i++ ) {
                var nextNode = lastNameNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), nameMinLength, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }

        var countryNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "country" );
        if( countryNodes != null && countryNodes.length > 0 ) {
            for( var i = 0; i < countryNodes.length; i++ ) {
                var nextNode = countryNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, 2 );
                formObjectsArray.push( nextFormObject );
            }
        }

        var emailFormNode = null;
        var emailNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "email" );
        if( emailNodes != null && emailNodes.length > 0 ) {
            for( var i = 0; i < emailNodes.length; i++ ) {
                var nextNode = emailNodes[i];
                emailFormNode = new FormNode( nextNode );
                var nextFormObject = new ValidatorEMail( emailFormNode );
                formObjectsArray.push( nextFormObject );

            }
        }

        if( emailFormNode != null ) {
            var emailConfirmationNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "email_confirmation" );
            if( emailConfirmationNodes != null && emailConfirmationNodes.length > 0 ) {
                for( var i = 0; i < emailConfirmationNodes.length; i++ ) {
                    var nextNode = emailConfirmationNodes[i];
                    var nextFormObject = new ValidatorEqualNodeValue( new FormNode( nextNode ), emailFormNode );
                    formObjectsArray.push( nextFormObject );
                }
            }
        }

    }

    return formObjectsArray;
};

function createFormObjects_dta_daa_poolenquire( formNode ) {
    return createFormObjects_dta_daa_directEnquire( formNode );
};
function createFormObjects_dta_daa_poolenquire_v2( formNode ) {
    return createFormObjects_dta_daa_poolenquire( formNode );
};

function createFormObjects_dta_daa_ccc_enquiryedit_v2( formNode ) {
    var formObjectsArray = new Array(0);
    if( formNode != null ) {
        var part01 = createFormObjects_dta_daa_enquire_part01_v2( formNode );
        var part03 = createFormObjects_dta_daa_enquire_part03_v2( formNode );
        formObjectsArray = mergeArrays( part01, part03 );                
    }
    return formObjectsArray;
};


function createFormObjects_dta_dba_checkout_customer( formNode ) {
    var formObjectsArray = new Array(0);

    if( formNode != null ) {

        var nameMinLength = 2;
        var nameMaxLength = 64;

        var firstNameNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "firstname" );
        var lastNameNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "name" );
        var emailNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "email" );
        //var phoneNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "phone" );

        var zipNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "zip" );
        var cityNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "city" );
        var countryNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_SELECT, "name", "country" );
        var streetNodes = getNodesWithNameAndAttributeValue( formNode, FormNodeMetadata.ELEMENT_INPUT, "name", "street" );


        if( firstNameNodes != null && firstNameNodes.length > 0 ) {
            for( var i = 0; i < firstNameNodes.length; i++ ) {
                var nextNode = firstNameNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), nameMinLength, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }
        if( lastNameNodes != null && lastNameNodes.length > 0 ) {
            for( var i = 0; i < lastNameNodes.length; i++ ) {
                var nextNode = lastNameNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), nameMinLength, nameMaxLength );
                formObjectsArray.push( nextFormObject );
            }
        }
        if( emailNodes != null && emailNodes.length > 0 ) {
            for( var i = 0; i < emailNodes.length; i++ ) {
                var nextNode = emailNodes[i];
                var nextFormObject = new ValidatorEMail( new FormNode( nextNode ) );
                formObjectsArray.push( nextFormObject );
            }
        }

        /*if( phoneNodes != null && phoneNodes.length > 0 ) {
            for( var i = 0; i < phoneNodes.length; i++ ) {
                var nextNode = phoneNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 5, 32 );
                formObjectsArray.push( nextFormObject );
            }
        }*/

        if( zipNodes != null && zipNodes.length > 0 ) {
            for( var i = 0; i < zipNodes.length; i++ ) {
                var nextNode = zipNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, 8 );
                formObjectsArray.push( nextFormObject );
            }
        }

        if( cityNodes != null && cityNodes.length > 0 ) {
            for( var i = 0; i < cityNodes.length; i++ ) {
                var nextNode = cityNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, 64 );
                formObjectsArray.push( nextFormObject );
            }
        }

        if( countryNodes != null && countryNodes.length > 0 ) {
            for( var i = 0; i < countryNodes.length; i++ ) {
                var nextNode = countryNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, 24 );
                formObjectsArray.push( nextFormObject );
            }
        }

        if( streetNodes != null && streetNodes.length > 0 ) {
            for( var i = 0; i < streetNodes.length; i++ ) {
                var nextNode = streetNodes[i];
                var nextFormObject = new ValidatorText( new FormNode( nextNode ), 2, 64 );
                formObjectsArray.push( nextFormObject );
            }
        }

    }

    return formObjectsArray;
};

