$(document).ready(function() {
	// validate signup form on keyup and submit
	var validator = $("#signupform").validate({
		rules: {
			firma: {
                                required: true,
                                minlength: 3
                        },
			name: {
                                required: true,
                                minlength: 5
                        },
			strasse: {
                                required: true,
                                minlength: 5
                        },
                        plz: {
                                required: true,
                                min: 1000,
                                max: 9999
                        },
			ort: {
                                required: true,
                                minlength: 3
                        },
                        bunland: {
                                required: true,
                                min: 1
                        },
			handyvorwahl: {
				required: false,
                                minlength: 4,
                                remote: {
                                  url: "functions/check_telefonnummern.php?check=HV",
                                  type: "get",
                                  data: {
                                    handyvorwahl: function() {
                                     return $("#handyvorwahl").val();
                                    }
                                  }
                                } 
			},
			handynummer: {
				required: false,
                                minlength: 6,
                                remote: {
                                  url: "functions/check_telefonnummern.php?check=HN",
                                  type: "get",
                                  data: {
                                    handynummer: function() {
                                     return $("#handynummer").val();
                                    }
                                  }
                                } 
			},
			festnetzvorwahl: {
				required: false,
                                minlength: 2,
                                remote: {
                                  url: "functions/check_telefonnummern.php?check=FNV",
                                  type: "get",
                                  data: {
                                    festnetzvorwahl: function() {
                                     return $("#festnetzvorwahl").val();
                                    }
                                  }
                                } 
			},
			festnetznummer: {
				required: false,
                                minlength: 3,
                                remote: {
                                  url: "functions/check_telefonnummern.php?check=FNN",
                                  type: "get",
                                  data: {
                                    festnetznummer: function() {
                                     return $("#festnetznummer").val();
                                    }
                                  }
                                } 
			},
			faxvorwahl: {
				required: false,
                                minlength: 2,
                                remote: {
                                  url: "functions/check_telefonnummern.php?check=FXV",
                                  type: "get",
                                  data: {
                                    faxvorwahl: function() {
                                     return $("#faxvorwahl").val();
                                    }
                                  }
                                } 
			},
			faxnummer: {
				required: false,
                                minlength: 3,
                                remote: {
                                  url: "functions/check_telefonnummern.php?check=FXN",
                                  type: "get",
                                  data: {
                                    faxnummer: function() {
                                     return $("#faxnummer").val();
                                    }
                                  }
                                } 
			},
			mail: {
				required: true,
                                minlength: 7,
				email: true
			},
			fund: {
				required: true

			}
		},
		messages: {
			firma: {
                                required: "Bitte Ihren Firmennamen eingeben",
                                minlength: jQuery.format("Bitte mindestens {0} Zeichen eingeben")
                        },
			name: {
                                required: "Bitte geben Sie Ihren Namen ein",
                                minlength: jQuery.format("Bitte mindestens {0} Zeichen eingeben")
                        },
			strasse: {
                                required: "Bitte geben Sie Ihre Straße ein",
                                minlength: jQuery.format("Bitte mindestens {0} Zeichen eingeben")
                        },
                        plz: {
                                required: "Bitte geben Sie Ihre Postleitzahl ein",
                                min: "Bitte geben Sie Ihre Postleitzahl richtig ein",
                                max: "Bitte geben Sie Ihre Postleitzahl richtig ein"
                        },
			ort: {
                                required: "Bitte geben Sie Ihren Ort ein",
                                minlength: jQuery.format("Bitte mindestens {0} Zeichen eingeben")
                        },
                        bunland: {
                                required: "Bitte wählen Sie Ihr Bundesland aus",
                                min: "Bitte wählen Sie Ihr Bundesland aus"
                        },
			handyvorwahl: {
                                minlength: "&nbsp;",
				remote: "&nbsp;"
			},

			handynummer: {
                                minlength: "&nbsp;",
				remote: "&nbsp;"
			},

			festnetzvorwahl: {
                                minlength: "&nbsp;",
				remote: "&nbsp;"
			},

			festnetznummer: {
                                minlength: "&nbsp;",
				remote: "&nbsp;"
			},

			faxvorwahl: {
                                minlength: "&nbsp;",
				remote: "&nbsp;"
			},

			faxnummer: {
                                minlength: "&nbsp;",
				remote: "&nbsp;"
			},
			mail: {
				required: "Bitte Ihre E-Mail-Adresse eingeben",
				minlength: "Die E-Mail-Adresse ist zu kurz",
                                email: "Bitte eine gültige E-Mail-Adresse eingeben"
			},
			fund: {
				required: "Wie haben Sie uns gefunden?",
				minlength: "Wie haben Sie uns gefunden?"
			}
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) {
			if ( element.is(":radio") )
				error.appendTo( element.parent().next().next() );
			else if ( element.is(":checkbox") )
				error.appendTo ( element.parent().next() );
			else
				error.appendTo( element.parent().next() );
		},

		// set this class to error-labels to indicate valid fields
		success: function(label) {
			// set &nbsp; as text for IE
			label.html("&nbsp;").addClass("checked");
		}
	});


});

