$(document).ready(function(){
/* ### Beginn ### */
/* Calender */
                $("#datevon").datepicker({showOn: 'button', buttonImage: 'images/calendar.jpg', buttonImageOnly: true, dateFormat: 'dd.mm.yy'});
                $("#datebis").datepicker({showOn: 'button', buttonImage: 'images/calendar.jpg', buttonImageOnly: true, dateFormat: 'dd.mm.yy'});
/* Lightbox */
	$('.gallery a').lightBox({
		overlayBgColor: '#f9d4a7'						 
	});
	$('.wohnenbg a').lightBox({
		overlayBgColor: '#f9d4a7'						 
	});
/* Slideshow */
        $('#imageContainer').cycle({
            fx:    'fade',
                randomizeEffects: true,
            speed:  2500
    });

/* Popup Fenster */
        $('.popup').click(function(){
            open(this.href, 'f', 'height=400, width=400, resizable=yes, scrollbars=no');
                return false;
        });
/* Mousover Galerie */
   $("#mylink a").hover(function(){
       var largePath = $(this).attr("href");
       $("#bild").attr({ src: largePath });
       return false;
   });
   $("#mylink a").click(function(){
       var largePath = $(this).attr("href");
       $("#bild").attr({ src: largePath });
       return false;
   });
/* PDF Dateien mit Image versehen */
   $('a[href$=pdf]').addClass('pdf');
/* Zebra */
   $('#zebra tr:nth-child(even)').addClass('gerade');
/* Blur */
   $('a').attr('onfocus','if(this.blur)this.blur()');

jQuery.validator.addMethod("phoneDE", function(phone_number, element) {
    phone_number = phone_number.replace(/\s+/g, "");
        return this.optional(element) || phone_number.length > 8 && phone_number.match(/^[\d\/\\\s+-]+$/);
}, "Please specify a valid phone number");
jQuery.validator.addMethod("vornachname", function(value, element) {
        return this.optional(element) || /^[a-z-A-Z-.,()'\s\"äöüÄÖÜß]+$/i.test(value);
}, "Letters or punctuation only please");
jQuery.validator.addMethod("woerter", function(value, element) {
        return this.optional(element) || /^[a-z-A-Z-.,()';\d\s\"äöüÄÖÜß]+$/i.test(value);
}, "Letters or punctuation only please");
    // validate signup form on keyup and submit
    var validator = $("#signupform").validate({
        rules: {
            r_name: {
                                required: true,
                                minlength: 5,
                                vornachname: true
                        },
                        tel: {
                                required: true,
                                minlength: 5,
                                phoneDE: true
                        },
                        fax: {
                                maxlength: 30,
                                phoneDE: true,
                                required: false
                        },
                        strasse: {
                                maxlength: 200,
                                required: false
                        },
                        plz: {
                                maxlength: 200,
                                required: false
                        },
            ort: {
                required: true,
                email: true
            },
            datevon: {
                                required: false,
                                maxlength: 10,
                                dateDE: true
                        },
            datebis:  {
                                required: false,
                                maxlength: 10,
                                dateDE: true
                        },
                        sonderwuensche: {
                                required: false,
                                woerter: true
                        },
                        erwachsene: {
                                number: true
                        },
                        kinder: {
                                number: true
                        },
                        alterkinder: {
                                required: false,
                                maxlength: 20
                        }
        },
        messages: {
            r_name: {
                                required: " ",
                                minlength: " ",
                                vornachname: " "
                        },
            tel: {
                                required: " ",
                                minlength: " ",
                                phoneDE: " "
                        },
            fax: {
                maxlength: " ",
                phoneDE: " ",
                                required: " "
            },
                        strasse: {
                                maxlength: " ",
                                required: " "
                        },
                        plz: {
                                maxlength: " ",
                                required: " "
                        },
            ort: {
                required: " ",
                email: " "
            },
            datevon: {
                                required: " ",
                                maxlength: " ",
                                dateDE: " "
                        },
            datebis: {
                                required: " ",
                                maxlength: " ",
                                dateDE: " "
                        },
                        sonderwuensche: {
                                required: " ",
                                woerter: " "
                        },
                        erwachsene: {
                                number: " "
                        },
                        kinder: {
                                number: " "
                        },
                        alterkinder: {
                                required: "",
                                maxlength: ""
                        }
        },
        // 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.next() );
            else
                error.appendTo( element.parent().next() );
        },
        // specifying a submitHandler prevents the default submit, good for the demo
        submitHandler: function(form) {
            form.submit();

        },
        // set this class to error-labels to indicate valid fields
        success: function(label) {
            // set   as text for IE
            label.html(" ").addClass("checked");
        }
    });


/* ### Ende ### */
});
