(function($){
    $.fn.contactable=function(options){
        var defaults={
            name:'Имя',
            email:'Email',
            message:'Message',
            recipient:'test@test.co.uk',
            subject:'A contactable message',
            recievedMsg:'Thankyou for your message',
            notRecievedMsg:'Sorry but your message could not be sent, try again later'
        };

        var options=$.extend(defaults,options);
        return this.each(function(options){
            $(this).html('<div id="contactable"></div><form id="contactForm" method="" action=""><div id="loading"></div><div id="callback"></div><div class="holder"><input type="hidden" id="recipient" name="recipient" value="'+defaults.recipient+'" /><input type="hidden" id="subject" name="subject" value="'+defaults.subject+'" /><p><label for="name">Имя <span class="white"> * </span></label><br /><input id="name" class="contact" name="name" /></p><p><label for="email">Эл.почта <span class="white"> * </span></label><br /><input id="email" class="contact" name="email" /></p><p><label for="comment">Ваш вопрос/предложение <span class="white"> * </span></label><br /><textarea id="comment" name="comment" class="comment" rows="4" cols="30" ></textarea></p><p><input class="submit" type="submit" value="Отправить"/></p></div></form>');
            $('div#contactable').toggle(function(){
                $('#overlay').css({
                    display:'block'
                });
                $(this).animate({
                    "marginLeft":"-=5px"
                },"fast");
                $('#contactForm').animate({
                    "marginLeft":"-=0px"
                },"fast");
                $(this).animate({
                    "marginLeft":"+=387px"
                },"slow");
                $('#contactForm').animate({
                    "marginLeft":"+=390px"
                },"slow")
            },function(){
                $('#contactForm').animate({
                    "marginLeft":"-=390px"
                },"slow");
                $(this).animate({
                    "marginLeft":"-=387px"
                },"slow").animate({
                    "marginLeft":"+=5px"
                },"fast");
                $('#overlay').css({
                    display:'none'
                })
            });
            $("#contactForm").validate({
                rules:{
                    name:{
                        required:true,
                        minlength:2
                    },
                    email:{
                        required:true,
                        email:true
                    },
                    comment:{
                        required:true
                    }
                },
                messages:{
                    name:"",
                    email:"",
                    comment:""
                },
                submitHandler:function(){
                    $('.holder').hide();
                    $('#loading').show();
                    $.get('mail.php',{
                        recipient:$('#recipient').val(),
                        subject:$('#subject').val(),
                        name:$('#name').val(),
                        email:$('#email').val(),
                        comment:$('#comment').val()
                    },function(data){
                        $('#loading').css({
                            display:'none'
                        });
                        if(data=='success'){
                            $('#callback').show().append(defaults.recievedMsg)
                        }else{
                            $('#callback').show().append(defaults.notRecievedMsg)
                        }
                    })
                }
            })
        })
    }
})(jQuery);
