function onStoreFormLoaded() {
} // function

$(document).ready(function() {
    $("#rightbox").css("height", $("#contentbox").height() + "px");

    $("#store_contactform").submit(function() {
        var inputs = [];

        $(":input", this).each(function() {
            inputs.push(this.name + "=" + escape(this.value));
        });
        
        jQuery.ajax({
            data: inputs.join('&'),
            url: this.action,
            timeout: 2000,
            dataType: 'json',
            error: function() {
                //console.log("Failed to submit store contact form.");
            },
            success: function (data, textStatus) {
                var validColor = '#666666';
                var invalidColor = '#CC0000';
                var validationMessage;

                switch (data.status) {
                    case 'initial':
                        $('#validation').fadeOut('slow');
                        validationMessage = data.validation.initial;
                        $('#validation').html(validationMessage);
                        $('#validation').fadeIn('slow');

                        break;

                    case 'invalidData':
                        $('#validation').fadeOut('slow');
                        validationMessage = data.validation.invalidData;
                        $('#validation').html(validationMessage);
                        $('#validation').fadeIn('slow');

                        break;

                    case 'messageSent':
                        enableForm(false);

                        $('#validation').fadeOut('slow');
                        validationMessage = data.validation.messageSent;
                        $('#validation').html(validationMessage);
                        $('#validation').fadeIn('slow');
                        validationMessage = data.validation.initial;
                        setTimeout('$(\'#validation\').html(\'' + validationMessage + '\'); enableForm(true)', 5000);
                        
                        break;

                    case 'messageNotSent':
                        enableForm(false);

                        $('#validation').fadeOut('slow');
                        validationMessage = data.validation.messageNotSent;
                        $('#validation').html(validationMessage);
                        $('#validation').fadeIn('slow');
                        validationMessage = data.validation.initial;
                        setTimeout('$(\'#validation\').html(\'' + validationMessage + '\'); enableForm(true)', 5000);

                        break;
                } // switch

                if (data.field.name != null) {
                    $('#name_field').val(unescape(data.field.name));
                } // if

                if (data.field.company != null) {
                    $('#company_field').val(unescape(data.field.company));
                } // if

                if (data.field.phone != null) {
                    $('#phone_field').val(unescape(data.field.phone));
                } // if

                if (data.field.email != null) {
                    $('#email_field').val(unescape(data.field.email));
                } // if

                if (data.field.message != null) {
                    $('#message_field').val(unescape(data.field.message));
                } // if

                if (data.valid.name) {
                    $('#name_label').css('color', validColor);
                } // if
                else {
                    $('#name_label').css('color', invalidColor);
                } // else

                if (data.valid.company) {
                    $('#company_label').css('color', validColor);
                } // if
                else {
                    $('#company_label').css('color', invalidColor);
                } // else

                if (data.valid.phone) {
                    $('#phone_label').css('color', validColor);
                } // if
                else {
                    $('#phone_label').css('color', invalidColor);
                } // else

                if (data.valid.email) {
                    $('#email_label').css('color', validColor);
                } // if
                else {
                    $('#email_label').css('color', invalidColor);
                } // else

                if (data.valid.message) {
                    $('#message_label').css('color', validColor);
                } // if
                else {
                    $('#message_label').css('color', invalidColor);
                } // else
            }
        });

        return false;
    });
}); // function

function enableForm(mode) {
    var controlIds = [];
    controlIds.push('#name_label');
    controlIds.push('#name_field');
    controlIds.push('#company_label');
    controlIds.push('#company_field');
    controlIds.push('#phone_label');
    controlIds.push('#phone_field');
    controlIds.push('#email_label');
    controlIds.push('#email_field');
    controlIds.push('#message_label');
    controlIds.push('#message_field');
    controlIds.push('#mandatory_label');
    controlIds.push('#submit_button');

    var i;

    if (mode == true) {
        for (i in controlIds) {
            $(controlIds[i]).fadeIn('slow');
        } // for
    } // if
    else {
        for (i in controlIds) {
            $(controlIds[i]).fadeOut('slow');
        } // for
    } // else
} // function

