$(document).ready(function(){
    /* Loading Screen */
    var sWidth = $(window).width();
    var lPos = (sWidth/2)-100;
    $("#overlay").css('height', $(document).height()+'px');
    $("#loading").css('left', lPos+'px');
    
    $(window).resize(function(){
        $("#overlay").css('width', $(document).width()+'px' );
    });
    
    $(window).scroll(function(){
        $("#loading").css('top', $(document).scrollTop()+250+'px');
    });

    $("#loading").ajaxStart(function(){
        $("#overlay").show();
        $(this).fadeIn();
    });

    $("#loading").ajaxStop(function(){
        $(this).fadeOut('fast');
        $("#overlay").fadeOut('fast');
    });
    
    /* Accordion Control */
    $('.accordion-toggle').click(function(){
        if( $(this).next().is(':hidden') ){
            $('.accordion-toggle').next().slideUp('fast');
            $('.accordion-toggle').removeClass('accordion-expanded');
            $('.accordion-toggle').addClass('accordion-collapsed');
            
            $(this).removeClass('accordion-collapsed');
            $(this).addClass('accordion-expanded');
            $(this).next().slideDown('fast');
        } else {
            $(this).removeClass('accordion-expanded');
            $(this).addClass('accordion-collapsed');
            $(this).next().slideUp('fast');
        }
        return false;
    });
    
    $('.accordion-toggle2').click(function(){
        if( $(this).next('.accordion-content2').is(':hidden') ){
            $('.accordion-toggle2').next('.accordion-content2').slideUp('fast');
            $('.accordion-toggle2').removeClass('accordion-expanded');
            $('.accordion-toggle2').addClass('accordion-collapsed');
            
            $(this).removeClass('accordion-collapsed');
            $(this).addClass('accordion-expanded');
            $(this).next('.accordion-content2').slideDown('fast');
        } else {
            $(this).removeClass('accordion-expanded');
            $(this).addClass('accordion-collapsed');
            $(this).next('.accordion-content2' ).slideUp('fast');
        }
        return false;
    });
    
    $('.accordion-toggle3').click(function(){
        if( $(this).next('.accordion-content3').is(':hidden') ){
            $('.accordion-toggle3').next('.accordion-content3').slideUp('fast');
            $('.accordion-toggle3').removeClass('accordion-expanded');
            $('.accordion-toggle3').addClass('accordion-collapsed');
            
            $(this).removeClass('accordion-collapsed');
            $(this).addClass('accordion-expanded');
            $(this).next('.accordion-content3').slideDown('fast');
        } else {
            $(this).removeClass('accordion-expanded');
            $(this).addClass('accordion-collapsed');
            $(this).next('.accordion-content3' ).slideUp('fast');
        }
        return false;
    });
    
    /* Begin Processing Contact Form */
    $('#submit_contact').click(function(){
        var firstname       =  $('#firstname').val();
        var lastname        =  $('#lastname').val();
        var email           =  $('#email').val();
        var phone           =  $('#phone').val();
        var procedure       =  $('#procedure').val();
        var message         =  $('#message').val();
        var err             = new Array(  );
        var email_pattern   = /^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
        var num_pattern     = /^([0-9])+$/;
        var err_string      = '';
        
        if( firstname=='' ){
            err.push("First Name is required\n");
        }
        if( lastname=='' ){
            err.push("Last Name is required\n");
        }
        if( email=='' ){
            err.push("Email is required\n");
        } else if ( !email_pattern.test(email) ){
            err.push("Email is invalid\n");
        }
        if( phone=='' ){
            err.push("Contact no. is required\n");
        } else if ( !num_pattern.test(phone) ){
            err.push("Contact no. is invalid\n");
        }
        
        if( $("#agree").is(":checked") == false ){
            err.push("You must agree with our Terms of Use");
        }
        for( var i=0; i<err.length; i++ ){
            err_string += err[i];
        }
        
        if( err.length>0 ){
            alert(err_string);
            return false;
        }
        
        var dataString = 'firstname='+firstname+'&lastname='+lastname+'&email='+email+'&phone='+phone+'&procedure='+procedure+'&message='+message;
        $.ajax({
            type: "POST",
            url: "bin/process.php",
            data: dataString,
            success: function(responseText) {
                alert(responseText);
            }
        });
        
        return false;
    });
    
    $('#message').focus(function(){
        if( $(this).val()== 'Please type your message here.' ){
            $(this).val('');
        }
    });
    
    $('#message').blur(function(){
        if( $(this).val()== '' ){
            $(this).val('Please type your message here.');
        }
    });
});