/* Namespace */
var bnw = {};

/* Configuration */
bnw.config = {
	blankSrc: '/images/site/spacer.gif',
	brokenImage: '/images/site/spacer.gif',
	popUps: [
		{
			expr: '.bnwPopup',
			windowName: '_blank'
		},
		{
			expr: '.bnwPhotoPopup',
			windowName: 'bnwPhotoPopup',
			params: 'width=443, height=408',
			queryExtra: 'popup=true'
		},
		{
			expr: '.bnwBackLink',
			href: 'javascript: history.go(-1);'
		}
	]
};

/* Initialization */
$(document).ready(function() {
	$('.bnwRollOver').imgflip();
	$('.bnwDropdown').dropdown({sameWidth: true});
	$('.swf').swfalt(7);
	bnw.display.assignSpecialLinks();
	bnw.display.fixBrokenImages();
	$('.bnwBack').html('<p><a href="javascript: history.go(-1)">Back</a></p>');
});

/* Display */
bnw.display = {
	/* Unobtrusive popups */
	assignSpecialLinks: function() {
		var pop_obj;

		$(bnw.config.popUps).each(function() {
			pop_obj = this;
			$(this.expr).each(function() {
				if ( pop_obj.href ) {
					this.href = pop_obj;
				} else {
					$(this).bind('click', function(windowName, params, queryExtra) {
						return function() {
							var href = this.href;
							if ( queryExtra && href.indexOf('?') != -1 ) href = href + '&' + queryExtra;
							if ( params ) {
								window.open(href, windowName, params);
							} else {
								window.open(href, windowName);
							}
							return false;
						}
					}(pop_obj.windowName, pop_obj.params, pop_obj.queryExtra));
				}
			});
				
		});
	},

	/* Fix Broken Images */
	fixBrokenImages: function() {
		$('img').each(
			function() {
				this.onerror = function() {
					this.src = bnw.config.brokenImage;
				}
			}
		);
	}
}; /* /Display */