function ValidateForm(submitform, fields, characters) {
    var arr = fields.split(",");
    var errors = 0;
    var errorStack = '';
    var fromDay = '';
    var fromMonth = '';
    var fromYear = '';
    var toDay = '';
    var toMonth = '';
    var toYear = '';
    
    for (var i in arr) {
        var fieldValue = document.getElementsByName(arr[i])[0].value;
        var fieldLenght = fieldValue.length;
        
        if (arr[i] == 'date1') {
            var date1split = fieldValue.split("/");
            for (var c in date1split) {
                if (c == 0) {
                    fromDay = date1split[c];
                }
                if (c == 1) {
                    fromMonth = date1split[c];
                }
                if (c == 2) {
                    fromYear = date1split[c];
                }
            }
        }
        
        if (arr[i] == 'date2') {
            var date2split = fieldValue.split("/");
            for (var b in date2split) {
                if (b == 0) {
                    toDay = date2split[b];
                }
                if (b == 1) {
                    toMonth = date2split[b];
                }
                if (b == 2) {
                    toYear = date2split[b];
                }
            }
        }
        
        if (fieldLenght < characters) {
            errors = 1;
            errorStack += 'Feltet `' + arr[i] + '` er ikke korrekt udfyldt. ' + characters + ' tegn påkrævet som minimum. \n';
        }
    }
    
    if (fromDay != '') {
        if (fromDay > toDay) {
                errors = 1;
                errorStack += 'Fejl: Du kan ikke booke tilbage i tiden. \n';
        }
        if (fromMonth > toMonth) {
                errors = 1;
                errorStack += 'Fejl: Du kan ikke booke tilbage i tiden. \n';
                
                fromDay = '';
        }
    }
    
    if (errors == 1) {
        alert(errorStack);
    }
    
    if (errors == 0) {
        document.forms[submitform].submit();
    }
}
