$(document).ready(function() { 
    if ($('#bo').val() == 'vps') {
        // ...activate the link
        //$('#Map2').click(function() {
            //var sForward = 'http://www.voicepundit.com/VPShop/VSContainer.swf?module=signup2&state=portal' ;
            //window.location.replace(sForward) ;
        //}) ;
    }
    else if ($('#bo').val() == 'a2b' || $('#bo').val() == 'a2b1.4') {
    var CAPTCHA_VERIFIED = false ;
    // ...custom validator method to check captcha
    function checkCaptcha(value) {
        // ...if it has been verified once, all's good
        if (CAPTCHA_VERIFIED) {
            return true ;
        }

        var ds = 'recaptcha_challenge_field='+$('#recaptcha_challenge_field').val() ;
        ds += '&recaptcha_response_field='+$('#recaptcha_response_field').val() ;

        var sReturn =  $.ajax ({
            type:"GET",
            url: "ajax.recaptcha.php",
            data: ds,
            async: false
        }).responseText ;
        return CAPTCHA_VERIFIED = (sReturn == 'true') ;
    }
    // ...validate form on submit 
    function validateSignup() {
        $.validator.addMethod("captcha", function(value, element) {
            return checkCaptcha() ;
        }, " ") ;

        return $("#signupform").validate({ 
        rules: { 
            vp_su_fname: "required", 
            vp_su_lname: "required", 
            vp_su_pwd: { 
                required: true, 
                minlength: 5 
            }, 
            vp_su_pwd2: { 
                required: true, 
                minlength: 5, 
                equalTo: "#vp_su_pwd" 
            }, 
            vp_su_email: { 
                required: true, 
                email: true 
            }, 
            vp_su_add1: "required",
            vp_su_city: "required",
            vp_su_state: "required",
            vp_su_zip: "required",
            vp_su_country: "required",
            vp_su_phone: "required",
            recaptcha_response_field: {
                required: true,
                captcha: true
            },
            vp_su_terms: "required" 
        }, 
        messages: { 
            vp_su_fname: "Please enter your first name", 
            vp_su_lname: "Please enter your last name", 
            vp_su_pwd: { 
                required: "Please provide a password", 
                rangelength: jQuery.format("Enter at least {0} characters") 
            }, 
            vp_su_pwd2: { 
                required: "Please confirm your password", 
                minlength: jQuery.format("Enter at least {0} characters"), 
                equalTo: "Enter the same password as above" 
            }, 
            vp_su_email: { 
                required: "Please enter a valid email address", 
                minlength: "Please enter a valid email address", 
                remote: jQuery.format("{0} is already in use") 
            }, 
            vp_su_add1: "Please enter your address",
            vp_su_city: "Please enter your city",
            vp_su_state: "Please enter your state / county",
            vp_su_zip: "Please enter your zip / postcode",
            vp_su_country: "Please enter your country",
            vp_su_phone: "Please enter your phone number",
            recaptcha_response_field: " ",
            vp_su_terms: " " 
        }, 
        // 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()) ;
        }, 
        // specifying a submitHandler prevents the default submit, good for the demo 
        submitHandler: function() { 
            alert("submitted!"); 
        }, 
        // set this class to error-labels to indicate valid fields 
        success: function(label) { 
            // set   as text for IE 
            label.html(" ").addClass("checked"); 
        },
        onkeyup: false
    }); 
    }
    // ...create the signup complete dialog
    $('#signupDoneDialog').dialog({
        autoOpen: false,
        modal: true,
        width: 450
    }) ;
    // ...create the signup dialog
    $('#signupDialog').dialog({
        autoOpen: false,
        modal: true,
        width:570,
        buttons: {
            "Submit": function() { 
                if ($('#signupform').valid()) {
                    var dataString = '' ;
                    if ($('#bo').val() == 'a2b' || $('#bo').val() == 'a2b1.4') {
                        dataString += "form_action=add&language=en&currency=USD" ;
                        dataString += "&firstname=" + $('#vp_su_fname').val() ;
                        dataString += "&lastname=" + $('#vp_su_lname').val() ;
                        dataString += "&email=" + $('#vp_su_email').val() ;
                        dataString += "&password=" + $('#vp_su_pwd').val() ;
                        dataString += "&address=" + $('#vp_su_add1').val() ;
                        dataString += "&city=" + $('#vp_su_city').val() ;
                        dataString += "&state=" + $('#vp_su_state').val() ;
                        dataString += "&zipcode=" + $('#vp_su_zip').val() ;
                        dataString += "&country=" + $('#vp_su_country').val() ;
                        dataString += "&phone=" + $('#vp_su_phone').val() ;
                        dataString += "&tariff=1" ;
                        dataString += "&id_timezone=14" ;

                    }
                    $.ajax({
                        type: "POST",
                        url: "/customer/signup.php",
                        data: dataString,
                        success: function() { 
                            $('#signupDialog').dialog('close') ;
                            $('#signupDoneDialog').dialog('open') ;
                        }
                    }) ;
                }
             },
            "Cancel": function() { $(this).dialog("close") ; }
        }
    }) ;
    // ...create captcha
    Recaptcha.create("6LfshwYAAAAAAPnfwotZvgpmszoupr8JP7EobDcd", 'vp_su_recaptcha', {
        theme: 'white',
        tabindex: 0,
        callback: Recaptcha.focus_response_field
    }) ;

    // ...create signup form validator
    var validator = validateSignup() ;

    // ...activate the link
    $('#Map2').click(function() {
        validator.resetForm() ;
        resetForm('signupform') ;
        //Recaptcha.reload() ;
        $('#signupDialog').dialog('open') ;
        return false ;
    }) ;
    }
}) ; 
