Event.observe(window, 'load', initEvents);

validationRules = $H({company:{desc:'Company Name',func:'required'},
    title:{desc:'Title',func:''},
    firstname:{desc:'First Name',func:'required'},
    lastname:{desc:'Last Name',func:'required'},
    email:{desc:'Email Address',func:'email'},
    message:{desc:'Message',func:'required'},
    phone1:{desc:'Area Code',func:['required','numeric','length[3]']},
    phone2:{desc:'Phone Prefix',func:['required','numeric','length[3]']},
    phone3:{desc:'Phone Number',func:['required','numeric','length[4]']},
    submit: {button:'btnSubmit', alt:'images/button_submit_off.gif'}
});

function initEvents() {
    Event.observe($('company'),   'blur', validateFieldHandler);
    Event.observe($('title'),     'blur', validateFieldHandler);
    Event.observe($('firstname'), 'blur', validateFieldHandler);
    Event.observe($('lastname'),  'blur', validateFieldHandler);
    Event.observe($('email'),     'blur', validateFieldHandler);
    Event.observe($('message'),   'blur', validateFieldHandler);
    Event.observe($('phone1'),    'blur', validateFieldHandler);
    Event.observe($('phone2'),    'blur', validateFieldHandler);
    Event.observe($('phone3'),    'blur', validateFieldHandler);

    makeAutoTab('phone1');
    makeAutoTab('phone2');

    var submitForm = function() {
        if (canSubmit()) {
            var contactForm = Form.serialize($('contactForm'));
            $('general-info').innerHTML = '<br /><br /><div align="center"><img src="images/indicator.gif"></div><br /><br />';
            new Ajax.Updater('general-info', 'contact_us.php',
                {   postBody:contactForm,
                    asynchronous:false,
                    evalScripts: true
                });
        }
    }
    Event.observe($('btnSubmit'), 'click', submitForm);
}