function clear_form_elements(ele) {
    $(ele).find(':input').each(function() {
        switch(this.type) {
            case 'password':
            case 'select-multiple':
            case 'select-one':
            case 'text':
            case 'textarea':
                $(this).val('');
                break;
            case 'checkbox':
            case 'radio':  this.checked = false;
        }
    });
}
var contactForm = function () {
    
    $("#frmContact").validate({
        
        "debug":true,
        "realTime": true,
        "rules": {
            name: "required",
            email: {
                required: true,
                email: true
            },
            company: "required",
            telephone: {
                required: true,
                minlength: 10
            },
            subject: "required",
            comments: "required",
            code: {required:true, remote: {url: "ajax/validcaptcha.php", type: "post"}}
        } ,
        "errorLabelContainer": $('#msgError')        ,
        "submitHandler": function(form) {
            $("#dim").fadeIn();
            $.ajax({
                type: "POST",
                url: 'send.php',
                code: '#txtCode' ,
                data: $(form).serialize() ,
                success: function (data){
                    if( data == 'OK' ) {
                        
                        clear_form_elements( '#frmContact' );
                        $("#sending_message").hide();
                        $("#sending_ok").show();
                        document.getElementById('imgcaptcha').src ='images/captchacode.png?' + Math.random(); 
                        
                    } else {
                        alert( data );
                    }
                }
            });
    },
    "messages": {
        name: "* Please enter your name<br />",
        company: "* Please enter your company<br />",
        telephone: {
            required: "* Please enter your telephone<br />",
            minlength: "* Please enter a valid telephone number<br />"
        },
        subject: "* Please enter a subject<br />",
        email: {
            required:"* Please enter your email<br />",
            email:"* Please enter a valid email<br />"
        },
        comments: "* Please enter your comments<br />",
        code: {
                    required: "* Please enter the security code<br />",
                    remote: "* Please enter the correct security code<br />"
                }
    }
});
}
