$(function() {
	// add dialog to DOM
	$('<div id="dialog"></div>').dialog({
		modal: true,
		autoOpen: false,
		buttons: {
			Ok: function() {
				$(this).dialog('close');
			}
		}
	});
	// auto-preload images
	var preloadedImages = new Array();
	var hoverAppend = '-hover'; //eg: imagename-hover.jpg
	$('.rollover').each(function(i) {
		preloadedImages[i] = new Image();
		var ext = $(this).attr('src').split('.').pop();
		preloadedImages[i].src = $(this).attr('src').split('.' + ext).join(hoverAppend + '.' + ext);
	});
	// hover effect for preloaded images
	$('.rollover').hover(function() {
		var ext = $(this).attr('src').split('.').pop();
		$(this).attr('src', $(this).attr('src').split('.' + ext).join(hoverAppend + '.' + ext));
	}, function() {
		var ext = $(this).attr('src').split('.').pop();
		$(this).attr('src', $(this).attr('src').split(hoverAppend + '.' + ext).join('.' + ext));
	});
	// manually preload nav link hover/active background
	preloadedImages[preloadedImages.length] = new Image();
	preloadedImages[preloadedImages.length - 1].src = 'assets/images/nav/hover.gif';
	// open external links in new windows
	$('a.external').click(function(event) {
		event.preventDefault();
		window.open($(this).attr('href'));
	});
	// add bookmark
	var faveMetaKey = (navigator.appVersion.indexOf('Mac') != -1) ? 'CMD' : 'CTRL';
	var faveKey = 'D';
	var faveText = 'Bookmark Us';
	if ($.browser.opera) {
		$('#addBookmark').attr('rel', 'sidebar');
		if (parseInt($.browser.version, 10) < 9) {
			faveKey = 'T';
		}
	} else if (/konqueror/.test(navigator.userAgent.toLowerCase())) {
		faveKey = 'B';
	}
	$('#addBookmark').text(faveText + ' (' + faveMetaKey + '+' + faveKey + ')');
	$('#addBookmark').click(function(event) {
		event.preventDefault();
		if (window.external) { // IE
			window.external.AddFavorite(window.location.href, document.title);
		} else if (window.sidebar) { // FireFox
			window.sidebar.addPanel(document.title, window.location.href, '');
		} else {
			if ($.browser.opera && parseInt($.browser.version, 10) >= 9) {
				// do nothing (added rel="sidebar" above)
			} else {
				$('#dialog').dialog('option', 'title', faveText);
				$('#dialog').html('Press ' + faveMetaKey + '+' + faveKey + ' to ' + faveText + '.');
				$('#dialog').dialog('open');
			}
		}
	});
	// search form
	var defaultTextSearch = 'Search for...';
	$('#nav input[name="search"]').focus(function() {
		if ($(this).val() == defaultTextSearch) $(this).val('');
	}).blur(function() {
		if ($(this).val() == '') $(this).val(defaultTextSearch);
	}).val(defaultTextSearch);
	// newsletter form
	var defaultTextEmail = 'Email address...';
	$('#nav input[name="emailaddress"]').focus(function() {
		if ($(this).val() == defaultTextEmail) $(this).val('');
	}).blur(function() {
		if ($(this).val() == '') $(this).val(defaultTextEmail);
	}).val(defaultTextEmail);
});

