jQuery.fn.exists = function(){return jQuery(this).length>0;}
bMove = true;
$(document).ready(function(){
	$('#searchstring').live("keyup", function(){
		var el = $(this);
		$.ajax({
			type            : "GET",
			url            	: '/interactive/files/ajax/livesearch.php',
			data    				: "string="+el.val(),
			dataType    		: "html",
			success: function(data) {
				$('#suggestion').html(data);
			}
		});
		$('#suggestion').delay(20).slideDown();
	});
	$('#searchstring').attr('autocomplete','off');
	$('#searchstring').blur(function () {
		var value = $(this).val();
		if(value == '')	{
			$(this).val('zoeken...');
		}
	});
	$('a[class^="external"]').click(function (){
		this.target = "_blank"
	});
	$('#suggestion').hide();
	if($('#homebanner').exists())	{
		$('#homebanner').ffiSlider({
			autoslide 				: true,
			interval 					: 8000,
			bannerWrap 				: 'banner',
			bannerWrap_height : 262,
			bannerWrap_width 	: 981,
			slide 						: 'horizontal',
			slidespeed				: 700,
			doAnimation				: true,
			slideAutoTo				: 'standard',
			tiktakslide				: false
		});
	}
	if($('#photos').exists())	{
		$('#photos').ffiIconSlider({
			banner						: 'panel',
			icon							: 'filmstrip',
			pointer_image			: '/interactive/files/images/core/pointer.png',
			iconwrap_width		: 955
		});
	}
	$('#slideup a.button, #slideup .inner ul li.slideup-head').click(function(){
		var btn = $('#slideup a.button');
		if($(btn).hasClass("up"))		{
			$(btn).removeClass("up");
			$(btn).html('Elements producten');
		}
		else		{
			$(btn).addClass("up");
			$(btn).html('');
		}
		$(btn).next().slideToggle();
	});
	$(".tweet").tweet({
		join_text: "auto",
		username: "faster_forward",
		avatar_size: 0,
		count: 2,
		auto_join_text_default: "",
		loading_text: "Loading Tweets..."
	});
	var accounttwitter  = 'faster_forward';
	if($('#twitteraccount').val() != undefined)	{
		accounttwitter = $('#twitteraccount').val();
		$(".reftweet").tweet({
			join_text: "auto",
			username: accounttwitter,
			avatar_size: 0,
			count: 4,
			auto_join_text_default: "",
			loading_text: "Loading Tweets..."
		});
	}
	$(function(){
		$("#tabs").tabs({
			event: "mouseover"
		});
	});
	if($('#homebannernext').length > 0)	{
		$('#homebannernext div.bannernew').not(':first').hide();
		$('#ctabuttons li a').hover(function(){	bMove = false;	$(this).moveBanner();	},
		function(){	bMove = true; });
		setInterval('$(this).loadNext()', 5000);
	}
});
$.fn.loadNext = function(){
	if(bMove == true)	{
		next = $('#ctabuttons li a.slideractive').parent().next().find('a');
		if(next.length == 0)		{
			next = $('#ctabuttons li a:first');
		}
		next.moveBanner();
	}
}
$.fn.moveBanner = function(){
	$('#homebannernext div.bannernew').hide();
	$('#ctabuttons li a').removeClass().addClass('sliderbutton');
	$(this).removeClass('sliderbutton').addClass('slideractive');
	number = $(this).attr('id').replace('startBannerButton', '');
	$('#homebannernext div#startBannerContent'+number).show();
};
var H5F = H5F || {};
(function(d){
	var field = d.createElement("input"),
	emailPatt = new RegExp("^([a-z0-9_.-]+)@([0-9a-z.-]+).([a-z.]{2,6})$","i"),
	urlPatt = new RegExp("[a-z][-\.+a-z]*:\/\/","i"),
	usrPatt, curEvt, args;
	H5F.setup = function(form,settings) {
		var isCollection = !form.nodeType || false;
		var opts = {
			validClass : "valid",
			invalidClass : "error",
			requiredClass : "required"
		};
		if(typeof settings === "object") {
			for (var i in opts) {
				if(typeof settings[i] === "undefined") { settings[i] = opts[i]; }
			}
		}
		args = settings || opts;
		if(isCollection) {
			for(var k=0,len=form.length;k<len;k++) {
				H5F.validation(form[k]);
			}
		} else {
			H5F.validation(form);
		}
	};
	H5F.validation = function(form) {
		var f = form.elements,
		flen = f.length,
		isRequired;
		H5F.listen(form,"invalid",H5F.checkField,true);
		H5F.listen(form,"blur",H5F.checkField,true);
		H5F.listen(form,"input",H5F.checkField,true);
		H5F.listen(form,"keyup",H5F.checkField,true);
		H5F.listen(form,"focus",H5F.checkField,true);
		if(!H5F.support()) {
			form.checkValidity = function() { return H5F.checkValidity(form); };
			while(flen--) {
				isRequired = !!(f[flen].attributes["required"]);
				if(f[flen].nodeName !== "FIELDSET" && isRequired) {
					H5F.validity(f[flen]);
				}
			}
		}
	};
	H5F.validity = function(el) {
		var elem = el,
		missing = H5F.valueMissing(elem),
		type = elem.getAttribute("type"),
		pattern = elem.getAttribute("pattern"),
		placeholder = elem.getAttribute("placeholder"),
		isType = /^(email|url)$/i,
		evt = /^(input|keyup)$/i,
		fType = ((isType.test(type)) ? type : ((pattern) ? pattern : false)),
		patt = H5F.pattern(elem,fType),
		step = H5F.range(elem,"step"),
		min = H5F.range(elem,"min"),
		max = H5F.range(elem,"max");
		elem.validity = {
			patternMismatch: patt,
			rangeOverflow: max,
			rangeUnderflow: min,
			stepMismatch: step,
			valid: (!missing && !patt && !step && !min && !max),
			valueMissing: missing
		};
		if(placeholder && !evt.test(curEvt)) { H5F.placeholder(elem); }
		elem.checkValidity = function() { return H5F.checkValidity(elem); };
	};
	H5F.checkField = function (e) {
		var el = H5F.getTarget(e) || e,
		events = /^(input|keyup|focusin|focus)$/i,
		checkForm = true;
		curEvt = e.type;
		if(!H5F.support()) { H5F.validity(el); }
		if(el.validity.valid) {
			H5F.removeClass(el,[args.invalidClass,args.requiredClass]);
			H5F.addClass(el,args.validClass);
		} else if(!events.test(curEvt)) {
			if(el.validity.valueMissing) {
				H5F.removeClass(el,[args.invalidClass,args.validClass]);
				H5F.addClass(el,args.requiredClass);
			} else {
				H5F.removeClass(el,[args.validClass,args.requiredClass]);
				H5F.addClass(el,args.invalidClass);
			}
		} else if(el.validity.valueMissing) {
			H5F.removeClass(el,[args.requiredClass,args.invalidClass,args.validClass]);
		}
		if(curEvt === "input" && checkForm) {
			H5F.unlisten(el.form,"keyup",H5F.checkField,true);
			checkForm = false;
		}
	};
	H5F.checkValidity = function (el) {
		var f, ff, isRequired, invalid = false;
		if(el.nodeName === "FORM") {
			f = el.elements;
			for(var i = 0,len = f.length;i < len;i++) {
				ff = f[i];
				isRequired = !!(ff.attributes["required"]);
				hasPattern = !!(ff.attributes["pattern"]);
				if(ff.nodeName !== "FIELDSET" && (isRequired || hasPattern)) {
					H5F.checkField(ff);
					if(!ff.validity.valid && !invalid) {
						ff.focus();
						invalid = true;
					}
				}
			}
			return !invalid;
		} else {
			H5F.checkField(el);
			return el.validity.valid;
		}
	};
	H5F.support = function() {
		return (H5F.isHostMethod(field,"validity") && H5F.isHostMethod(field,"checkValidity"));
	};
	H5F.pattern = function(el, type) {
		if(type === "email") {
			return !emailPatt.test(el.value);
		} else if(type === "url") {
			return !urlPatt.test(el.value);
		} else if(!type) {
			return false;
		} else {
			usrPatt = new RegExp(type);
			return !usrPatt.test(el.value);
		}
	};
	H5F.placeholder = function(el) {
		var placeholder = el.getAttribute("placeholder"),
		focus = /^(focus|focusin)$/i,
		node = /^(input|textarea)$/i,
		isNative = !!("placeholder" in field);
		if(!isNative && node.test(el.nodeName)) {
			if(el.value === "") {
				el.value = placeholder;
			} else if(el.value === placeholder && focus.test(curEvt)) {
				el.value = "";
			}
		}
	};
	H5F.range = function(el,type) {
		// Emulate min, max and step
		var min = parseInt(el.getAttribute("min"),10) || 0,
		max = parseInt(el.getAttribute("max"),10) || false,
		step = parseInt(el.getAttribute("step"),10) || 1,
		val = parseInt(el.value,10),
		mismatch = (val-min)%step;
		if(!H5F.valueMissing(el) && !isNaN(val)) {
			if(type === "step") {
				return (el.getAttribute("step")) ? (mismatch !== 0) : false;
			} else if(type === "min") {
				return (el.getAttribute("min")) ? (val < min) : false;
			} else if(type === "max") {
				return (el.getAttribute("max")) ? (val > max) : false;
			}
		} else if(el.getAttribute("type") === "number") {
			return true;
		} else {
			return false;
		}
	};
	H5F.required = function(el) {
		var required = !!(el.attributes["required"]);
		return (required) ? H5F.valueMissing(el) : false;
	};
	H5F.valueMissing = function(el) {
		var placeholder = el.getAttribute("placeholder"),
		isRequired = !!(el.attributes["required"]);
		return !!(isRequired && (el.value === "" || el.value === placeholder));
	};
	H5F.listen = function (node,type,fn,capture) {
		if(H5F.isHostMethod(window,"addEventListener")) {
			node.addEventListener( type, fn, capture );
		} else if(H5F.isHostMethod(window,"attachEvent") && typeof window.event !== "undefined") {
			if(type === "blur") {
				type = "focusout";
			} else if(type === "focus") {
				type = "focusin";
			}
			node.attachEvent( "on" + type, fn );
		}
	};
	H5F.unlisten = function (node,type,fn,capture) {
		if(H5F.isHostMethod(window,"removeEventListener")) {
			node.removeEventListener( type, fn, capture );
		} else if(H5F.isHostMethod(window,"detachEvent") && typeof window.event !== "undefined") {
			node.detachEvent( "on" + type, fn );
		}
	};
	H5F.preventActions = function (evt) {
		evt = evt || window.event;
		if(evt.stopPropagation && evt.preventDefault) {
			evt.stopPropagation();
			evt.preventDefault();
		} else {
			evt.cancelBubble = true;
			evt.returnValue = false;
		}
	};
	H5F.getTarget = function (evt) {
		evt = evt || window.event;
		return evt.target || evt.srcElement;
	};
	H5F.addClass = function (e,c) {
		var re;
		if (!e.className) {
			e.className = c;
		}
		else {
			re = new RegExp('(^|\\s)' + c + '(\\s|$)');
			if (!re.test(e.className)) { e.className += ' ' + c; }
		}
	};
	H5F.removeClass = function (e,c) {
		var re, m, arr = (typeof c === "object") ? c.length : 1, len = arr;
		if (e.className) {
			if (e.className == c) {
				e.className = '';
			}
			else {
				while(arr--) {
					re = new RegExp('(^|\\s)' + ((len > 1) ? c[arr] : c) + '(\\s|$)');
					m = e.className.match(re);
					if (m && m.length == 3) { e.className = e.className.replace(re, (m[1] && m[2])?' ':''); }
				}
			}
		}
	};
	H5F.isHostMethod = function(o, m) {
		var t = typeof o[m], reFeaturedMethod = new RegExp('^function|object$', 'i');
		return !!((reFeaturedMethod.test(t) && o[m]) || t == 'unknown');
	};
})(document);
function closeSuggestion(){
	document.getElementById('suggestion').style.display = 'none';
	return false;
}
;(function($) {
	var allImages = {};
	var imageCounter = 0;
	$.galleriffic = {
		version: '2.0.1',
		normalizeHash: function(hash) {
			return hash.replace(/^.*#/, '').replace(/\?.*$/, '');
		},
		getImage: function(hash) {
			if (!hash)
			return undefined;
			hash = $.galleriffic.normalizeHash(hash);
			return allImages[hash];
		},
		gotoImage: function(hash) {
			var imageData = $.galleriffic.getImage(hash);
			if (!imageData)
			return false;
			var gallery = imageData.gallery;
			gallery.gotoImage(imageData);
			return true;
		},
		removeImageByHash: function(hash, ownerGallery) {
			var imageData = $.galleriffic.getImage(hash);
			if (!imageData)
			return false;
			var gallery = imageData.gallery;
			if (ownerGallery && ownerGallery != gallery)
			return false;
			return gallery.removeImageByIndex(imageData.index);
		}
	};
	var defaults = {
		delay:                     0,
		numThumbs:                 20,
		preloadAhead:              -1, // Set to -1 to preload all images
		enableTopPager:            false,
		enableBottomPager:         false,
		maxPagesToShow:            6,
		imageContainerSel:         '',
		captionContainerSel:       '',
		controlsContainerSel:      '',
		loadingContainerSel:       '',
		renderSSControls:          false,
		renderNavControls:         false,
		playLinkText:              'Play',
		pauseLinkText:             'Pause',
		prevLinkText:              'Previous',
		nextLinkText:              'Next',
		nextPageLinkText:          'Next &rsaquo;',
		prevPageLinkText:          '&lsaquo; Prev',
		enableHistory:             false,
		enableKeyboardNavigation:  false,
		autoStart:                 false,
		syncTransitions:           false,
		defaultTransitionDuration: 1000,
		onSlideChange:             undefined, // accepts a delegate like such: function(prevIndex, nextIndex) { ... }
		onTransitionOut:           undefined, // accepts a delegate like such: function(slide, caption, isSync, callback) { ... }
		onTransitionIn:            undefined, // accepts a delegate like such: function(slide, caption, isSync) { ... }
		onPageTransitionOut:       undefined, // accepts a delegate like such: function(callback) { ... }
		onPageTransitionIn:        undefined, // accepts a delegate like such: function() { ... }
		onImageAdded:              undefined, // accepts a delegate like such: function(imageData, $li) { ... }
		onImageRemoved:            undefined  // accepts a delegate like such: function(imageData, $li) { ... }
	};
	$.fn.galleriffic = function(settings) {
		$.extend(this, {
			version: $.galleriffic.version,
			isSlideshowRunning: false,
			slideshowTimeout: undefined,
			clickHandler: function(e, link) {
				this.pause();
				if (!this.enableHistory) {
					var hash = $.galleriffic.normalizeHash($(link).attr('href'));
					$.galleriffic.gotoImage(hash);
					e.preventDefault();
				}
			},
			appendImage: function(listItem) {
				this.addImage(listItem, false, false);
				return this;
			},
			insertImage: function(listItem, position) {
				this.addImage(listItem, false, true, position);
				return this;
			},
			addImage: function(listItem, thumbExists, insert, position) {
				var $li = ( typeof listItem === "string" ) ? $(listItem) : listItem;
				var $aThumb = $li.find('a.thumb');
				var slideUrl = $aThumb.attr('href');
				var title = $aThumb.attr('title');
				var $caption = $li.find('.caption').remove();
				var hash = $aThumb.attr('name');
				imageCounter++;
				if (!hash || allImages[''+hash]) {
					hash = imageCounter;
				}
				if (!insert)
				position = this.data.length;
				var imageData = {
					title:title,
					slideUrl:slideUrl,
					caption:$caption,
					hash:hash,
					gallery:this,
					index:position
				};
				if (insert) {
					this.data.splice(position, 0, imageData);
					this.updateIndices(position);
				}
				else {
					this.data.push(imageData);
				}
				var gallery = this;
				if (!thumbExists) {
					this.updateThumbs(function() {
						var $thumbsUl = gallery.find('ul.thumbs');
						if (insert)
						$thumbsUl.children(':eq('+position+')').before($li);
						else
						$thumbsUl.append($li);

						if (gallery.onImageAdded)
						gallery.onImageAdded(imageData, $li);
					});
				}
				allImages[''+hash] = imageData;
				$aThumb.attr('rel', 'history')
				.attr('href', '#'+hash)
				.removeAttr('name')
				.click(function(e) {
					gallery.clickHandler(e, this);
				});
				return this;
			},
			removeImageByIndex: function(index) {
				if (index < 0 || index >= this.data.length)
				return false;
				var imageData = this.data[index];
				if (!imageData)
				return false;
				this.removeImage(imageData);
				return true;
			},
			removeImageByHash: function(hash) {
				return $.galleriffic.removeImageByHash(hash, this);
			},
			removeImage: function(imageData) {
				var index = imageData.index;
				this.data.splice(index, 1);
				delete allImages[''+imageData.hash];
				this.updateThumbs(function() {
					var $li = gallery.find('ul.thumbs')
					.children(':eq('+index+')')
					.remove();
					if (gallery.onImageRemoved)
					gallery.onImageRemoved(imageData, $li);
				});
				this.updateIndices(index);
				return this;
			},
			updateIndices: function(startIndex) {
				for (i = startIndex; i < this.data.length; i++) {
					this.data[i].index = i;
				}
				return this;
			},
			initializeThumbs: function() {
				this.data = [];
				var gallery = this;
				this.find('ul.thumbs > li').each(function(i) {
					gallery.addImage($(this), true, false);
				});
				return this;
			},
			isPreloadComplete: false,
			preloadInit: function() {
				if (this.preloadAhead == 0) return this;
				this.preloadStartIndex = this.currentImage.index;
				var nextIndex = this.getNextIndex(this.preloadStartIndex);
				return this.preloadRecursive(this.preloadStartIndex, nextIndex);
			},
			preloadRelocate: function(index) {
				this.preloadStartIndex = index;
				return this;
			},
			preloadRecursive: function(startIndex, currentIndex) {
				if (startIndex != this.preloadStartIndex) {
					var nextIndex = this.getNextIndex(this.preloadStartIndex);
					return this.preloadRecursive(this.preloadStartIndex, nextIndex);
				}
				var gallery = this;
				var preloadCount = currentIndex - startIndex;
				if (preloadCount < 0)
				preloadCount = this.data.length-1-startIndex+currentIndex;
				if (this.preloadAhead >= 0 && preloadCount > this.preloadAhead) {
					setTimeout(function() { gallery.preloadRecursive(startIndex, currentIndex); }, 500);
					return this;
				}
				var imageData = this.data[currentIndex];
				if (!imageData)
				return this;
				if (imageData.image)
				return this.preloadNext(startIndex, currentIndex);
				var image = new Image();
				image.onload = function() {
					imageData.image = this;
					gallery.preloadNext(startIndex, currentIndex);
				};
				image.alt = imageData.title;
				image.src = imageData.slideUrl;
				return this;
			},
			preloadNext: function(startIndex, currentIndex) {
				var nextIndex = this.getNextIndex(currentIndex);
				if (nextIndex == startIndex) {
					this.isPreloadComplete = true;
				} else {
					var gallery = this;
					setTimeout(function() { gallery.preloadRecursive(startIndex, nextIndex); }, 100);
				}
				return this;
			},
			getNextIndex: function(index) {
				var nextIndex = index+1;
				if (nextIndex >= this.data.length)
				nextIndex = 0;
				return nextIndex;
			},
			getPrevIndex: function(index) {
				var prevIndex = index-1;
				if (prevIndex < 0)
				prevIndex = this.data.length-1;
				return prevIndex;
			},
			pause: function() {
				this.isSlideshowRunning = false;
				if (this.slideshowTimeout) {
					clearTimeout(this.slideshowTimeout);
					this.slideshowTimeout = undefined;
				}
				if (this.$controlsContainer) {
					this.$controlsContainer
					.find('div.ss-controls a').removeClass().addClass('play')
					.attr('title', this.playLinkText)
					.attr('href', '#play')
					.html(this.playLinkText);
				}
				return this;
			},
			play: function() {
				this.isSlideshowRunning = true;
				if (this.$controlsContainer) {
					this.$controlsContainer
					.find('div.ss-controls a').removeClass().addClass('pause')
					.attr('title', this.pauseLinkText)
					.attr('href', '#pause')
					.html(this.pauseLinkText);
				}
				if (!this.slideshowTimeout) {
					var gallery = this;
					this.slideshowTimeout = setTimeout(function() { gallery.ssAdvance(); }, this.delay);
				}
				return this;
			},
			toggleSlideshow: function() {
				if (this.isSlideshowRunning)
				this.pause();
				else
				this.play();
				return this;
			},
			ssAdvance: function() {
				if (this.isSlideshowRunning)
				this.next(true);
				return this;
			},
			next: function(dontPause, bypassHistory) {
				this.gotoIndex(this.getNextIndex(this.currentImage.index), dontPause, bypassHistory);
				return this;
			},
			previous: function(dontPause, bypassHistory) {
				this.gotoIndex(this.getPrevIndex(this.currentImage.index), dontPause, bypassHistory);
				return this;
			},
			nextPage: function(dontPause, bypassHistory) {
				var page = this.getCurrentPage();
				var lastPage = this.getNumPages() - 1;
				if (page < lastPage) {
					var startIndex = page * this.numThumbs;
					var nextPage = startIndex + this.numThumbs;
					this.gotoIndex(nextPage, dontPause, bypassHistory);
				}
				return this;
			},
			previousPage: function(dontPause, bypassHistory) {
				var page = this.getCurrentPage();
				if (page > 0) {
					var startIndex = page * this.numThumbs;
					var prevPage = startIndex - this.numThumbs;
					this.gotoIndex(prevPage, dontPause, bypassHistory);
				}
				return this;
			},
			gotoIndex: function(index, dontPause, bypassHistory) {
				if (!dontPause)
				this.pause();
				if (index < 0) index = 0;
				else if (index >= this.data.length) index = this.data.length-1;
				var imageData = this.data[index];
				if (!bypassHistory && this.enableHistory)
				$.historyLoad(String(imageData.hash));  // At the moment, historyLoad only accepts string arguments
				else
				this.gotoImage(imageData);
				return this;
			},
			gotoImage: function(imageData) {
				var index = imageData.index;
				if (this.onSlideChange)
				this.onSlideChange(this.currentImage.index, index);
				this.currentImage = imageData;
				this.preloadRelocate(index);
				this.refresh();
				return this;
			},
			getDefaultTransitionDuration: function(isSync) {
				if (isSync)
				return this.defaultTransitionDuration;
				return this.defaultTransitionDuration / 2;
			},
			refresh: function() {
				var imageData = this.currentImage;
				if (!imageData)
				return this;
				var index = imageData.index;
				if (this.$controlsContainer) {
					this.$controlsContainer
					.find('div.nav-controls a.prev').attr('href', '#'+this.data[this.getPrevIndex(index)].hash).end()
					.find('div.nav-controls a.next').attr('href', '#'+this.data[this.getNextIndex(index)].hash);
				}
				var previousSlide = this.$imageContainer.find('span.current').addClass('previous').removeClass('current');
				var previousCaption = 0;
				if (this.$captionContainer) {
					previousCaption = this.$captionContainer.find('span.current').addClass('previous').removeClass('current');
				}
				var isSync = this.syncTransitions && imageData.image;
				var isTransitioning = true;
				var gallery = this;
				var transitionOutCallback = function() {
					isTransitioning = false;
					previousSlide.remove();
					if (previousCaption)
					previousCaption.remove();
					if (!isSync) {
						if (imageData.image && imageData.hash == gallery.data[gallery.currentImage.index].hash) {
							gallery.buildImage(imageData, isSync);
						} else {
							if (gallery.$loadingContainer) {
								gallery.$loadingContainer.show();
							}
						}
					}
				};
				if (previousSlide.length == 0) {
					transitionOutCallback();
				} else {
					if (this.onTransitionOut) {
						this.onTransitionOut(previousSlide, previousCaption, isSync, transitionOutCallback);
					} else {
						previousSlide.fadeTo(this.getDefaultTransitionDuration(isSync), 0.0, transitionOutCallback);
						if (previousCaption)
						previousCaption.fadeTo(this.getDefaultTransitionDuration(isSync), 0.0);
					}
				}
				if (isSync)
				this.buildImage(imageData, isSync);
				if (!imageData.image) {
					var image = new Image();
					image.onload = function() {
						imageData.image = this;
						if (!isTransitioning && imageData.hash == gallery.data[gallery.currentImage.index].hash) {
							gallery.buildImage(imageData, isSync);
						}
					};
					image.alt = imageData.title;
					image.src = imageData.slideUrl;
				}
				this.relocatePreload = true;
				return this.syncThumbs();
			},
			buildImage: function(imageData, isSync) {
				var gallery = this;
				var nextIndex = this.getNextIndex(imageData.index);
				var newSlide = this.$imageContainer
				.append('<span class="image-wrapper current"><a class="advance-link" rel="history" href="#'+this.data[nextIndex].hash+'" title="'+imageData.title+'">&nbsp;</a></span>')
				.find('span.current').css('opacity', '0');
				newSlide.find('a')
				.append(imageData.image)
				.click(function(e) {
					gallery.clickHandler(e, this);
				});
				var newCaption = 0;
				if (this.$captionContainer) {
					newCaption = this.$captionContainer
					.append('<span class="image-caption current"></span>')
					.find('span.current').css('opacity', '0')
					.append(imageData.caption);
				}
				if (this.$loadingContainer) {
					this.$loadingContainer.hide();
				}
				if (this.onTransitionIn) {
					this.onTransitionIn(newSlide, newCaption, isSync);
				} else {
					newSlide.fadeTo(this.getDefaultTransitionDuration(isSync), 1.0);
					if (newCaption)
					newCaption.fadeTo(this.getDefaultTransitionDuration(isSync), 1.0);
				}
				if (this.isSlideshowRunning) {
					if (this.slideshowTimeout)
					clearTimeout(this.slideshowTimeout);
					this.slideshowTimeout = setTimeout(function() { gallery.ssAdvance(); }, this.delay);
				}
				return this;
			},
			getCurrentPage: function() {
				return Math.floor(this.currentImage.index / this.numThumbs);
			},
			syncThumbs: function() {
				var page = this.getCurrentPage();
				if (page != this.displayedPage)
				this.updateThumbs();
				var $thumbs = this.find('ul.thumbs').children();
				$thumbs.filter('.selected').removeClass('selected');
				$thumbs.eq(this.currentImage.index).addClass('selected');
				return this;
			},
			updateThumbs: function(postTransitionOutHandler) {
				var gallery = this;
				var transitionOutCallback = function() {
					if (postTransitionOutHandler)
					postTransitionOutHandler();
					gallery.rebuildThumbs();
					if (gallery.onPageTransitionIn)
					gallery.onPageTransitionIn();
					else
					gallery.show();
				};
				if (this.onPageTransitionOut) {
					this.onPageTransitionOut(transitionOutCallback);
				} else {
					this.hide();
					transitionOutCallback();
				}
				return this;
			},
			rebuildThumbs: function() {
				var needsPagination = this.data.length > this.numThumbs;
				if (this.enableTopPager) {
					var $topPager = this.find('div.top');
					if ($topPager.length == 0)
					$topPager = this.prepend('').find('div.top');
					else
					$topPager.empty();
					if (needsPagination)
					this.buildPager($topPager);
				}
				if (this.enableBottomPager) {
					var $bottomPager = this.find('div.bottom');
					if ($bottomPager.length == 0)
					$bottomPager = this.append('').find('div.bottom');
					else
					$bottomPager.empty();

					if (needsPagination)
					this.buildPager($bottomPager);
				}
				var page = this.getCurrentPage();
				var startIndex = page*this.numThumbs;
				var stopIndex = startIndex+this.numThumbs-1;
				if (stopIndex >= this.data.length)
				stopIndex = this.data.length-1;
				var $thumbsUl = this.find('ul.thumbs');
				$thumbsUl.find('li').each(function(i) {
					var $li = $(this);
					if (i >= startIndex && i <= stopIndex) {
						$li.show();
					} else {
						$li.hide();
					}
				});
				this.displayedPage = page;
				$thumbsUl.removeClass('noscript');
				return this;
			},
			getNumPages: function() {
				return Math.ceil(this.data.length/this.numThumbs);
			},
			buildPager: function(pager) {
				var gallery = this;
				var numPages = this.getNumPages();
				var page = this.getCurrentPage();
				var startIndex = page * this.numThumbs;
				var pagesRemaining = this.maxPagesToShow - 1;
				var pageNum = page - Math.floor((this.maxPagesToShow - 1) / 2) + 1;
				if (pageNum > 0) {
					var remainingPageCount = numPages - pageNum;
					if (remainingPageCount < pagesRemaining) {
						pageNum = pageNum - (pagesRemaining - remainingPageCount);
					}
				}
				if (pageNum < 0) {
					pageNum = 0;
				}
				if (page > 0) {
					var prevPage = startIndex - this.numThumbs;
					pager.append('<a rel="history" href="#'+this.data[prevPage].hash+'" title="'+this.prevPageLinkText+'">'+this.prevPageLinkText+'</a>');
				}
				if (pageNum > 0) {
					this.buildPageLink(pager, 0, numPages);
					if (pageNum > 1)
					pager.append('<span class="ellipsis">&hellip;</span>');
					pagesRemaining--;
				}
				while (pagesRemaining > 0) {
					this.buildPageLink(pager, pageNum, numPages);
					pagesRemaining--;
					pageNum++;
				}
				if (pageNum < numPages) {
					var lastPageNum = numPages - 1;
					if (pageNum < lastPageNum)
					pager.append('<span class="ellipsis">&hellip;</span>');
					this.buildPageLink(pager, lastPageNum, numPages);
				}
				var nextPage = startIndex + this.numThumbs;
				if (nextPage < this.data.length) {
					pager.append('<a rel="history" href="#'+this.data[nextPage].hash+'" title="'+this.nextPageLinkText+'">'+this.nextPageLinkText+'</a>');
				}
				pager.find('a').click(function(e) {
					gallery.clickHandler(e, this);
				});
				return this;
			},
			buildPageLink: function(pager, pageNum, numPages) {
				var pageLabel = pageNum + 1;
				var currentPage = this.getCurrentPage();
				if (pageNum == currentPage)
				pager.append('<span class="current">'+pageLabel+'</span>');
				else if (pageNum < numPages) {
					var imageIndex = pageNum*this.numThumbs;
					pager.append('<a rel="history" href="#'+this.data[imageIndex].hash+'" title="'+pageLabel+'">'+pageLabel+'</a>');
				}
				return this;
			}
		});
		$.extend(this, defaults, settings);
		if (this.enableHistory && !$.historyInit)
		this.enableHistory = false;
		if (this.imageContainerSel) this.$imageContainer = $(this.imageContainerSel);
		if (this.captionContainerSel) this.$captionContainer = $(this.captionContainerSel);
		if (this.loadingContainerSel) this.$loadingContainer = $(this.loadingContainerSel);
		this.initializeThumbs();
		if (this.maxPagesToShow < 3)
		this.maxPagesToShow = 3;
		this.displayedPage = -1;
		this.currentImage = this.data[0];
		var gallery = this;
		if (this.$loadingContainer)
		this.$loadingContainer.hide();
		if (this.controlsContainerSel) {
			this.$controlsContainer = $(this.controlsContainerSel).empty();
			if (this.renderSSControls) {
				if (this.autoStart) {
					this.$controlsContainer
					.append('<div class="ss-controls"><a href="#pause" class="pause" title="'+this.pauseLinkText+'">'+this.pauseLinkText+'</a></div>');
				} else {
					this.$controlsContainer
					.append('<div class="ss-controls"><a href="#play" class="play" title="'+this.playLinkText+'">'+this.playLinkText+'</a></div>');
				}
				this.$controlsContainer.find('div.ss-controls a')
				.click(function(e) {
					gallery.toggleSlideshow();
					e.preventDefault();
					return false;
				});
			}
			if (this.renderNavControls) {
				this.$controlsContainer
				.append('<div class="nav-controls"><a class="prev" rel="history" title="'+this.prevLinkText+'">'+this.prevLinkText+'</a><a class="next" rel="history" title="'+this.nextLinkText+'">'+this.nextLinkText+'</a></div>')
				.find('div.nav-controls a')
				.click(function(e) {
					gallery.clickHandler(e, this);
				});
			}
		}
		var initFirstImage = !this.enableHistory || !location.hash;
		if (this.enableHistory && location.hash) {
			var hash = $.galleriffic.normalizeHash(location.hash);
			var imageData = allImages[hash];
			if (!imageData)
			initFirstImage = true;
		}
		if (initFirstImage)
		this.gotoIndex(0, false, true);
		if (this.enableKeyboardNavigation) {
			$(document).keydown(function(e) {
				var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
				switch(key) {
					case 32: // space
					gallery.next();
					e.preventDefault();
					break;
					case 33: // Page Up
					gallery.previousPage();
					e.preventDefault();
					break;
					case 34: // Page Down
					gallery.nextPage();
					e.preventDefault();
					break;
					case 35: // End
					gallery.gotoIndex(gallery.data.length-1);
					e.preventDefault();
					break;
					case 36: // Home
					gallery.gotoIndex(0);
					e.preventDefault();
					break;
					case 37: // left arrow
					gallery.previous();
					e.preventDefault();
					break;
					case 39: // right arrow
					gallery.next();
					e.preventDefault();
					break;
				}
			});
		}
		if (this.autoStart)
		this.play();
		setTimeout(function() { gallery.preloadInit(); }, 1000);
		return this;
	};
})(jQuery);
;(function($) {
	var defaults = {
		mouseOutOpacity:   0.67,
		mouseOverOpacity:  1.0,
		fadeSpeed:         'fast',
		exemptionSelector: '.selected'
	};
	$.fn.opacityrollover = function(settings) {
		$.extend(this, defaults, settings);
		var config = this;
		function fadeTo(element, opacity) {
			var $target = $(element);
			if (config.exemptionSelector)
			$target = $target.not(config.exemptionSelector);

			$target.fadeTo(config.fadeSpeed, opacity);
		}
		this.css('opacity', this.mouseOutOpacity)
		.hover(
		function () {
			fadeTo(this, config.mouseOverOpacity);
		},
		function () {
			fadeTo(this, config.mouseOutOpacity);
		});
		return this;
	};
})(jQuery);
(function($){$.fn.tweet=function(o){var s={};if(o)$.extend(s,o);$.fn.extend({linkUrl:function(){var returning=[];var regexp=/((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/gi;this.each(function(){returning.push(this.replace(regexp,"<a target=\"_blank\" rel=\"nofollow\" href=\"$1\">$1</a>"))});return $(returning)},linkUser:function(){var returning=[];var regexp=/[\@]+([A-Za-z0-9-_]+)/gi;this.each(function(){returning.push(this.replace(regexp,"<a href=\"http://twitter.com/$1\">@$1</a>"))});return $(returning)},linkHash:function(){var returning=[];var regexp=/(?:^| )[\#]+([A-Za-z0-9-_]+)/gi;this.each(function(){returning.push(this.replace(regexp,' <a href="http://search.twitter.com/search?q=&tag=$1&lang=all&from='+s.username.join("%2BOR%2B")+'">#$1</a>'))});return $(returning)},capAwesome:function(){var returning=[];this.each(function(){returning.push(this.replace(/\b(awesome)\b/gi,''))});return $(returning)},capEpic:function(){var returning=[];this.each(function(){returning.push(this.replace(/\b(epic)\b/gi,''))});return $(returning)},makeHeart:function(){var returning=[];this.each(function(){returning.push(this.replace(/(&lt;)+[3]/gi,""))});return $(returning)}});function parse_date(date_str){return Date.parse(date_str.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i,'$1,$2$4$3'))}function relative_time(time_value){var parsed_date=parse_date(time_value);var relative_to=(arguments.length>1)?arguments[1]:new Date();var delta=parseInt((relative_to.getTime()-parsed_date)/1000);var r='';if(delta<60){r=delta+' seconden geleden'}else if(delta<120){r='een minuut geleden'}else if(delta<(45*60)){r=(parseInt(delta/60,10)).toString()+' minuten geleden'}else if(delta<(2*60*60)){r='an hour ago'}else if(delta<(24*60*60)){r=''+(parseInt(delta/3600,10)).toString()+' uren geleden'}else if(delta<(48*60*60)){r='a day ago'}else{r=(parseInt(delta/86400,10)).toString()+' dagen geleden'}return'ongeveer '+r}function build_url(){var proto=('https:'==document.location.protocol?'https:':'http:');if(s.list){return proto+"//api.twitter.com/1/"+s.username[0]+"/lists/"+s.list+"/statuses.json?per_page="+s.count+"&callback=?"}else if(s.query==null&&s.username.length==1){return proto+'//api.twitter.com/1/statuses/user_timeline.json?screen_name='+s.username[0]+'&count='+s.count+'&include_rts=1&callback=?'}else{var query=(s.query||'from:'+s.username.join(' OR from:'));return proto+'//search.twitter.com/search.json?&q='+encodeURIComponent(query)+'&rpp='+s.count+'&callback=?'}}return this.each(function(i,widget){var list=$('<ul class="tweet_list">').appendTo(widget);var intro='<p class="tweet_intro">'+s.intro_text+'</p>';var outro='<p class="tweet_outro">'+s.outro_text+'</p>';var loading=$('<p class="loading">'+s.loading_text+'</p>');if(typeof(s.username)=="string"){s.username=[s.username]}if(s.loading_text)$(widget).append(loading);$(widget).bind("load",function(){$.getJSON(build_url(),function(data){if(s.loading_text)loading.remove();if(s.intro_text)list.before(intro);list.empty();var tweets=(data.results||data);$.each(tweets,function(i,item){if(s.join_text=="auto"){if(item.text.match(/^(@([A-Za-z0-9-_]+)) .*/i)){var join_text=s.auto_join_text_reply}else if(item.text.match(/(^\w+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+) .*/i)){var join_text=s.auto_join_text_url}else if(item.text.match(/^((\w+ed)|just) .*/im)){var join_text=s.auto_join_text_ed}else if(item.text.match(/^(\w*ing) .*/i)){var join_text=s.auto_join_text_ing}else{var join_text=s.auto_join_text_default}}else{var join_text=s.join_text};var from_user=item.from_user||item.user.screen_name;var date=' (<a href="http://twitter.com/'+from_user+'" target="_blank" rel="nofollow">'+relative_time(item.created_at)+'</a>)';var text='"'+$([item.text]).linkUrl().linkUser().linkHash().makeHeart().capAwesome().capEpic()[0]+'"';list.append('<li>'+text+date+'</li>')});if(s.outro_text)list.after(outro);$(widget).trigger("loaded").trigger((tweets.length==0?"empty":"full"));if(s.refresh_interval){window.setTimeout(function(){$(widget).trigger("load")},1000*s.refresh_interval)}})}).trigger("load")})}})(jQuery);
(function($,undefined){$.ui=$.ui||{};if($.ui.version){return}$.extend($.ui,{version:"1.8.6",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});$.fn.extend({_focus:$.fn.focus,focus:function(delay,fn){return typeof delay==="number"?this.each(function(){var elem=this;setTimeout(function(){$(elem).focus();if(fn){fn.call(elem)}},delay)}):this._focus.apply(this,arguments)},scrollParent:function(){var scrollParent;if(($.browser.msie&&(/(static|relative)/).test(this.css('position')))||(/absolute/).test(this.css('position'))){scrollParent=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test($.curCSS(this,'position',1))&&(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1))}).eq(0)}else{scrollParent=this.parents().filter(function(){return(/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1))}).eq(0)}return(/fixed/).test(this.css('position'))||!scrollParent.length?$(document):scrollParent},zIndex:function(zIndex){if(zIndex!==undefined){return this.css("zIndex",zIndex)}if(this.length){var elem=$(this[0]),position,value;while(elem.length&&elem[0]!==document){position=elem.css("position");if(position==="absolute"||position==="relative"||position==="fixed"){value=parseInt(elem.css("zIndex"),10);if(!isNaN(value)&&value!==0){return value}}elem=elem.parent()}}return 0},disableSelection:function(){return this.bind(($.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(event){event.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});$.each(["Width","Height"],function(i,name){var side=name==="Width"?["Left","Right"]:["Top","Bottom"],type=name.toLowerCase(),orig={innerWidth:$.fn.innerWidth,innerHeight:$.fn.innerHeight,outerWidth:$.fn.outerWidth,outerHeight:$.fn.outerHeight};function reduce(elem,size,border,margin){$.each(side,function(){size-=parseFloat($.curCSS(elem,"padding"+this,true))||0;if(border){size-=parseFloat($.curCSS(elem,"border"+this+"Width",true))||0}if(margin){size-=parseFloat($.curCSS(elem,"margin"+this,true))||0}});return size}$.fn["inner"+name]=function(size){if(size===undefined){return orig["inner"+name].call(this)}return this.each(function(){$(this).css(type,reduce(this,size)+"px")})};$.fn["outer"+name]=function(size,margin){if(typeof size!=="number"){return orig["outer"+name].call(this,size)}return this.each(function(){$(this).css(type,reduce(this,size,true,margin)+"px")})}});function visible(element){return!$(element).parents().andSelf().filter(function(){return $.curCSS(this,"visibility")==="hidden"||$.expr.filters.hidden(this)}).length}$.extend($.expr[":"],{data:function(elem,i,match){return!!$.data(elem,match[3])},focusable:function(element){var nodeName=element.nodeName.toLowerCase(),tabIndex=$.attr(element,"tabindex");if("area"===nodeName){var map=element.parentNode,mapName=map.name,img;if(!element.href||!mapName||map.nodeName.toLowerCase()!=="map"){return false}img=$("img[usemap=#"+mapName+"]")[0];return!!img&&visible(img)}return(/input|select|textarea|button|object/.test(nodeName)?!element.disabled:"a"==nodeName?element.href||!isNaN(tabIndex):!isNaN(tabIndex))&&visible(element)},tabbable:function(element){var tabIndex=$.attr(element,"tabindex");return(isNaN(tabIndex)||tabIndex>=0)&&$(element).is(":focusable")}});$(function(){var body=document.body,div=body.appendChild(div=document.createElement("div"));$.extend(div.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});$.support.minHeight=div.offsetHeight===100;$.support.selectstart="onselectstart"in div;body.removeChild(div).style.display="none"});$.extend($.ui,{plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]])}},call:function(instance,name,args){var set=instance.plugins[name];if(!set||!instance.element[0].parentNode){return}for(var i=0;i<set.length;i++){if(instance.options[set[i][0]]){set[i][1].apply(instance.element,args)}}}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(el,a){if($(el).css("overflow")==="hidden"){return false}var scroll=(a&&a==="left")?"scrollLeft":"scrollTop",has=false;if(el[scroll]>0){return true}el[scroll]=1;has=(el[scroll]>0);el[scroll]=0;return has},isOverAxis:function(x,reference,size){return(x>reference)&&(x<(reference+size))},isOver:function(y,x,top,left,height,width){return $.ui.isOverAxis(y,top,height)&&$.ui.isOverAxis(x,left,width)}})})(jQuery);(function($,undefined){if($.cleanData){var _cleanData=$.cleanData;$.cleanData=function(elems){for(var i=0,elem;(elem=elems[i])!=null;i++){$(elem).triggerHandler("remove")}_cleanData(elems)}}else{var _remove=$.fn.remove;$.fn.remove=function(selector,keepData){return this.each(function(){if(!keepData){if(!selector||$.filter(selector,[this]).length){$("*",this).add([this]).each(function(){$(this).triggerHandler("remove")})}}return _remove.call($(this),selector,keepData)})}}$.widget=function(name,base,prototype){var namespace=name.split(".")[0],fullName;name=name.split(".")[1];fullName=namespace+"-"+name;if(!prototype){prototype=base;base=$.Widget}$.expr[":"][fullName]=function(elem){return!!$.data(elem,name)};$[namespace]=$[namespace]||{};$[namespace][name]=function(options,element){if(arguments.length){this._createWidget(options,element)}};var basePrototype=new base();basePrototype.options=$.extend(true,{},basePrototype.options);$[namespace][name].prototype=$.extend(true,basePrototype,{namespace:namespace,widgetName:name,widgetEventPrefix:$[namespace][name].prototype.widgetEventPrefix||name,widgetBaseClass:fullName},prototype);$.widget.bridge(name,$[namespace][name])};$.widget.bridge=function(name,object){$.fn[name]=function(options){var isMethodCall=typeof options==="string",args=Array.prototype.slice.call(arguments,1),returnValue=this;options=!isMethodCall&&args.length?$.extend.apply(null,[true,options].concat(args)):options;if(isMethodCall&&options.charAt(0)==="_"){return returnValue}if(isMethodCall){this.each(function(){var instance=$.data(this,name),methodValue=instance&&$.isFunction(instance[options])?instance[options].apply(instance,args):instance;if(methodValue!==instance&&methodValue!==undefined){returnValue=methodValue;return false}})}else{this.each(function(){var instance=$.data(this,name);if(instance){instance.option(options||{})._init()}else{$.data(this,name,new object(options,this))}})}return returnValue}};$.Widget=function(options,element){if(arguments.length){this._createWidget(options,element)}};$.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(options,element){$.data(element,this.widgetName,this);this.element=$(element);this.options=$.extend(true,{},this.options,this._getCreateOptions(),options);var self=this;this.element.bind("remove."+this.widgetName,function(){self.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return $.metadata&&$.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled")},widget:function(){return this.element},option:function(key,value){var options=key;if(arguments.length===0){return $.extend({},this.options)}if(typeof key==="string"){if(value===undefined){return this.options[key]}options={};options[key]=value}this._setOptions(options);return this},_setOptions:function(options){var self=this;$.each(options,function(key,value){self._setOption(key,value)});return this},_setOption:function(key,value){this.options[key]=value;if(key==="disabled"){this.widget()[value?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",value)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(type,event,data){var callback=this.options[type];event=$.Event(event);event.type=(type===this.widgetEventPrefix?type:this.widgetEventPrefix+type).toLowerCase();data=data||{};if(event.originalEvent){for(var i=$.event.props.length,prop;i;){prop=$.event.props[--i];event[prop]=event.originalEvent[prop]}}this.element.trigger(event,data);return!($.isFunction(callback)&&callback.call(this.element[0],event,data)===false||event.isDefaultPrevented())}}})(jQuery);(function($,undefined){var tabId=0,listId=0;function getNextTabId(){return++tabId}function getNextListId(){return++listId}$.widget("ui.tabs",{options:{add:null,ajaxOptions:null,cache:false,cookie:null,collapsible:false,disable:null,disabled:[],enable:null,event:"click",fx:null,idPrefix:"ui-tabs-",load:null,panelTemplate:"<div></div>",remove:null,select:null,show:null,spinner:"<em>Loading&#8230;</em>",tabTemplate:"<li><a href='#{href}'><span>#{label}</span></a></li>"},_create:function(){this._tabify(true)},_setOption:function(key,value){if(key=="selected"){if(this.options.collapsible&&value==this.options.selected){return}this.select(value)}else{this.options[key]=value;this._tabify()}},_tabId:function(a){return a.title&&a.title.replace(/\s/g,"_").replace(/[^\w\u00c0-\uFFFF-]/g,"")||this.options.idPrefix+getNextTabId()},_sanitizeSelector:function(hash){return hash.replace(/:/g,"\\:")},_cookie:function(){var cookie=this.cookie||(this.cookie=this.options.cookie.name||"ui-tabs-"+getNextListId());return $.cookie.apply(null,[cookie].concat($.makeArray(arguments)))},_ui:function(tab,panel){return{tab:tab,panel:panel,index:this.anchors.index(tab)}},_cleanup:function(){this.lis.filter(".ui-state-processing").removeClass("ui-state-processing").find("span:data(label.tabs)").each(function(){var el=$(this);el.html(el.data("label.tabs")).removeData("label.tabs")})},_tabify:function(init){var self=this,o=this.options,fragmentId=/^#.+/;this.list=this.element.find("ol,ul").eq(0);this.lis=$(" > li:has(a[href])",this.list);this.anchors=this.lis.map(function(){return $("a",this)[0]});this.panels=$([]);this.anchors.each(function(i,a){var href=$(a).attr("href");var hrefBase=href.split("#")[0],baseEl;if(hrefBase&&(hrefBase===location.toString().split("#")[0]||(baseEl=$("base")[0])&&hrefBase===baseEl.href)){href=a.hash;a.href=href}if(fragmentId.test(href)){self.panels=self.panels.add(self._sanitizeSelector(href))}else if(href&&href!=="#"){$.data(a,"href.tabs",href);$.data(a,"load.tabs",href.replace(/#.*$/,""));var id=self._tabId(a);a.href="#"+id;var $panel=$("#"+id);if(!$panel.length){$panel=$(o.panelTemplate).attr("id",id).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").insertAfter(self.panels[i-1]||self.list);$panel.data("destroy.tabs",true)}self.panels=self.panels.add($panel)}else{o.disabled.push(i)}});if(init){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all");this.list.addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.lis.addClass("ui-state-default ui-corner-top");this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom");if(o.selected===undefined){if(location.hash){this.anchors.each(function(i,a){if(a.hash==location.hash){o.selected=i;return false}})}if(typeof o.selected!=="number"&&o.cookie){o.selected=parseInt(self._cookie(),10)}if(typeof o.selected!=="number"&&this.lis.filter(".ui-tabs-selected").length){o.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}o.selected=o.selected||(this.lis.length?0:-1)}else if(o.selected===null){o.selected=-1}o.selected=((o.selected>=0&&this.anchors[o.selected])||o.selected<0)?o.selected:0;o.disabled=$.unique(o.disabled.concat($.map(this.lis.filter(".ui-state-disabled"),function(n,i){return self.lis.index(n)}))).sort();if($.inArray(o.selected,o.disabled)!=-1){o.disabled.splice($.inArray(o.selected,o.disabled),1)}this.panels.addClass("ui-tabs-hide");this.lis.removeClass("ui-tabs-selected ui-state-active");if(o.selected>=0&&this.anchors.length){$(self._sanitizeSelector(self.anchors[o.selected].hash)).removeClass("ui-tabs-hide");this.lis.eq(o.selected).addClass("ui-tabs-selected ui-state-active");self.element.queue("tabs",function(){self._trigger("show",null,self._ui(self.anchors[o.selected],$(self._sanitizeSelector(self.anchors[o.selected].hash))))});this.load(o.selected)}$(window).bind("unload",function(){self.lis.add(self.anchors).unbind(".tabs");self.lis=self.anchors=self.panels=null})}else{o.selected=this.lis.index(this.lis.filter(".ui-tabs-selected"))}this.element[o.collapsible?"addClass":"removeClass"]("ui-tabs-collapsible");if(o.cookie){this._cookie(o.selected,o.cookie)}for(var i=0,li;(li=this.lis[i]);i++){$(li)[$.inArray(i,o.disabled)!=-1&&!$(li).hasClass("ui-tabs-selected")?"addClass":"removeClass"]("ui-state-disabled")}if(o.cache===false){this.anchors.removeData("cache.tabs")}this.lis.add(this.anchors).unbind(".tabs");if(o.event!=="mouseover"){var addState=function(state,el){if(el.is(":not(.ui-state-disabled)")){el.addClass("ui-state-"+state)}};var removeState=function(state,el){el.removeClass("ui-state-"+state)};this.lis.bind("mouseover.tabs",function(){addState("hover",$(this))});this.lis.bind("mouseout.tabs",function(){removeState("hover",$(this))});this.anchors.bind("focus.tabs",function(){addState("focus",$(this).closest("li"))});this.anchors.bind("blur.tabs",function(){removeState("focus",$(this).closest("li"))})}var hideFx,showFx;if(o.fx){if($.isArray(o.fx)){hideFx=o.fx[0];showFx=o.fx[1]}else{hideFx=showFx=o.fx}}function resetStyle($el,fx){$el.css("display","");if(!$.support.opacity&&fx.opacity){$el[0].style.removeAttribute("filter")}}var showTab=showFx?function(clicked,$show){$(clicked).closest("li").addClass("ui-tabs-selected ui-state-active");$show.hide().removeClass("ui-tabs-hide").animate(showFx,showFx.duration||"normal",function(){resetStyle($show,showFx);self._trigger("show",null,self._ui(clicked,$show[0]))})}:function(clicked,$show){$(clicked).closest("li").addClass("ui-tabs-selected ui-state-active");$show.removeClass("ui-tabs-hide");self._trigger("show",null,self._ui(clicked,$show[0]))};var hideTab=hideFx?function(clicked,$hide){$hide.animate(hideFx,hideFx.duration||"normal",function(){self.lis.removeClass("ui-tabs-selected ui-state-active");$hide.addClass("ui-tabs-hide");resetStyle($hide,hideFx);self.element.dequeue("tabs")})}:function(clicked,$hide,$show){self.lis.removeClass("ui-tabs-selected ui-state-active");$hide.addClass("ui-tabs-hide");self.element.dequeue("tabs")};this.anchors.bind(o.event+".tabs",function(){var el=this,$li=$(el).closest("li"),$hide=self.panels.filter(":not(.ui-tabs-hide)"),$show=$(self._sanitizeSelector(el.hash));if(($li.hasClass("ui-tabs-selected")&&!o.collapsible)||$li.hasClass("ui-state-disabled")||$li.hasClass("ui-state-processing")||self.panels.filter(":animated").length||self._trigger("select",null,self._ui(this,$show[0]))===false){this.blur();return false}o.selected=self.anchors.index(this);self.abort();if(o.collapsible){if($li.hasClass("ui-tabs-selected")){o.selected=-1;if(o.cookie){self._cookie(o.selected,o.cookie)}self.element.queue("tabs",function(){hideTab(el,$hide)}).dequeue("tabs");this.blur();return false}else if(!$hide.length){if(o.cookie){self._cookie(o.selected,o.cookie)}self.element.queue("tabs",function(){showTab(el,$show)});self.load(self.anchors.index(this));this.blur();return false}}if(o.cookie){self._cookie(o.selected,o.cookie)}if($show.length){if($hide.length){self.element.queue("tabs",function(){hideTab(el,$hide)})}self.element.queue("tabs",function(){showTab(el,$show)});self.load(self.anchors.index(this))}else{throw"jQuery UI Tabs: Mismatching fragment identifier.";}if($.browser.msie){this.blur()}});this.anchors.bind("click.tabs",function(){return false})},_getIndex:function(index){if(typeof index=="string"){index=this.anchors.index(this.anchors.filter("[href$="+index+"]"))}return index},destroy:function(){var o=this.options;this.abort();this.element.unbind(".tabs").removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible").removeData("tabs");this.list.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all");this.anchors.each(function(){var href=$.data(this,"href.tabs");if(href){this.href=href}var $this=$(this).unbind(".tabs");$.each(["href","load","cache"],function(i,prefix){$this.removeData(prefix+".tabs")})});this.lis.unbind(".tabs").add(this.panels).each(function(){if($.data(this,"destroy.tabs")){$(this).remove()}else{$(this).removeClass(["ui-state-default","ui-corner-top","ui-tabs-selected","ui-state-active","ui-state-hover","ui-state-focus","ui-state-disabled","ui-tabs-panel","ui-widget-content","ui-corner-bottom","ui-tabs-hide"].join(" "))}});if(o.cookie){this._cookie(null,o.cookie)}return this},add:function(url,label,index){if(index===undefined){index=this.anchors.length}var self=this,o=this.options,$li=$(o.tabTemplate.replace(/#\{href\}/g,url).replace(/#\{label\}/g,label)),id=!url.indexOf("#")?url.replace("#",""):this._tabId($("a",$li)[0]);$li.addClass("ui-state-default ui-corner-top").data("destroy.tabs",true);var $panel=$("#"+id);if(!$panel.length){$panel=$(o.panelTemplate).attr("id",id).data("destroy.tabs",true)}$panel.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide");if(index>=this.lis.length){$li.appendTo(this.list);$panel.appendTo(this.list[0].parentNode)}else{$li.insertBefore(this.lis[index]);$panel.insertBefore(this.panels[index])}o.disabled=$.map(o.disabled,function(n,i){return n>=index?++n:n});this._tabify();if(this.anchors.length==1){o.selected=0;$li.addClass("ui-tabs-selected ui-state-active");$panel.removeClass("ui-tabs-hide");this.element.queue("tabs",function(){self._trigger("show",null,self._ui(self.anchors[0],self.panels[0]))});this.load(0)}this._trigger("add",null,this._ui(this.anchors[index],this.panels[index]));return this},remove:function(index){index=this._getIndex(index);var o=this.options,$li=this.lis.eq(index).remove(),$panel=this.panels.eq(index).remove();if($li.hasClass("ui-tabs-selected")&&this.anchors.length>1){this.select(index+(index+1<this.anchors.length?1:-1))}o.disabled=$.map($.grep(o.disabled,function(n,i){return n!=index}),function(n,i){return n>=index?--n:n});this._tabify();this._trigger("remove",null,this._ui($li.find("a")[0],$panel[0]));return this},enable:function(index){index=this._getIndex(index);var o=this.options;if($.inArray(index,o.disabled)==-1){return}this.lis.eq(index).removeClass("ui-state-disabled");o.disabled=$.grep(o.disabled,function(n,i){return n!=index});this._trigger("enable",null,this._ui(this.anchors[index],this.panels[index]));return this},disable:function(index){index=this._getIndex(index);var self=this,o=this.options;if(index!=o.selected){this.lis.eq(index).addClass("ui-state-disabled");o.disabled.push(index);o.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[index],this.panels[index]))}return this},select:function(index){index=this._getIndex(index);if(index==-1){if(this.options.collapsible&&this.options.selected!=-1){index=this.options.selected}else{return this}}this.anchors.eq(index).trigger(this.options.event+".tabs");return this},load:function(index){index=this._getIndex(index);var self=this,o=this.options,a=this.anchors.eq(index)[0],url=$.data(a,"load.tabs");this.abort();if(!url||this.element.queue("tabs").length!==0&&$.data(a,"cache.tabs")){this.element.dequeue("tabs");return}this.lis.eq(index).addClass("ui-state-processing");if(o.spinner){var span=$("span",a);span.data("label.tabs",span.html()).html(o.spinner)}this.xhr=$.ajax($.extend({},o.ajaxOptions,{url:url,success:function(r,s){$(self._sanitizeSelector(a.hash)).html(r);self._cleanup();if(o.cache){$.data(a,"cache.tabs",true)}self._trigger("load",null,self._ui(self.anchors[index],self.panels[index]));try{o.ajaxOptions.success(r,s)}catch(e){}},error:function(xhr,s,e){self._cleanup();self._trigger("load",null,self._ui(self.anchors[index],self.panels[index]));try{o.ajaxOptions.error(xhr,s,index,a)}catch(e){}}}));self.element.dequeue("tabs");return this},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this},url:function(index,url){this.anchors.eq(index).removeData("cache.tabs").data("load.tabs",url);return this},length:function(){return this.anchors.length}});$.extend($.ui.tabs,{version:"1.8.6"});$.extend($.ui.tabs.prototype,{rotation:null,rotate:function(ms,continuing){var self=this,o=this.options;var rotate=self._rotate||(self._rotate=function(e){clearTimeout(self.rotation);self.rotation=setTimeout(function(){var t=o.selected;self.select(++t<self.anchors.length?t:0)},ms);if(e){e.stopPropagation()}});var stop=self._unrotate||(self._unrotate=!continuing?function(e){if(e.clientX){self.rotate(null)}}:function(e){t=o.selected;rotate()});if(ms){this.element.bind("tabsshow",rotate);this.anchors.bind(o.event+".tabs",stop);rotate()}else{clearTimeout(self.rotation);this.element.unbind("tabsshow",rotate);this.anchors.unbind(o.event+".tabs",stop);delete this._rotate;delete this._unrotate}return this}})})(jQuery);

