window.addEvent('domready', function() {

	// open links to downloadable files or other sites in a new window
	Array.prototype.f_contains = function(s) {
		for (var i = 0; i < this.length; i++) {
			if (this[i] == s) {
				return true;
			}
		}
		return false;
	};

	// known extensions for downloadable files
	var exts = ['png', 'gif', 'pdf', 'doc', 'xls', 'ppt', 'zip', 'gz', 'mpg', 'mpeg', 'mov', 'mp4', 'avi', 'wmv', 'mp3', 'wav', 'swf', 'bmp', 'tif', 'tiff', 'svg'];

	var links = document.getElementsByTagName('a');

	for (var i = 0; i < links.length; i++) {
		var link  = links[i];

		// find extension
		var split_slash = link.href.split('/');
		var split_ext   = split_slash[split_slash.length - 1].split('.');
		var ext = split_ext[split_ext.length - 1];

		// check if extension indicates a downloadable file
		if (split_ext.length > 1) {
			if (exts.f_contains(ext)) {
				links[i].target = '_blank';
			}
		}

		// look for links to other sites
		if (link.href.substring(0, 7) == 'http://') {
			if (link.href.substring(7, 7 + window.location.hostname.length) != window.location.hostname) {
				links[i].target = '_blank';
			}
		}
	}

	// disable right-click on images
	var images = $ES('img');
	images.each(function(image) {
		image.addEvent('contextmenu', function(e) {
			new Event(e).stop();
		});
	});

	// known extensions for shadowbox files
	var shadowboxMediaFound = false;

	var s_image_exts = ['jpg', 'jpeg'];
	var s_other_exts = ['flv'];

	var s_links = document.getElementsByTagName('a');

	for (var j = 0; j < s_links.length; j++) {
		var s_link  = s_links[j];

		// find extension
		var s_split_slash = s_link.href.split('/');

		var s_split_filename = s_split_slash[s_split_slash.length - 1];
		var s_split_dot      = s_split_filename.split('.');
		var s_filename       = s_split_dot[s_split_dot.length - 2];
		var s_ext            = s_split_dot[s_split_dot.length - 1];

		// check if extension indicates a image file
		if (s_split_dot.length > 1) {
			if (s_image_exts.f_contains(s_ext)) {
				s_links[j].rel = 'shadowbox[all]';
				shadowboxMediaFound = true;
			}
			if (s_other_exts.f_contains(s_ext)) {
				s_links[j].rel = 'shadowbox[all]';
				shadowboxMediaFound = true;

				// specify width and height if present
				var widthHeightRegEx = /_([0-9]+)x([0-9]+)$/;
				var widthHeightMatches = widthHeightRegEx.exec(s_filename);
				if (widthHeightMatches && widthHeightMatches.length == 3) {
					s_links[j].rel += 'width=' + widthHeightMatches[1] + ';height=' + widthHeightMatches[2];
				}
			}
		}
	}

	// initialize Shadowbox (if necessary)
	if (shadowboxMediaFound) {

    	// Shadowbox options
    	var options = {
    		resizeLgImages:    true,
    		displayNav:        true,
    		keysClose:         ['esc', 27], // c or esc
    		autoplayMovies:    true,
    		loadingImage:      '/images/loading.gif',
    		overlayBgImage:    '/images/overlay-85.png',
    		flvPlayer:         '/swf/mediaplayer.swf',
    		text: {
    			cancel:  'Annuleren',
    			loading: 'Laden',
    			close:   'Sluit',
    			next:    '',
    			prev:    ''
    		},
    		resizeDuration:    0.2,
    		fadeDuration:      0.2
    	};

		Shadowbox.init(options);
	}
});