$(document).ready(function() {
	// Hover states
	$('label, button, .buttons a, span.checkbox-clickable', '#wrap').hover(function() {
		$(this).addClass('hover');
	},function() {
		$(this).removeClass('hover');
	})
	
	// Front-page options
    $('#options div.checkmark').show();
	$('label', '#options').click(function() {
        var checkClass = $(this).attr('for') + '-checked';
        var removeClasses = 'weatherby-checked remington-checked browning-checked winchester-checked';
        $('#options').removeClass(removeClasses).addClass(checkClass);
		$('input:radio', $(this).parent()).attr('checked','checked');
        
        // IE6
        $('#options div.checkmark').show().css('backgroundImage','url("/_ui/skin/img/checkmark.png")');
	}).each(function() {
        var hoverClass = $(this).attr('for') + '-hover';
        $(this).hover(function() {
            $('#options').addClass(hoverClass);
        },function() {
            $('#options').removeClass(hoverClass);
        });
    });
    $('#frontPageQuestion').submit(function() {
        if($('input:checked', this).length != 1) {
            window.alert("You must select an answer in order to continue.");
            return false;
        }
        return true;
    });
	
	// Checkbox on register form
	$('span.checkbox', '#register_form').each(function() {
		var parent = this;
		var check = $(this).find('input[type=checkbox]');
		$(this).addClass('checkbox-js');
        $(this).append('<span class="checkbox-clickable"></span>');
        
        // Label click
		$('.form-checkbox label, span.checkbox-clickable', '#register_form').click(function() {
			var checked = $(check).attr('checked');
			if (checked) {
				$(check).removeAttr('checked');
				$(parent).removeClass('checkbox-sel');
			}
			else {
				$(check).attr('checked', 'checked');
				$(parent).addClass('checkbox-sel');
			}
			return false;
		}).bind('selectstart', function() {
            return false;
        });
	});
    
    // Register form
    if ($('#register_form').length) {
        $.getScript('/_ui/libs/jquery/js/validate.js', function(){
            $('#register_form').validate({
                wrapper: 'li',
                errorLabelContainer: '#errorList ul',
                invalidHandler: function(form, validator) {
                    var errors = validator.numberOfInvalids();
                    window.alert('You left '+ errors +' fields blank. All fields must be completed in order to register.');
                }
            });
        });
    }
    
    // Modals
    $('a.modal', '#content').colorbox({
        iframe: true,
        bgOpacity: '.5',
        fixedWidth: '600px',
        fixedHeight: '450px',
        modalClose: 'close or Esc key'
    });
});
