$().ready(function() {
    // validate signup form on keyup and submit
    $("#contactForm").validate({
        rules: {
            name: "required",
            enquiry: "required",
            telephone: {
                required: true,
                telephone: true
            },
            email_address: {
                required: true,
                email: true
            }

        },
        messages: {
            name: "Please enter your name",
            enquiry: "Please enter your enquiry",
            telephone: {
                required: "Please enter your phone number",
                telephone: "Please enter a valid phone number"
            },
            email_address: {
                required: "Please enter your email address",
                email: "Please enter a valid email address"
            }
        }
    });
    
    $("#accordion").accordion({ header: "h4", autoHeight: false, collapsible: true, navigation: true,animated:'customslide'});
    
    $.extend($.ui.accordion.animations, {
      customslide: function(options) {
        $.ui.accordion.animations.slide(options, { duration: 500 }); }
      });
    
    $('#map').children('a').click(function(event){
        event.preventDefault();

        var parent = $(this).closest('div'),
        child = $('#mapbox', parent);

        if (child.is(':hidden')) {
          	$('#mapbox').show("slide", { direction: "up" }, 1000, function(){
          	    $("#textMap").text("Click to close the map");
          	});
      	
        	initialize();
        } else {
          $('#mapbox').hide("slide", { direction: "up" }, 1000, function(){
              $("#textMap").text("Click to find us on a map");
          }); 
        }
    });
    
    $('#map a.closemap').click(function(event){
        event.preventDefault();

        var parent = $(this).closest('div'),
        child = $('#mapbox', parent);
        
        $('#mapbox').hide("slide", { direction: "up" }, 1000, function(){
              $("#textMap").text("Click to find us on a map");
          });
    });
});